PageSourceSearch

https://www.booktaxilosangeles.com/

html booktaxilosangeles.com collected 2026-10-06 20:06:43 UTC 116,744 bytes, 2,493 lines download raw bytes

1<!DOCTYPE html>
2<html prefix="og: http://ogp.me/ns#" lang="en-gb" dir="ltr">
3<head>
4  <title>Los Angeles airport to city, Los Angeles Airport Transfer - Taxi LA</title>
5  <base href="https://www.booktaxilosangeles.com/" />
6  <meta name="robots" content="index, follow" />
7  <meta http-equiv="content-type" content="text/html; charset=utf-8" />
8  <meta name="description" content="Los Angeles airport to city - Book Taxi Los Angeles provide Los Angeles Airport Transfers, Taxi service in LA area with priority collection and flat rate. " />
9  <link rel="canonical" href="/" />
10  <link href="/?format=feed&amp;type=rss" rel="alternate" type="application/rss+xml" title="RSS 2.0" />
11  <link href="/?format=feed&amp;type=atom" rel="alternate" type="application/atom+xml" title="Atom 1.0" />
12  <link href="/templates/tb_city/favicon.ico" rel="shortcut icon" type="image/vnd.microsoft.icon" />
13  <link rel="stylesheet" href="/plugins/editors/jckeditor/typography/typography2.php" type="text/css" />
14  <link rel="stylesheet" href="/components/com_k2/css/k2.css" type="text/css" />
15  <link rel="stylesheet" href="/templates/tb_city/css/common.css" type="text/css" />
16  <link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Inter:wght@400;600;700;800;900&display=swap" type="text/css" />
17  <link rel="stylesheet" href="/templates/tb_city/css/city.css?v=45" type="text/css" />
18  <link rel="stylesheet" href="/modules/mod_cookiesaccept/screen.css" type="text/css" />
19  
19<script src="/media/system/js/mootools-core.js" type="text/javascript"></script>
19
20  
20<script src="/media/system/js/core.js" type="text/javascript"></script>
20
21  
21<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js" type="text/javascript"></script>
21
22  
22<script src="/components/com_k2/js/k2.js?v2.6.9&amp;sitepath=/" type="text/javascript"></script>
22
23  
23<script src="/media/system/js/caption.js" type="text/javascript"></script>
23
24  
24<script src="/media/system/js/mootools-more.js" type="text/javascript"></script>
24
25  
25<script src="/templates/tb_city/js/common.js" type="text/javascript" defer="defer" async="async"></script>
25
26  
26<script src="//code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
26
27  
27<script type="text/javascript">
28window.addEvent('load', function() {
29				new JCaption('img.caption');
30			});
31  </script>
31
32
33<meta name="viewport" content="width=device-width, initial-scale=1.0" />
34<link rel="meta" type="application/rdf+xml" href="/DC.rdf" />
35<link rel="shortcut icon" href="/templates/tb_city/icon/favicon.ico" />
36<link rel="apple-touch-icon-precomposed" sizes="144x144" href="/templates/tb_city/icon/apple-touch-icon-144x144-precomposed.png" />
37<link rel="apple-touch-icon-precomposed" sizes="114x114" href="/templates/tb_city/icon/apple-touch-icon-114x114-precomposed.png" />
38<link rel="apple-touch-icon-precomposed" sizes="72x72" href="/templates/tb_city/icon/apple-touch-icon-72x72-precomposed.png" />
39<link rel="apple-touch-icon-precomposed" href="/templates/tb_city/icon/apple-touch-icon-57x57-precomposed.png" />
40<link rel="alternate" href="https://www.booktaxilosangeles.com/" hreflang="en" />
41<link rel="alternate" href="https://www.booktaxilosangeles.com/es/" hreflang="es" />
42<link rel="alternate" href="https://www.booktaxilosangeles.com/" hreflang="x-default" />
42<script src="https://use.fontawesome.com/313311da8e.js"></script>
42
43<style>
44:root{
45  --tbc-accent: #f5c518;
46  --tbc-accent-ink: #1a1a1a;
47  --tbc-dark: #14181f;
48  }
49.tbc-hero{background-image:linear-gradient(rgba(15,18,26,.50),rgba(15,18,26,.72)),url('/images/taxilosangeles-hero.jpg');background-size:cover;background-position:center;}
50@media only screen and (max-width: 240px) {
51.moduletable-headertopmenu {display:none}
52}
53@media (max-width: 1000px) and (min-width: 241px) {
54.container.header .span12 .moduletable-headertopmenu ul {
55    text-align: center !important;
56}
57}
58@media only screen and (max-width: 240px) {
59.moduletable-wellcometext.mobilemini {display:none}
60}
61@media only screen and (max-width: 240px) {
62.moduletable-service.mobilemini {display:none}
63}
64@media only screen and (max-width: 240px) {
65.bottommodulelist.mobilemini {display:none}
66}</style>
67<style>
68.sidenav {
69    height: 90%;
70    width: 0;
71    position: fixed;
72    z-index: 1;
73    top: 0;
74    left: 0;
75    background-color: #111;
76    overflow-x: hidden;
77    transition: 0.5s;
78    padding-top: 60px;
79}
80.sidenav a {
81    padding: 2px 2px 2px 0px;
82    text-decoration: none;
83    font-size: 12px;
84    color: #818181;
85    display: block;
86    transition: 0.3s
87}
88.sidenav a:hover, .offcanvas a:focus{
89    color: #f1f1f1;
90}
91.sidenav .closebtn {
92    position: absolute;
93    top: 0;
94    right: 25px;
95    font-size: 30px;
96    margin-left: 50px;
97}
98
99@media screen and (max-height: 450px) {
100  .sidenav {padding-top: 11px;}
101  .sidenav a {font-size: 14px;}
102}
103.tabla {display: table; width: 100%;}
104.columna {display: table-cell; width: 16.66666667%; float:left;}
105
106</style></head>
107
108<body class="tbc tbc-is-home">
109<div id="mySidenav" class="sidenav" >
110<a href="#">&nbsp;&nbsp;Select your destination, you will be redirected to the local website</a>&nbsp;&nbsp;<a href="javascript:void(0)" class="closebtn" onclick="closeNav()">&times;</a>
111
112 
113  <div class="tabla">
114	<div class="columna">
115		<ul style="list-style:none; color:#FFFFFF">
116			<li>Spain</li>
117			</ul>
118		<ul style="list-style:none">
119			<li>
120				<a href="https://www.booktaxibcn.com" target="_blank">Barcelona</a></li>
121							<li>
122				<a href="https://www.booktaxibcn.com" target="_blank">Girona</a></li>
123							<li>
124				<a href="https://www.booktaxibcn.com" target="_blank">Reus</a></li>
125			<li>
126				<a href="https://www.booktaximadrid.com" target="_blank">Madrid</a></li>
127			<li>
128				<a href="https://www.booktaxibilbao.com" target="_blank">Zaragoza</a></li>
129			<li>
130				<a href="https://www.booktaxibilbao.com" target="_blank">Bilbao</a></li>
131			<li>
132				<a href="https://www.booktaxibilbao.com" target="_blank">San Sebastian</a></li>
133		
134			<li>
135				<a href="https://www.booktaxigalicia.com" target="_blank">Vigo</a></li>
136							<li>
137				<a href="https://www.booktaxigalicia.com" target="_blank">Santiago de Compostela</a></li>
138							<li>
139				<a href="https://www.booktaxigalicia.com" target="_blank">La Coruña</a></li>
140			<li>
141				<a href="https://www.booktaxivalencia.com" target="_blank">Valencia</a></li>
142			<li>
143				<a href="https://www.booktaxialicante.com" target="_blank">Alicante</a></li>
144			<li>
145				<a href="https://www.booktaxivalencia.com" target="_blank">Castell&oacute;n</a></li>
146			<li>
147				<a href="https://www.booktaximallorca.com" target="_blank">Mallorca</a></li>
148			<li>
149				<a href="https://www.booktaximenorca.com" target="_blank">Menorca</a></li>
150			<li>
151				<a href="https://www.booktaxiibiza.com" target="_blank">Ibiza</a></li>
152			<li>
153				<a href="https://www.booktaxisevilla.com" target="_blank">Sevilla</a></li>
154							<li>
155				<a href="https://www.booktaxisevilla.com" target="_blank">Jerez</a></li>
156			<li>
157				<a href="https://www.booktaxialmeria.com" target="_blank">Almeria</a></li>
158			<li>
159				<a href="https://www.booktaximalaga.com" target="_blank">Malaga</a></li>
160			<li>
161				<a href="https://www.booktaximarbella.com" target="_blank">Marbella</a></li>
162					<li>
163				<a href="https://www.booktaximalaga.com" target="_blank">Granada</a></li>
164			<li>
165				<a href="https://www.booktaxitenerife.com" target="_blank">Tenerife</a></li>
166			<li>
167				<a href="https://www.booktaxigrancanaria.com" target="_blank">Gran Canaria</a></li>
168		</ul>
169		<ul style="list-style:none;
169 color:#FFFFFF">
170			<li>UK</li></ul>
171		<ul style="list-style:none">
172			<li>
173				<a href="https://www.booktaxilondon.com" target="_blank">London</a></li>
174				<li>
175				<a href="https://www.booktaxilondon.com/birmingham" target="_blank">Birmingham</a></li>
176				<li>
177				<a href="https://www.booktaxilondon.com/bristol" target="_blank">Bristol</a></li>
178				<li>
179				<a href="https://www.booktaxilondon.com/cardiff" target="_blank">Cardiff</a></li>
180				<li>
181				<a href="https://www.booktaxilondon.com/edinburgh" target="_blank">Edinburgh</a></li>
182				<li>
183				<a href="https://www.booktaxilondon.com/glasgow" target="_blank">Glasgow</a></li>
184				<li>
185				<a href="https://www.booktaxilondon.com/liverpool" target="_blank">Liverpool</a></li>
186				<li>
187				<a href="https://www.booktaxilondon.com/manchester" target="_blank">Manchester</a></li>
188				<li>
189				<a href="https://www.booktaxilondon.com/nottingham" target="_blank">Nottingham</a></li>
190				<li>
191				<a href="https://www.booktaxilondon.com/southampton" target="_blank">Southampton</a></li>
192			
193		</ul>
194		<ul style="list-style:none; color:#FFFFFF">
195			<li>Ireland</li></ul>
196		<ul style="list-style:none">
197				<li>
198				<a href="https://www.booktaxilondon.com/cork" target="_blank">Cork</a></li>
199				<li>
200				<a href="https://www.booktaxilondon.com/dublin" target="_blank">Dublin</a></li>
201				<li>
202				<a href="https://www.booktaxilondon.com/galway" target="_blank">Galway</a></li>
203				<li>
204				<a href="https://www.booktaxilondon.com/limerick" target="_blank">Limerick</a></li>
205			
206			
207		</ul>
208		<ul style="list-style:none; color:#FFFFFF">
209			<li>France</li></ul>
210		<ul style="list-style:none">
211
212			<li>
213				<a href="https://www.airporttransfersparis.com" target="_blank">Paris</a></li>
214							<li>
215				<a href="https://www.airporttransfersparis.com" target="_blank">Bordeaux</a></li>
216				<li><a href="https://www.airporttransfersparis.com" target="_blank">Lille</a></li>
217				<li><a href="https://www.airporttransfersparis.com" target="_blank">Lyon</a></li>
218				<li><a href="https://www.airporttransfersparis.com" target="_blank">Marseille</a></li>
219				<li><a href="https://www.airporttransfersparis.com" target="_blank">Montpellier</a></li>
220				<li><a href="https://www.airporttransfersparis.com" target="_blank">Nantes</a></li>
221				<li><a href="https://www.airporttransfersparis.com" target="_blank">Nice</a></li>
222				<li><a href="https://www.airporttransfersparis.com" target="_blank">Tolouse</a></li>
223
224				</ul>
225		<ul style="list-style:none; color:#FFFFFF">
226			<li>Germany</li></ul>
227			<ul style="list-style:none">
228			<li>
229				<a href="https://www.booktaxiberlin.com" target="_blank">Berlin</a></li>
230				<li><a href="https://www.booktaxiberlin.com" target="_blank">Stuttgart</a></li>
231				<li><a href="https://www.booktaxiberlin.com" target="_blank">Dortmund</a></li>
232				<li><a href="https://www.booktaxiberlin.com" target="_blank">Bonn</a></li>
233				<li><a href="https://www.booktaxiberlin.com" target="_blank">Dresden</a></li>
234				<li><a href="https://www.booktaxiberlin.com" target="_blank">Düsseldorf</a></li>
235				<li><a href="https://www.booktaxiberlin.com" target="_blank">Frankfurt</a></li>
236				<li><a href="https://www.booktaxiberlin.com" target="_blank">Nürnberg</a></li>
237				<li><a href="https://www.booktaxiberlin.com" target="_blank">Hamburg</a></li>
238				<li><a href="https://www.booktaxiberlin.com" target="_blank">Hannover</a></li>
239				<li><a href="https://www.booktaxiberlin.com" target="_blank">Leipzig</a></li>
240				<li><a href="https://www.booktaxiberlin.com" target="_blank">Bremen</a></li>
241			<li>
242				<a href="https://www.booktaximunich.com" target="_blank">Munich</a></li></ul>
243			<ul style="list-style:none; color:#FFFFFF">
244			<li>Austria</li></ul>
245			<ul style="list-style:none">	
246								
247	<li><a href="https://www.booktaxiaustria.com" target="_blank" >Graz</a></li>
248	<li><a href="https://www.booktaxiaustria.com" target="_blank" >Innsbruck</a></li>
249	<li><a href="https://www.booktaxiaustria.com" target="_blank" >Linz</a></li>
250	<li><a href="https://www.booktaxiaustria.com" target="_blank" >Salzburg</a></li>
251	<li><a href="https://www.booktaxiaustria.com" target="_blank" >Schwechat</a></li>
252	<li><a href="https://www.booktaxiaustria.com" target="_blank" >Vienna</a></li>
253		</ul>
254		
255	</div>
256	<div class="columna">
257		<ul style="list-style:none;
257 color:#FFFFFF">
258			<li>Italy</li></ul>
259		<ul style="list-style:none">
260			<li>
261				<a href="https://www.booktaximilan.com" target="_blank">Milan</a></li>
262			<li>
263				<a href="https://www.booktaxitorino.com" target="_blank">Turin</a></li>
264			<li>	<a href="https://www.booktaxigenoa.com" target="_blank">Genoa</a></li>
265						<li>
266				<a href="https://www.booktaximilan.com" target="_blank">Trieste</a></li>
267			<li>
268				<a href="https://www.bookwatertaxivenice.com" target="_blank">Venice</a></li>
269			<li>
270				<a href="https://www.bookvenicegondola.com" target="_blank">Venice (Gondola Tours)</a></li>
271			<li>
272				<a href="https://www.booktaxiverona.com" target="_blank">Verona</a></li>
273			<li>
274				<a href="https://www.booktaxibologna.com" target="_blank">Bologna</a></li>
275				<li>
276				<a href="https://www.booktaxibologna.com" target="_blank">Rimini</a></li>
277			<li>
278				<a href="https://www.booktaxiflorence.com" target="_blank">Florence</a></li>
279			<li>
280				<a href="https://www.booktaxipisa.com" target="_blank">Pisa</a></li>
281							<li>
282				<a href="https://www.booktaxiflorence.com" target="_blank">Perugia</a></li>
283							<li>
284				<a href="https://www.booktaxiflorence.com" target="_blank">Ancona</a></li>
285			<li>
286				<a href="https://www.booktaxirome.com" target="_blank">Rome</a></li>
287						<li>
288				<a href="https://www.booktaxirome.com" target="_blank">Pescara</a></li>
289			<li>
290				<a href="https://www.booktaxinaples.com" target="_blank">Naples</a></li>
291			<li>
292				<a href="https://www.booktaxisardinia.com" target="_blank">Olbia</a></li>
293			<li>
294				<a href="https://www.booktaxisardinia.com" target="_blank">Alghero</a></li>
295			<li>
296				<a href="https://www.booktaxisardinia.com" target="_blank">Cagliari</a></li>
297							
298			<li>	<a href="https://www.booktaxibari.com" target="_blank">Bari</a></li>
299			<li>	<a href="https://www.booktaxibari.com" target="_blank">Brindisi</a></li>
300			<li>	<a href="https://www.booktaxibari.com" target="_blank">Lecce</a></li>
301			<li>	<a href="https://www.booktaxicalabria.com" target="_blank">Lamezia Terme</a></li>
302			<li>	<a href="https://www.booktaxicalabria.com" target="_blank">Reggio Calabria</a></li>
303			<li>	<a href="https://www.booktaxicalabria.com" target="_blank">Crotone</a></li>
304			<li>
305				<a href="https://www.booktaxisicily.com" target="_blank">Catania</a></li>
306			<li>
307				<a href="https://www.booktaxisicily.com" target="_blank">Palermo</a></li>
308			<li>
309				<a href="https://www.booktaxisicily.com" target="_blank">Trapani</a></li>
310							<li>
311				<a href="https://www.booktaxisicily.com" target="_blank">Comiso - Ragusa</a></li>
312		</ul>
313		<ul style="list-style:none; color:#FFFFFF">
314			<li>Poland</li></ul>
315		<ul style="list-style:none">
316			<li>
317				<a href="https://www.booktaxipoland.com" target="_blank">Gdańsk</a></li>
318			<li>
319				<a href="https://www.booktaxipoland.com" target="_blank">Katowice</a></li>
320			<li>
321				<a href="https://www.booktaxipoland.com" target="_blank">Kraków</a></li>
322			<li>
323				<a href="https://www.booktaxipoland.com" target="_blank">Łódź</a></li>
324			<li>
325				<a href="https://www.booktaxipoland.com" target="_blank">Lublin</a></li>
326			<li>
327				<a href="https://www.booktaxipoland.com" target="_blank">Poznań</a></li>
328
329			<li>
330				<a href="https://www.booktaxipoland.com" target="_blank">Warszawa</a></li>
331			<li>
332				<a href="https://www.booktaxipoland.com" target="_blank">Wrocław</a></li>
333		</ul>
334		<ul style="list-style:none; color:#FFFFFF">
335			<li>Portugal</li></ul>
336		<ul style="list-style:none">
337
338			
339			<li>
340				<a href="https://www.booktaxilisbon.com" target="_blank">Lisbon</a></li>
341			<li>
342				<a href="https://www.booktaxiporto.com" target="_blank">Porto</a></li>
343			<li>
344				<a href="https://www.booktaxifaro.com" target="_blank">Faro</a></li>
345							<li>
346				<a href="https://www.booktaximadeira.com" target="_blank">Madeira</a></li>
347				</ul>
348				
349			<ul style="list-style:none; color:#FFFFFF">
350			<li>Morocco</li></ul>
351		<ul style="list-style:none">
352			<li>
353				<a href="https://www.booktaximorocco.com" target="_blank">Marrakech</a></li>
354			<li>
355				<a href="https://www.booktaximorocco.com" target="_blank">Casablanca</a></li>
356			<li>
357				<a href="https://www.booktaximorocco.com" target="_blank">Fez</a></li>
358			<li>
359				<a href="https://www.booktaximorocco.com" target="_blank">Rabat</a></li>
360			<li>
361				<a href="https://www.booktaximorocco.com" target="_blank">
361Agadir</a></li>
362			<li>
363				<a href="https://www.booktaximorocco.com" target="_blank">Essaouira</a></li>
364
365		</ul>
366		<ul style="list-style:none; color:#FFFFFF">
367			<li>China</li></ul>
368		<ul style="list-style:none">
369			<li>
370				<a href="https://www.booktaxichina.com" target="_blank">Beijing</a></li>
371			<li>
372				<a href="https://www.booktaxichina.com" target="_blank">Chengdu</a></li>
373			<li>
374				<a href="https://www.booktaxichina.com" target="_blank">Guangzhou</a></li>
375			<li>
376				<a href="https://www.booktaxichina.com" target="_blank">Harbin</a></li>
377			<li>
378				<a href="https://www.booktaxichina.com" target="_blank">Jinan</a></li>
379			<li>
380				<a href="https://www.booktaxichina.com" target="_blank">Nanjing</a></li>
381
382			<li>
383				<a href="https://www.booktaxichina.com" target="_blank">Qingdao</a></li>
384			<li>
385				<a href="https://www.booktaxichina.com" target="_blank">Shanghai</a></li>
386							<li>
387				<a href="https://www.booktaxichina.com" target="_blank">Shenyang</a></li>
388							<li>
389				<a href="https://www.booktaxichina.com" target="_blank">Shenzhen</a></li>
390							<li>
391				<a href="https://www.booktaxichina.com" target="_blank">Tianjin</a></li>
392		</ul>
393		
394	</div>
395	<div class="columna">
396		
397		
398	<ul style="list-style:none; color:#FFFFFF">
399			<li>Rest of Europe</li></ul>
400		<ul style="list-style:none">
401
402			
403			
404			<li>
405				<a href="https://www.booktaxibrussels.com" target="_blank">Brussels</a></li>
406				<li>
407				<a href="https://www.booktaxibrussels.com" target="_blank">Luxembourg</a></li>
408			<li>
409				<a href="https://www.booktaxigeneva.com" target="_blank">Geneva</a></li>
410			<li>
411				<a href="https://www.booktaxigeneva.com" target="_blank">Zurich</a></li>
412			<li>
413				<a href="https://www.booktaxiamsterdam.com" target="_blank">Amsterdam</a></li>
414							<li>
415				<a href="https://www.booktaxiamsterdam.com" target="_blank">Eindhoven</a></li>
416							<li>
417				<a href="https://www.booktaxiamsterdam.com" target="_blank">Rotterdam</a></li>
418							<li>
419				<a href="https://www.booktaxiamsterdam.com" target="_blank">The Hague</a></li>
420							<li>
421				<a href="https://www.booktaxiamsterdam.com" target="_blank">Utrecht</a></li>
422			<li>
423				<a href="https://www.booktaxistockholm.com" target="_blank">Stockholm</a></li>
424			<li><a href="https://www.booktaxistockholm.com" target="_blank">Gothenburg</a></li>
425			<li><a href="https://www.booktaxistockholm.com" target="_blank">Malmo</a></li>
426			<li><a href="https://www.booktaxistockholm.com" target="_blank">Lulea</a></li>
427			<li><a href="https://www.booktaxistockholm.com" target="_blank">Kalmar</a></li>
428			<li><a href="https://www.booktaxistockholm.com" target="_blank">Kiruna</a></li>
429			<li><a href="https://www.booktaxistockholm.com" target="_blank">Oslo</a></li>
430			<li><a href="https://www.booktaxistockholm.com" target="_blank">Copenaghen</a></li>
431			<li><a href="https://www.booktaxistockholm.com" target="_blank">Helsinki</a></li>
432			<li><a href="https://www.booktaxistockholm.com" target="_blank">Rovaniemi</a></li>
433			
434			<li><a href="https://www.booktaximalta.com" target="_blank" >Malta</a></li>
435	
436							
437							
438							<li>
439				<a href="https://www.booktaxiprague.com" target="_blank">Prague</a></li>
440			<li>
441				<a href="https://www.booktaxibudapest.com" target="_blank">Budapest</a></li>
442			<li>
443				<a href="https://www.booktaxiistanbul.com" target="_blank">Istanbul</a></li>
444			<li>
445				<a href="https://www.booktaxiathens.com" target="_blank">Athens</a></li>
446			<li>
447				<a href="https://www.booktaxirhodes.com" target="_blank">Rhodes</a></li>
448			<li>
449				<a href="https://www.booktaxirhodes.com" target="_blank">Kos</a></li>
450			<li>
451				<a href="https://www.booktaximontenegro.com" target="_blank">Tivat</a></li>
452			<li>
453				<a href="https://www.booktaximontenegro.com" target="_blank">Pogdorica</a></li>
454			<li>
455				<a href="https://www.booktaximoscow.com" target="_blank">Moscow</a></li>
456				<li>
457				<a href="https://www.booktaximoscow.com" target="_blank">Minsk</a></li>
458			<li><a href="https://www.bookairporttransfers.com" target="_blank">Yerevan</a></li>
459			<li><a href="https://www.bookairporttransfers.com" target="_blank">Tbilisi</a></li>
460			<li>
461				<a href="https://www.booktaxistpetersburg.com" target="_blank">St Petersburg</a></li>
462			<li><a href="https://www.booktaxicroatia.com" target="_blank">Split</a></li>
463			<li><a href="https://www.booktaxicroatia.com" target="_blank">Zagreb</a></li>
464			<li><a href="https://www.booktaxicroatia.com" target="_blank">Dubrovnik</a></li>
465			<li><a href="https://www.booktaxicroatia.com" target="_blank">Pula</a></li>
466			<li><a href="https://www.booktaxicroatia.com" target="_blank">Rijeka</a></li>
467			<li><a href="https://www.booktaxicroatia.com" target="_blank">Zadar</a></li>
468			<li><a href="https://www.booktaxicroatia.com" target="_blank">Ljubijana</a></li>
469			<li><a href="https://www.booktaxicroatia.com" target="_blank">Sarajevo</a></li>
470			<li><a href="https://www.booktaxicroatia.com" target="_blank">
470Mostar</a></li>
471			<li><a href="https://www.booktaxicroatia.com" target="_blank">Tuzla</a></li>
472			<li><a href="https://www.booktaxicroatia.com" target="_blank">Maribor</a></li>
473			<li><a href="https://www.booktaxicroatia.com" target="_blank">Novo Mesto</a></li>
474			<li><a href="https://www.booktaxibulgaria.com" target="_blank">Sofia</a></li>
475			<li><a href="https://www.booktaxibulgaria.com" target="_blank">Burgas</a></li>
476			<li><a href="https://www.booktaxibulgaria.com" target="_blank">Varna</a></li>
477		</ul>
478		<ul style="list-style:none; color:#FFFFFF">
479		<li>Australia</li></ul>
480		<ul style="list-style:none">
481			<li>
482				<a href="https://www.booktaxiaustralia.com" target="_blank">Sydney</a></li>
483			<li>
484				<a href="https://www.booktaxiaustralia.com" target="_blank">Melbourne</a></li>
485			<li>
486				<a href="https://www.booktaxiaustralia.com" target="_blank">Adelaide</a></li>
487			<li>
488				<a href="https://www.booktaxiaustralia.com" target="_blank">Perth</a></li>
489			<li>
490				<a href="https://www.booktaxiaustralia.com" target="_blank">Brisbane</a></li>
491			<li>
492				<a href="https://www.booktaxiaustralia.com" target="_blank">Gold Coast</a></li>
493			<li><a href="https://www.booktaxiaustralia.com" target="_blank">Canberra</a></li>
494			<li><a href="https://www.booktaxiaustralia.com" target="_blank">Townsville</a></li>
495			<li><a href="https://www.booktaxiaustralia.com" target="_blank">Darwin</a></li>
496			<li><a href="https://www.booktaxiaustralia.com" target="_blank">Cairns</a></li>
497
498
499		</ul>
500		<ul style="list-style:none; color:#FFFFFF">
501			<li>Japan</li></ul>
502		<ul style="list-style:none">
503			
504			<li>
505				<a href="https://www.booktaxitokyo.com" target="_blank">Tokyo</a></li>
506							<li>
507				<a href="https://www.booktaxitokyo.com" target="_blank">Kobe</a></li>
508											<li>
509				<a href="https://www.booktaxitokyo.com" target="_blank">Okazaki</a></li>
510															<li>
511				<a href="https://www.booktaxitokyo.com" target="_blank">Osaka</a></li>
512																			<li>
513				<a href="https://www.booktaxitokyo.com" target="_blank">Fukuoka</a></li>
514																							<li>
515				<a href="https://www.booktaxitokyo.com" target="_blank">Sapporo</a></li>
516		</ul>
517				
518	</div>
519
520	<div class="columna">
521		
522		<ul style="list-style:none; color:#FFFFFF">
523			<li>Middle East</li></ul>
524		<ul style="list-style:none">
525			
526			<li>
527				<a href="https://www.booktaxidubai.com" target="_blank">Dubai</a></li>
528			<li>
529				<a href="https://www.booktaxiabudhabi.com" target="_blank">Abu Dhabi</a></li>
530			<li><a href="https://www.bookairporttransfers.com" target="_blank">Amman</a></li>
531			<li><a href="https://www.bookairporttransfers.com" target="_blank">Madaba</a></li>
532			<li><a href="https://www.bookdubai.com" target="_blank">Kuwait</a></li>
533			<li><a href="https://www.bookdubai.com" target="_blank">Doha</a></li>
534			<li><a href="https://www.bookdubai.com" target="_blank">Jeddah</a></li>
535			<li><a href="https://www.bookdubai.com" target="_blank">Medina</a></li>
536			<li><a href="https://www.bookdubai.com" target="_blank">Riyadh</a></li>
537			<li><a href="https://www.bookdubai.com" target="_blank">Taif</a></li>
538			<li><a href="https://www.bookdubai.com" target="_blank">Abha</a></li>
539			<li><a href="https://www.bookdubai.com" target="_blank">Muscat</a></li>
540		</ul>
541	<ul style="list-style:none; color:#FFFFFF">
542			<li>Asia</li></ul>
543		<ul style="list-style:none">
544			<li>
545				<a href="https://www.booktaxiantalya.com" target="_blank">Antalya</a></li>
546			<li>
547				<a href="https://www.booktaxibangkok.com" target="_blank">Bangkok</a></li>
548			<li><a href="https://www.booktaxibangkok.com" target="_blank">Puket</a></li>
549			<li><a href="https://www.booktaxibangkok.com" target="_blank">Krabi</a></li>
550			<li><a href="https://www.booktaxibangkok.com" target="_blank">Samui</a></li>	
551			<li><a href="https://www.booktaxibangkok.com" target="_blank">Chiang Mai</a></li>
552			<li><a href="https://www.booktaxibangkok.com" target="_blank">Pattaya</a></li>
553			<li><a href="https://www.booktaxibangkok.com" target="_blank">Phi Phi</a></li>
554			<li><a href="https://www.booktaxibangkok.com" target="_blank">Hanoi</a></li>
555			<li><a href="https://www.booktaxibangkok.com" target="_blank">Cat Bi</a></li>
556			<li><a href="https://www.booktaxibangkok.com" target="_blank">Hue</a></li>
557			<li><a href="https://www.booktaxibangkok.com" target="_blank">Da Nang</a></li>
558			<li><a href="https://www.booktaxibangkok.com" target="_blank">Cam Ranh</a></li>
559			<li><a href="https://www.booktaxibangkok.com" target="_blank">Quy Nhon</a></li>
560			<li><a href="https://www.booktaxibangkok.com" target="_blank">Da Lat</a></li>
561			<li><a href="https://www.booktaxibangkok.com" target="_blank">Ho Chu Minh</a></li>
562			<li><a href="https://www.bookairporttransfers.com" target="_blank">Tagbilaran</a></li>
563			<li><a href="https://www.bookairporttransfers.com" target="_blank">Bacolod</a></li>
564			<li><a href="https://www.bookairporttransfers.com" target="_blank">Davao</a></li>
565			<li><a href="https://www.bookairporttransfers.com" target="_blank">Samal Island</a></li>
566			<li><a href="https://www.bookairporttransfers.com" target="_blank">Cebu</a></li>
567			<li><a href="https://www.bookairporttransfers.com" target="_blank">Lapu-Lapu</a></li>
568			<li><a href="https://www.bookairporttransfers.com" target="_blank">Cordova</a></li>
569			<li><a href="https://www.bookairporttransfers.com" target="_blank">Mandaue</a></li>
570			<li><a href="https://www.booktaxikorea.com" target="_blank">Seoul</a></li>
571			
572			<li>
573				<a href="https://www.booktaxihongkong.com" target="_blank">Hong Kong</a></li>
574			<li>
575				<a href="https://www.booktaxisingapore.com" target="_blank">Singapore</a></li>
576			<li><a href="https://www.booktaxisingapore.com" target="_blank">Bali</a></li>
577			<li><a href="https://www.booktaxisingapore.com" target="_blank">Kuala Lumpur</a></li>
578			<li><a href="https://www.booktaxisingapore.com" target="_blank">Penang / George Town</a></li>
579			<li><a href="https://www.booktaxisingapore.com" target="_blank">Kuching</a></li>
580			<li><a href="https://www.booktaxisingapore.com" target="_blank">Kota Kinabalu</a></li>
581			
582		</ul>
583		<ul style="list-style:none;
583 color:#FFFFFF">
584			<li>India</li></ul>
585		<ul style="list-style:none">
586			<li><a href="https://www.booktaxiindia.com" target="_blank">Ahmedabad</a></li>
587			<li><a href="https://www.booktaxiindia.com" target="_blank">Aurangabad</a></li>
588			<li><a href="https://www.booktaxiindia.com" target="_blank">Bangalore</a></li>
589			<li><a href="https://www.booktaxiindia.com" target="_blank">Belagavi</a></li>
590			<li><a href="https://www.booktaxiindia.com" target="_blank">Bhopal</a></li>
591			<li><a href="https://www.booktaxiindia.com" target="_blank">Bhubaneswar</a></li>
592			<li><a href="https://www.booktaxiindia.com" target="_blank">Calicut</a></li>
593			<li><a href="https://www.booktaxiindia.com" target="_blank">Chennai</a></li>
594			<li><a href="https://www.booktaxiindia.com" target="_blank">Coimbatore</a></li>
595			<li><a href="https://www.booktaxiindia.com" target="_blank">Dehradun</a></li>
596			<li><a href="https://www.booktaxiindia.com" target="_blank">Goa</a></li>
597			<li><a href="https://www.booktaxiindia.com" target="_blank">Guwahati</a></li>
598			<li><a href="https://www.booktaxiindia.com" target="_blank">Jaipur</a></li>
599			<li><a href="https://www.booktaxiindia.com" target="_blank">Jamshedpur</a></li>
600			<li><a href="https://www.booktaxiindia.com" target="_blank">Jodhpur</a></li>
601			<li><a href="https://www.booktaxiindia.com" target="_blank">Cochin</a></li>
602			<li><a href="https://www.booktaxiindia.com" target="_blank">Lucknow</a></li>
603			<li><a href="https://www.booktaxiindia.com" target="_blank">Madurai</a></li>
604			<li><a href="https://www.booktaxiindia.com" target="_blank">Mangalore</a></li>
605			<li><a href="https://www.booktaxiindia.com" target="_blank">Mumbai</a></li>
606			<li><a href="https://www.booktaxiindia.com" target="_blank">Mysore</a></li>
607			<li><a href="https://www.booktaxiindia.com" target="_blank">Delhi</a></li>
608			<li><a href="https://www.booktaxiindia.com" target="_blank">Pune</a></li>
609			<li><a href="https://www.booktaxiindia.com" target="_blank">Surat</a></li>
610			<li><a href="https://www.booktaxiindia.com" target="_blank">Trivandrum</a></li>
611			<li><a href="https://www.booktaxiindia.com" target="_blank">Udapuir</a></li>
612			<li><a href="https://www.booktaxiindia.com" target="_blank">Vadodara</a></li>
613			<li><a href="https://www.booktaxiindia.com" target="_blank">Varanasi</a></li>
614			
615			
616		</ul>
617			
618		
619	</div>
620	<div class="columna">
621		
622		
623		<ul style="list-style:none; color:#FFFFFF">
624			<li>Usa &amp; Canada</li></ul>
625		<ul style="list-style:none">
626			<li>
627				<a href="https://www.booktaxinewyork.com" target="_blank">New York</a></li>
628			<li>
629				<a href="https://www.booktaxilosangeles.com" target="_blank">Los Angeles</a></li>
630			<li>
631				<a href="https://www.booktaxisanfrancisco.com" target="_blank">San Francisco</a></li>
632			<li>
633				<a href="https://www.booktaxilasvegas.com" target="_blank">Las Vegas</a></li>
634			<li>
635				<a href="https://www.bookairporttransfers.com" target="_blank">Anchorage</a></li>
636			<li><a href="https://www.bookairporttransfers.com" target="_blank">Atlanta</a></li>
637			<li><a href="https://www.bookairporttransfers.com" target="_blank">Baltimore</a></li>
638			<li><a href="https://www.bookairporttransfers.com" target="_blank">Boston</a></li>
639			<li><a href="https://www.bookairporttransfers.com" target="_blank">Chicago</a></li>
640			<li><a href="https://www.bookairporttransfers.com" target="_blank">Columbus</a></li>
641			<li><a href="https://www.bookairporttransfers.com" target="_blank">Dallas</a></li>
642			<li><a href="https://www.bookairporttransfers.com" target="_blank">Detroit</a></li>
643			<li><a href="https://www.bookairporttransfers.com" target="_blank">Houston</a></li>
644			<li><a href="https://www.bookairporttransfers.com" target="_blank">Memphis</a></li>
645			<li><a href="https://www.bookairporttransfers.com" target="_blank">Nashville</a></li>
646			<li><a href="https://www.bookairporttransfers.com" target="_blank">Phoenix</a></li>
647			<li><a href="https://www.bookairporttransfers.com" target="_blank">Portland</a></li>
648			<li><a href="https://www.bookairporttransfers.com" target="_blank">San Diego</a></li>
649			<li><a href="https://www.bookairporttransfers.com" target="_blank">Seattle</a></li>
650			<li><a href="https://www.bookairporttransfers.com" target="_blank">Washington</a></li>
651			<li><a href="https://www.bookairporttransfers.com" target="_blank">Honolulu</a></li>
652			<li><a href="https://www.bookairporttransfers.com" target="_blank">Indianapolis</a></li>
653			<li><a href="https://www.booktaximiami.com" target="_blank">Miami</a></li>
654			<li><a href="https://www.bookairporttransfers.com" target="_blank">Oakland</a></li>
655			<li><a href="https://www.booktaxiorlando.com" target="_blank">Orlando</a></li>
656			<li><a href="https://www.bookairporttransfers.com" target="_blank">Pittsburgh</a></li>
657			<li><a href="https://www.bookairporttransfers.com" target="_blank">Tampa</a></li>
658			<li>
659				<a href="https://www.bookairporttransfers.com" target="_blank">Quebec</a></li>
660				<li><a href="https://www.bookairporttransfers.com" target="_blank">Toronto</a></li>
661				<li><a href="https://www.bookairporttransfers.com" target="_blank">Vancouver</a></li>
662				<li><a href="https://www.bookairporttransfers.com" target="_blank">Montreal</a></li>
663				<li><a href="https://www.bookairporttransfers.com" target="_blank">Calgary</a></li>
664				<li><a href="https://www.bookairporttransfers.com" target="_blank">Ottawa</a></li>
665		</ul>
666		<ul style="list-style:none;
666 color:#FFFFFF">
667			<li>Mexico</li></ul>
668		<ul style="list-style:none">
669			<li>
670				<a href="https://www.booktaximexico.com" target="_blank">Monterrey</a></li>
671			<li>
672				<a href="https://www.booktaximexico.com" target="_blank">Mexico City</a></li>
673			<li>
674				<a href="https://www.booktaximexico.com" target="_blank">Toluca</a></li>
675			<li>
676				<a href="https://www.booktaximexico.com" target="_blank">San José del Cabo</a></li>
677			<li>
678				<a href="https://www.booktaximexico.com" target="_blank">Guadalajara</a></li>
679			<li>
680				<a href="https://www.booktaximexico.com" target="_blank">Cancún</a></li>
681			<li>
682				<a href="https://www.booktaximexico.com" target="_blank">Mérida</a></li>
683		</ul>
684		<ul style="list-style:none; color:#FFFFFF">
685			<li>Argentina</li></ul>
686		<ul style="list-style:none">
687			<li>
688				<a href="https://www.booktaxiargentina.com" target="_blank">Buenos Aires</a></li>
689			<li>
690				<a href="https://www.booktaxiargentina.com" target="_blank">Córdoba</a></li>
691			<li>
692				<a href="https://www.booktaxiargentina.com" target="_blank">Bariloche</a></li>
693			<li>
694				<a href="https://www.booktaxiargentina.com" target="_blank">Mendoza</a></li>
695			<li>
696				<a href="https://www.booktaxiargentina.com" target="_blank">Rosario</a></li>
697			<li>
698				<a href="https://www.booktaxiargentina.com" target="_blank">Puerto Iguazú</a></li>
699		</ul>
700		<ul style="list-style:none; color:#FFFFFF">
701			<li>Brasil</li></ul>
702		<ul style="list-style:none">
703			<li>
704				<a href="https://www.booktaxibrasil.com" target="_blank">Rio de Janeiro</a></li>
705			<li>
706				<a href="https://www.booktaxibrasil.com" target="_blank">Sao Paulo</a></li>
707			<li>
708				<a href="https://www.booktaxibrasil.com" target="_blank">Porto Alegre</a></li>
709			<li>
710				<a href="https://www.booktaxibrasil.com" target="_blank">Curitiba</a></li>
711			<li>
712				<a href="https://www.booktaxibrasil.com" target="_blank">Fortaleza</a></li>
713			<li>
714				<a href="https://www.booktaxibrasil.com" target="_blank">Recife</a></li>
715							<li>
716				<a href="https://www.booktaxibrasil.com" target="_blank">Salvador de Bahia</a></li>
717		</ul>
718		<ul style="list-style:none; color:#FFFFFF">
719			<li>Colombia</li></ul>
720		<ul style="list-style:none">
721			<li>
722				<a href="https://www.booktaxicolombia.com" target="_blank">Bogotá</a></li>
723			<li>
724				<a href="https://www.booktaxicolombia.com" target="_blank">Cartagena</a></li>
725			<li>
726				<a href="https://www.booktaxicolombia.com" target="_blank">Medellín</a></li>
727			<li>
728				<a href="https://www.booktaxicolombia.com" target="_blank">San Andrés</a></li>
729
730		</ul>
731				<ul style="list-style:none; color:#FFFFFF">
732			<li>Chile</li></ul>
733		<ul style="list-style:none">
734			<li>
735				<a href="https://www.booktaxichile.com" target="_blank">Santiago</a></li>
736			<li>
737				<a href="https://www.booktaxichile.com" target="_blank">Valparaiso</a></li>
738
739		</ul>
740						<ul style="list-style:none; color:#FFFFFF">
741			<li>Perú</li></ul>
742		<ul style="list-style:none">
743			<li>
744				<a href="https://www.booktaxiperu.com" target="_blank">Lima</a></li>
745			<li>
746				<a href="https://www.booktaxiperu.com" target="_blank">Cusco</a></li>
747
748		</ul>
749		
750	</div>
751</div>
752</div>
753<!-- ================= TOPBAR ================= -->
754<div class="tbc-topbar">
755  <div class="tbc-wrap">
756    <span class="tbc-topphone">&#9742;&nbsp;24/7&nbsp;&middot;&nbsp;<b>+34 935 478 521</b></span>
757    <div class="tbc-topmenu">
758<ul class="menu">
759<li class="item-125"><a href="/es/" >Español</a></li><li class="item-126"><a href="/en/" >English</a></li><li class="item-127"><a href="/log-in" >Log in</a></li></ul>
760</div>
761  </div>
762</div>
763
764<!-- ================= HEADER ================= -->
765<header class="tbc-hdr">
766  <div class="tbc-wrap">
767    <!-- logo + ciudad + acceso a agencias. El envoltorio existe porque .tbc-wrap
768         es un flex con space-between: un tercer hijo suelto se iria al centro. -->
769    <div class="tbc-hdr-left">
770      <a class="tbc-logobrand" href="/">
771        <img src="/templates/tb_city/images/btg-logo.png" alt="Book Taxi Los Angeles" />
772        <span class="tbc-logocity">Los Angeles</span>
773      </a>
774      <a class="tbc-agents" href="https://www.booktaxigroup.com/travel-agents.php" target="_blank" rel="noopener">Travel Agents</a>
775    </div>
776    <div class="tbc-hdr-right">
777              <a class="tbc-phone" href="https://wa.me/34935478521" target="_blank" rel="noopener">
778          <span class="tbc-phlbl">WhatsApp 24/7</span>
779          <b class="tbc-phnum">+34 935 478 521</b>
780        </a>
781                </div>
782  </div>
783</header>
784
785<!-- ================= NAV ================= -->
786<nav class="tbc-nav">
787  <div class="tbc-wrap">
788    <a class="tbc-burger" onclick="document.body.classList.toggle('tbc-navopen');return false;" href="#">&#9776;</a>
789    <div class="tbc-menu">
790<ul class="menu nav">
791<li class="item-101 current active"><a href="/" >Home</a></li><li class="item-276"><a href="/losangeles-airport-transfers-to-city" >Los Angeles Airport Transfers</a></li><li class="item-132"><a href="/book-online" >Online Booking</a></li><li class="item-137"><a href="/faq" >FAQ</a></li><li class="item-254 deeper parent"><a href="/about-booktaxilosangeles" >About Us</a><ul><li class="item-138"><a href="/about-booktaxilosangeles/contact" >Contact Us</a></li></ul></li></ul>
792</div>
793    <a class="tbc-bookbtn" href="/book-online">Book online</a>
794  </div>
795</nav>
796
797<!-- ================= HERO (solo home) ================= -->
798<section class="tbc-hero tbc-hasform">
799  <div class="tbc-wrap tbc-hero-grid">
800    <div class="tbc-hero-copy">
801      <h1 class="tbc-herotitle">Welcome to Los Angeles. Your driver already knows when you land.</h1>
802      <p>Private transfers with Meet &amp; Greet, flight tracking and a fixed price. Book in one minute.</p>
803            <div class="tbc-usps">
804        <div><span>&#10003;</span> Meet &amp; Greet at arrivals</div>
805        <div><span>&#10003;</span> Flight tracking included</div>
806        <div><span>&#10003;</span> Fixed price &mdash; no surprises</div>
807        <div><span>&#10003;</span> Free cancellation</div>
808      </div>
809          </div>
810        <div class="tbc-heroform">
811      		<div class="moduletable">
812					<!--googleoff: all-->
813<div id="ca_banner" 
814    style="top:0px;
815            ">
816    <p style="
817		">Our website uses cookies</p> 
818    <p style="
819				">By continuing to browse it, you are agreeing to our use of cookies.                </p>
820    <div class="accept" style="">I understand</div>
821</div>
822
823
824<script type="text/javascript">
825    jQuery(document).ready(function () { 
826	
827	function setCookie(c_name,value,exdays)
828	{
829		var exdate=new Date();
830		exdate.setDate(exdate.getDate() + exdays);
831		var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString()) + "; path=/";
832		document.cookie=c_name + "=" + c_value;
833	}
834	
835	function readCookie(name) {
836		var nameEQ = name + "=";
837		var ca = document.cookie.split(';');
838		for(var i=0;i < ca.length;i++) {
839			var c = ca[i];
840			while (c.charAt(0)==' ') c = c.substring(1,c.length);
841			if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
842			}
843		return null;
844	}
845    
846	var $ca_banner = jQuery('#ca_banner');
847    var $ca_infoplus = jQuery('.infoplus.info_modal');
848    var $ca_info = jQuery('#ca_info');
849    var $ca_info_close = jQuery('.ca_info_close');
850    var $ca_infoaccept = jQuery('.accept');
851    
852	var cookieaccept = readCookie('cookieaccept');
853	if(!(cookieaccept == "yes")){
854	
855		$ca_banner.delay(1000).slideDown('fast'); 
856        $ca_infoplus.click(function(){
857            $ca_info.fadeIn("fast");
858        });
859        $ca_info_close.click(function(){
860            $ca_info.fadeOut("slow");
861        });
862        $ca_infoaccept.click(function(){
863			setCookie("cookieaccept","yes",365);
864            jQuery.post('https://www.booktaxilosangeles.com/', 'set_cookie=1', function(){});
865            $ca_banner.slideUp('slow');
866            $ca_info.fadeOut("slow");
867        });
868       } 
869    });
870</script>
870
871<!--googleon: all-->
872		</div>
873			<div class="moduletable-bookonline span6">
874					
875<link rel="stylesheet" href="https://www.booktaxilosangeles.com/components/com_taxibooking/assets/css/jquery-ui.css" />
876
877
878<!--<link rel="stylesheet" type="text/css" media="screen" href="https://www.booktaxilosangeles.com/components/com_taxibooking/assets/css/font-awesome.css" />-->
879    
880<div class="modulebooking tbc-form clearfix" id="verticle_booking_wrap_outer">
881        <form name="price_form" id="price_form" method="POST" action="/component/taxibooking/?task=getDistancePrice&lang=en">
882    
883    <input type="hidden" id="date_format" value="dd-mm-yy" />
884    <input type="hidden" id="locale" value="en-GB" />
885    <input type="hidden" id="route_swapped" name="route_swapped" value="0" />
886    <input type="hidden" id="booking_type" name="booking_type" value="" />
887    <input type="hidden" id="datepicker_type" name="datepicker_type" value="jquery" />
888    <input type="hidden" id="show_poi_categories" name="show_poi_categories" value="0" />
889    <input type="hidden" id="show_return_extras" name="show_return_extras" value="0" />
890    
891    <div id="verticle_booking_wrap" class="clearfix">
892	<ul>
893	    	    <li><a href="#tabs_address">Address</a></li>
894	    	    
895	    
896			    
897	    		
898	</ul>
899	
900		<div class="verticl_booking_toppart clearfix" id="tabs_address">
901	    
902	    	    <div class="topouterWrap left pickup_wrap clearfix">
903		<div class="topinnerWrap clearfix">
904		    <label>TAXI FROM</label>
905		    <div class="top_ver_input_wrap clearfix">
906		    
907		    		    <div class="getlocationField">
908			    <a class="pickup_direction" href="javascript:void(0);" onclick="get_user_location('pickup', this);">Get Location</a>
909		    </div>
910		    		    
911		    		    <div class="inputField">
912			<input type="text" class="inputbox" name="address_from" id="address_from" value="" placeholder="Start typing address or select from the list ->" />
913			<input type="hidden" name="address_from_lat" id="address_from_lat" value="" />
914			<input type="hidden" name="address_from_lng" id="address_from_lng" value="" />
915		    </div>
916		    
917		    		    <div class="selectField-wrap">
918			<div class="selectField">
919			    <div class="arrow_wrapper poi_options_trigger">trigger_icon</div>
920			    <div class="poi_dropdown_wrapper" style="display:none;">
921			    <div class="poi_link" data-poiid="276" data-poilat="33.9415889" data-poilng="-118.40852999999998"><span>Los Angeles International Airport (LAX)</span></div>
922<div class="poi_link" data-poiid="307" data-poilat="33.67825" data-poilng="-117.86196999999999"><span>John Wayne Airport (SNA)</span></div>
923<div class="poi_link" data-poiid="309" data-poilat="32.7338006" data-poilng="-117.1933038"><span>San Diego Airport (SAN), North Harbor Drive, San Diego, California, EE. UU.</span></div>
924<div class="poi_link" data-poiid="310" data-poilat="33.81679089999999" data-poilng="-118.1513589"><span>LGB, Donald Douglas Drive, Long Beach, CA, USA</span></div>
925			    </div>
926			</div>
927		    </div>
928		    		    </div>
929		    
930		    <!-- From Extras -->
931		    <div class="ver_pickup_extra_wrapper" id="pickup_extra_wrapper">
932			    		    </div>
933		    <!-- From Extras -->
934		</div>
935	    </div>
936	    	    
937	    <div class="topouterWrap right dropoff_wrap clearfix">
938			
939				
940				<div class="topinnerWrap nonstop_wrap clearfix">
941		    <label>TAXI TO</label>
942		    <div class="top_ver_input_wrap clearfix">
943		    		    <div class="getlocationField">
944			    <a class="dropoff_direction" href="javascript:void(0);" onclick="get_user_location('dropoff', this);">Get Location</a>
945		    </div>
946		    		    
947		    		    
948		    <div class="inputField">
949			<input type="text" class="inputbox" name="address_to" id="address_to" value="" placeholder="Start typing address or select from the list ->" />
950			<input type="hidden" name="address_to_lat" id="address_to_lat" value="" />
951			<input type="hidden" name="address_to_lng" id="address_to_lng" value="" />
952		    </div>
953		    
954		    		    <div class="selectField-wrap">
955			<div class="selectField">
956			    <div class="arrow_wrapper poi_options_trigger">trigger_icon</div>
957			    <div class="poi_dropdown_wrapper" style="display:none;">
958			    <div class="poi_link" data-poiid="276" data-poilat="33.9415889" data-poilng="-118.40852999999998"><span>Los Angeles International Airport (LAX)</span></div>
959<div class="poi_link" data-poiid="307" data-poilat="33.67825" data-poilng="-117.86196999999999"><span>John Wayne Airport (SNA)</span></div>
960<div class="poi_link" data-poiid="309" data-poilat="32.7338006" data-poilng="-117.1933038"><span>San Diego Airport (SAN), North Harbor Drive, San Diego, California, EE. UU.</span></div>
961<div class="poi_link" data-poiid="310" data-poilat="33.81679089999999" data-poilng="-118.1513589"><span>LGB, Donald Douglas Drive, Long Beach, CA, USA</span></div>
962			    </div>
963			</div>
964		    </div>
965		    		    </div>
966		    
967		    <!-- To Extras -->
968		    <div class="ver_dropoff_extra_wrapper" id="dropoff_extra_wrapper">
969			    		    </div>
970		    <!-- To Extras -->
971		</div>
972				
973			    </div>
974	    
975	</div>    
976		
977	
978	    
979	
980
981	<div class="separator"><!-- --></div>
982	
983	<div class="verticl_booking_midpart clearfix">
984	    <div class="seats_wrap left">
985		    		    <div class="seat_input_wrap clearfix">
986			    <label>Adult seats</label>
987			    <select id="passengers" name="passengers" class="seat_options required">
988	<option value="0">Adult seats</option>
989	<option value="1">1</option>
990	<option value="2" selected="selected">2</option>
991	<option value="3">3</option>
992	<option value="4">4</option>
993	<option value="5">5</option>
994	<option value="6">6</option>
995	<option value="7">7</option>
996	<option value="8">8</option>
997	<option value="9">9</option>
998	<option value="10">10</option>
999	<option value="11">11</option>
1000	<option value="12">12</option>
1001	<option value="13">13</option>
1002	<option value="14">14</option>
1003</select>
1004		    </div>
1005		    		    
1006		    		    <div class="seat_input_wrap clearfix">
1007			    <label>Suitcases</label>
1008			    <select id="suitcases" name="suitcases" class="seat_options">
1009	<option value="0" selected="selected">Suitcases</option>
1010	<option value="1">1</option>
1011	<option value="2">2</option>
1012	<option value="3">3</option>
1013	<option value="4">4</option>
1014	<option value="5">5</option>
1015	<option value="6">6</option>
1016	<option value="7">7</option>
1017	<option value="8">8</option>
1018	<option value="9">9</option>
1019	<option value="10">10</option>
1020	<option value="11">11</option>
1021	<option value="12">12</option>
1022	<option value="13">13</option>
1023	<option value="14">14</option>
1024</select>
1025		    </div>
1026		    	    </div>
1027	    
1028	    <div class="seats_wrap right">
1029		
1030		    		    <div class="seat_input_wrap clearfix">
1031			    <label>Booster seats</label>
1032			    <select id="boosterseats" name="boosterseats" class="seat_options">
1033	<option value="0" selected="selected">Booster seats</option>
1034	<option value="1">1</option>
1035</select>
1036		    </div>
1037		    		    
1038		    		    <div class="seat_input_wrap clearfix">
1039			    <label>Infant seats</label>
1040			    <select id="infantseats" name="infantseats" class="seat_options">
1041	<option value="0" selected="selected">Infant seats</option>
1042	<option value="1">1</option>
1043</select>
1044		    </div>
1045		    		    
1046		    		    <div class="seat_input_wrap clearfix">
1047			    <label>Child seats</label>
1048			    <select id="chseats" name="chseats" class="seat_options">
1049	<option value="0" selected="selected">Child seats</option>
1050	<option value="1">1</option>
1051</select>
1052		    </div>
1053		    	    </div>
1054	</div>
1055	
1056        <div class="separator"><!-- --></div>
1057	
1058		
1059	<div class="verticl_booking_bottompart clearfix">
1060	    <div class="date_Wrap left">
1061		<label>Scheduled Date and Time</label>
1062		
1063		<div class="date_input clearfix">
1064		    		    <input type="text" name="orderdate" id="orderdate" readonly="readonly" class="date_inputbox required" value="
106406-10-2026" />
1065		    		   <!--</div>
1066		    
1067		<div class="date_input clearfix">-->
1068		&nbsp;&nbsp;
1069		    <select id="selPtHr1" name="selPtHr1" class="hrs required" tabindex="1">
1070	<option value="">HRS</option>
1071	<option value="00">00</option>
1072	<option value="01">01</option>
1073	<option value="02">02</option>
1074	<option value="03">03</option>
1075	<option value="04">04</option>
1076	<option value="05">05</option>
1077	<option value="06">06</option>
1078	<option value="07">07</option>
1079	<option value="08">08</option>
1080	<option value="09">09</option>
1081	<option value="10">10</option>
1082	<option value="11">11</option>
1083	<option value="12">12</option>
1084	<option value="13">13</option>
1085	<option value="14">14</option>
1086	<option value="15">15</option>
1087	<option value="16" selected="selected">16</option>
1088	<option value="17">17</option>
1089	<option value="18">18</option>
1090	<option value="19">19</option>
1091	<option value="20">20</option>
1092	<option value="21">21</option>
1093	<option value="22">22</option>
1094	<option value="23">23</option>
1095</select>
1096<select id="selPtMn1" name="selPtMn1" class="mins required" tabindex="1">
1097	<option value="">MINS</option>
1098	<option value="00" selected="selected">00</option>
1099	<option value="05">05</option>
1100	<option value="10">10</option>
1101	<option value="15">15</option>
1102	<option value="20">20</option>
1103	<option value="25">25</option>
1104	<option value="30">30</option>
1105	<option value="35">35</option>
1106	<option value="40">40</option>
1107	<option value="45">45</option>
1108	<option value="50">50</option>
1109	<option value="55">55</option>
1110</select>
1111			
1112		</div>
1113	    </div>
1114	    
1115	    	    <div class="date_Wrap right" id="return_label">
1116		
1117		<div class="return"> 
1118		    <input name="returnjurney" value="returnjurney" type="checkbox" id="returnjurney" checked="checked" />
1119		    Return		    		</div>
1120		
1121				<div id="return_date_wrapper" style="display:block">
1122		  <label>Return Date and Time</label>
1123		    		    
1124		    <div id="return_datepicker_wrapper" style="display:block">
1125			<div class="date_input clearfix">
1126			    				<input type="text" name="orderdatereturn" id="orderdatereturn" readonly="readonly" class="date_inputbox required" value="Return Date" />
1127			    			<!--</div>
1128			
1129			<div class="date_input clearfix">-->
1130			    
1131				<select id="selPtHr2" name="selPtHr2" class="hrs required" tabindex="1">
1132	<option value="" selected="selected">HRS</option>
1133	<option value="00">00</option>
1134	<option value="01">01</option>
1135	<option value="02">02</option>
1136	<option value="03">03</option>
1137	<option value="04">04</option>
1138	<option value="05">05</option>
1139	<option value="06">06</option>
1140	<option value="07">07</option>
1141	<option value="08">08</option>
1142	<option value="09">09</option>
1143	<option value="10">10</option>
1144	<option value="11">11</option>
1145	<option value="12">12</option>
1146	<option value="13">13</option>
1147	<option value="14">14</option>
1148	<option value="15">15</option>
1149	<option value="16">16</option>
1150	<option value="17">17</option>
1151	<option value="18">18</option>
1152	<option value="19">19</option>
1153	<option value="20">20</option>
1154	<option value="21">21</option>
1155	<option value="22">22</option>
1156	<option value="23">23</option>
1157</select>
1158<select id="selPtMn2" name="selPtMn2" class="mins required" tabindex="1">
1159	<option value="" selected="selected">MINS</option>
1160	<option value="00">00</option>
1161	<option value="05">05</option>
1162	<option value="10">10</option>
1163	<option value="15">15</option>
1164	<option value="20">20</option>
1165	<option value="25">25</option>
1166	<option value="30">30</option>
1167	<option value="35">35</option>
1168	<option value="40">40</option>
1169	<option value="45">45</option>
1170	<option value="50">50</option>
1171	<option value="55">55</option>
1172</select>
1173			</div>
1174		    </div>
1175		</div>
1176	    </div>
1177	    	    
1178	    	    
1179	</div>
1180	<input type="button" class="submit see_price" value="BOOK ONLINE" />
1181	<div id="tbc_form_error" style="display:none;"></div>
1182    </div>
1183    
1184    </form>
1185</div>
1186
1187<script type="text/javascript" src="https://www.booktaxilosangeles.com/components/com_taxibooking/assets/js/jquery-1.8.3.min.js"></script>
vendor: 1 bytes, line 1187
1187
1188<script type="text/javascript">
1189var tbjQuery = $.noConflict( true );
1190</script>
vendor: 1 bytes, line 1190
1190
1191<script type="text/javascript">
1192/* tb_city override: plugin selectbox neutralizado - selects nativos.
1193   Las llamadas .selectbox() del JS heredado quedan como no-op. */
1194tbjQuery.fn.selectbox = function(){ return this; };
1195</script>
vendor: 1 bytes, line 1195
1195
1196<script type="text/javascript" src="https://www.booktaxilosangeles.com/components/com_taxibooking/assets/js/jquery-ui.js"></script>
vendor: 1 bytes, line 1196
1196
1197<script type="text/javascript" src="https://www.booktaxilosangeles.com/components/com_taxibooking/assets/js/jquery.ui.datepicker-en-GB.js"></script>
vendor: 1 bytes, line 1197
1197
1198<script type="text/javascript" src="https://www.booktaxilosangeles.com/modules/mod_taxibooking/assets/js/modtaxibooking.js"></script>
1198
1199
1200<script type="text/javascript">
1201// LocationIQ access token (from the api_key2 setting field)
1202var LOCATIONIQ_KEY = 'pk.66ef67993cacbecce21911e8d6bfbebf';
1203// Optional ISO country code to bias/restrict results (empty = worldwide)
1204var LOCATIONIQ_COUNTRY = '';
1205var HERE_KEY = 'CVxM2blTr4BLSm52UbMJdd4K9VstOh4aH1Q9flyQkw8';
1206var HERE_COUNTRY3 = '';
1207var HERE_DEFAULT_CITY = 'Los Angeles';
1208</script>
1208
1209
1210<style type="text/css">
1211/* Keep LocationIQ autocomplete suggestions inside the field width and
1212   wrap long addresses onto multiple lines instead of overflowing. */
1213.ui-autocomplete {
1214    max-width: 100%;
1215    box-sizing: border-box;
1216    overflow-x: hidden;
1217}
1218.ui-autocomplete .ui-menu-item,
1219.ui-autocomplete .ui-menu-item-wrapper,
1220.ui-autocomplete .ui-menu-item a {
1221    white-space: normal !important;
1222    word-wrap: break-word;
1223    overflow-wrap: anywhere;
1224    line-height: 1.3;
1225}
1226</style>
1227
1228<script type="text/javascript">
1229tbjQuery(document).ready(function(){
1230	
1231	tbHereInitDefaultAt()
1232    
1233    tbjQuery( "#verticle_booking_wrap" ).tabs({
1234	active: 0,
1235	beforeActivate: function( event, ui ) {
1236	    //tbjQuery.fn.unsetPoiAddress();
1237	    //tbjQuery.fn.unsetRoute();
1238	    //tbjQuery.fn.unsetHourlyHire();
1239	    
1240	    // unset return date
1241	    tbjQuery('#returnjurney').attr('checked', false);
1242	    tbjQuery('div#return_date_wrapper').hide();
1243            tbjQuery('#orderdatereturn').val('Return Date');
1244	    
1245	    tbjQuery('#selPtHr2').selectbox('detach');
1246	    tbjQuery('#selPtHr2').val('');
1247	    tbjQuery('#selPtHr2').selectbox('attach');
1248	    
1249	    tbjQuery('#selPtMn2').selectbox('detach');
1250	    tbjQuery('#selPtMn2').val('');
1251	    tbjQuery('#selPtMn2').selectbox('attach');
1252            
1253	    // clear out the return extras
1254	    tbjQuery('div#return_extra_wrapper').html('').hide();
1255	},
1256	select: function(event, ui) {
1257            var selectedTabTitle = tbjQuery(ui.tab).text();
1258            if(selectedTabTitle=='Hourly'){
1259		tbjQuery('#return_label').hide();
1260		tbjQuery('#returnjurney').attr('checked', false);
1261		tbjQuery('#return_date_wrapper').find('input, select').each(function(){
1262		    tbjQuery(this).val('');
1263		})
1264		tbjQuery('#return_date_wrapper').hide();
1265		tbjQuery('#hourly_hr').addClass('required');
1266	    }
1267	    else {
1268		tbjQuery('#return_label').show();
1269		tbjQuery('#hourly_hr').removeClass('required');
1270	    }
1271	}
1272    });
1273    
1274    tbjQuery(".seat_options").selectbox();
1275    tbjQuery(".stop_interval_options").selectbox();    
1276    tbjQuery(".hrs, .mins").selectbox();
1277    
1278    // route autocomplete
1279        tbjQuery("#route_category_fld").autocomplete({
1280        source: [],		
1281        minLength: 2,
1282        open: function( event, ui ) {
1283            tbjQuery('div.routes_wrapper div.routecategory_dropdown_wrapper').hide();
1284        },
1285        select: function(event, ui) {
1286            tbjQuery('#route_category').val(ui.item.id);
1287	    tbjQuery('#route_category_fld').val(ui.item.value);
1288	    tbjQuery('div.routes_wrapper div.routecategory_dropdown_wrapper').hide();
1289	    
1290	    // unset routes
1291	    tbjQuery('#route_from').val(0);
1292	    tbjQuery('#route_from_fld').val('');
1293	    tbjQuery('#route_to').val(0);
1294	    tbjQuery('#route_to_fld').val('');
1295	    
1296	    // unset all the poi/address selection below
1297	    tbjQuery.fn.unsetPoiAddress();
1298	    tbjQuery.fn.unsetHourlyHire();
1299	    
1300	    tbjQuery.fn.collectRouteFrom();
1301	    
1302	    // set booking type
1303	    tbjQuery('#booking_type').val('offers');
1304        }
1305    })
1306    
1307    tbjQuery("#route_category_dropoff_fld").autocomplete({
1308        source: [],		
1309        minLength: 2,
1310        open: function( event, ui ) {
1311            tbjQuery('div.routes_wrapper div.routecategory_dropoff_dropdown_wrapper').hide();
1312        },
1313        select: function(event, ui) {
1314            tbjQuery('#route_category_dropoff').val(ui.item.id);
1315	    tbjQuery('#route_category_dropoff_fld').val(ui.item.value);
1316	    tbjQuery('div.routes_wrapper div.routecategory_dropoff_dropdown_wrapper').hide();
1317	    
1318	    // unset routes
1319	    tbjQuery('#route_to').val(0);
1320	    tbjQuery('#route_to_fld').val('');
1321	    
1322	    // unset all the poi/address selection below
1323	    tbjQuery.fn.unsetPoiAddress();
1324	    tbjQuery.fn.unsetHourlyHire();
1325	    
1326	    tbjQuery.fn.collectRouteTo();
1327	    
1328	    // set booking type
1329	    tbjQuery('#booking_type').val('offers');
1330        }
1331    })
1332    
1333    tbjQuery("#route_from_fld").autocomplete({
1334        source: [{"label":"Los Angeles International Airport (LAX)","value":"Los Angeles International Airport (LAX)","id":"276"},{"label":"San Diego Airport (SAN), North Harbor Drive, San Diego, California, EE. UU.","value":"San Diego Airport (SAN), North Harbor Drive, San Diego, California, EE. UU.","id":"309"}],		
1335        minLength: 2,
1336        open: function( event, ui ) {
1337            tbjQuery('div.routes_wrapper div.routefrom_dropdown_wrapper').hide();
1338        },
1339        select: function(event, ui) {
1340            tbjQuery('#route_from').val(ui.item.id);
1341	    tbjQuery('#route_from_fld').val(ui.item.value);
1342	    tbjQuery('div.routes_wrapper div.routefrom_dropdown_wrapper').hide();
1343	    
1344	    // unset all the poi/address selection below
1345	    tbjQuery.fn.unsetPoiAddress();
1346	    tbjQuery.fn.unsetHourlyHire();
1347	    tbjQuery.fn.getExtras('route_pickup');
1348	    
1349	    // collect route to
1350	    tbjQuery.fn.collectRouteTo();
1351	    
1352	    // set booking type
1353	    tbjQuery('#booking_type').val('offers');
1354        }
1355    })
1356    
1357    tbjQuery("#route_to_fld").autocomplete({
1358        source: [],		
1359        minLength: 2,
1360        open: function( event, ui ) {
1361            tbjQuery('div.routes_wrapper div.routeto_dropdown_wrapper').hide();
1362        },
1363        select: function(event, ui) {
1364            tbjQuery('#route_to').val(ui.item.id);
1365	    tbjQuery('#route_to_fld').val(ui.item.value);
1366	    tbjQuery('div.routes_wrapper div.routeto_dropdown_wrapper').hide();
1367	    
1368	    // unset all the poi/address selection below
1369	    tbjQuery.fn.unsetPoiAddress();
1370	    tbjQuery.fn.unsetHourlyHire();
1371	    tbjQuery.fn.getExtras('route_dropoff');
1372	    
1373	    // set booking type
1374	    tbjQuery('#booking_type').val('offers');
1375        }
1376    })
1377        
1378    // autocomplete
1379    tbjQuery("#airports1").autocomplete({
1380        source: [{"label":"Los Angeles International Airport (LAX)","value":"Los Angeles International Airport (LAX)","id":"276"},{"label":"John Wayne Airport (SNA)","value":"John Wayne Airport (SNA)","id":"307"},{"label":"San Diego Airport (SAN), North Harbor Drive, San Diego, California, EE. UU.","value":"San Diego Airport (SAN), North Harbor Drive, San Diego, California, EE. UU.","id":"309"},{"label":"LGB, Donald Douglas Drive, Long Beach, CA, USA","value":"LGB, Donald Douglas Drive, Long Beach, CA, USA","id":"310"}],		
1381        minLength: 2,
1382        open: function( event, ui ) {
1383            tbjQuery('div.pickup_wrap div.poi_dropdown_wrapper').hide();
1384        },
1385        select: function(event, ui) {
1386            tbjQuery.fn.unsetRoute();
1387	    tbjQuery.fn.unsetHourlyHire();
1388	    tbjQuery.fn.getExtras('pickup');
1389	    
1390	    // set booking type
1391	    tbjQuery('#booking_type').val('address');
1392        }
1393    })
1394    
1395    tbjQuery("#airports2").autocomplete({
1396        source: [{"label":"Los Angeles International Airport (LAX)","value":"Los Angeles International Airport (LAX)","id":"276"},{"label":"John Wayne Airport (SNA)","value":"John Wayne Airport (SNA)","id":"307"},{"label":"San Diego Airport (SAN), North Harbor Drive, San Diego, California, EE. UU.","value":"San Diego Airport (SAN), North Harbor Drive, San Diego, California, EE. UU.","id":"309"},{"label":"LGB, Donald Douglas Drive, Long Beach, CA, USA","value":"LGB, Donald Douglas Drive, Long Beach, CA, USA","id":"310"}],		
1397        minLength: 2,
1398        open: function( event, ui ) {
1399            tbjQuery('div.dropoff_wrap div.poi_dropdown_wrapper').hide();
1400        },
1401        select: function(event, ui) {
1402            tbjQuery.fn.unsetRoute();
1403	    tbjQuery.fn.unsetHourlyHire();
1404	    tbjQuery.fn.getExtras('dropoff');
1405	    
1406	    // set booking type
1407	    tbjQuery('#booking_type').val('address');
1408        }
1409    })
1410    
1411        
1412        
1413    // customer can't choose return date previous to the pickup date
1414        
1415    tbjQuery('a.addstop').click(function(){
1416	
1417	var stops_counter = tbjQuery('div.stops_wrap').length;
1418	if(stops_counter > 7){
1419	    alert("The maximum Stops allowed is 8");
1420	    return false;
1421	}
1422	
1423	var html = '<div class="topinnerWrap stops_wrap last clearfix">'+
1424			'<div class="top_ver_input_wrapOuter clearfix">'+
1425			    '<div class="top_ver_input_wrap clearfix">';
1426	
1427		
1428		
1429	html 	+= 	'<div class="inputField poi_disabled address_disabled">'+
1430			    '<input type="text" class="inputbox waypoints" name="waypoints['+stops_counter+']" id="waypoint_'+stops_counter+'" value="" placeholder="Please select a place" />'+
1431			    '<input type="hidden" name="waypoints_lat['+stops_counter+']" id="waypoint_lat" value="" />'+
1432			    '<input type="hidden" name="waypoints_lng['+stops_counter+']" id="waypoint_lng" value="" />'+
1433			'</div>';
1434	
1435		html 	+= '</div>';
1436	html += 	'<div class="time_at_stop clearfix">';
1437	html += 		'<div class="title_stops">Time at stop</div><select name="waypoints_stop_duration['+stops_counter+']" class="stop_interval_options" tabindex="1">';
1438		html += '</select></div><a href="javascript:void(0);" class="remove_stops">Remove Stop</a>';
1439				
1440	html 	+= 	'</div>'+
1441		    '</div>';
1442	
1443	tbjQuery('#stops_wrapper').append(html);
1444	tbjQuery(".stop_interval_options").selectbox();
1445	
1446	// bind place autocomplete to this waypoint
1447		var options = {};
1448		
1449		
1450	    })
1451})
1452
1453var geocoder;
1454var map;
1455// Coordenadas del sesgo por defecto (se rellena al cargar si hay ciudad)
1456var HERE_DEFAULT_AT = null;
1457
1458// Geocodifica la ciudad por defecto UNA vez al cargar -> HERE_DEFAULT_AT
1459function tbHereInitDefaultAt() {
1460    if (typeof HERE_DEFAULT_CITY === 'undefined' || HERE_DEFAULT_CITY === '') { return; }
1461    tbHereForward(HERE_DEFAULT_CITY, function(lat, lon) {
1462        if (lat !== null && lon !== null) {
1463            HERE_DEFAULT_AT = lat + ',' + lon;
1464        }
1465    });
1466}
1467
1468// Construye los parametros de sesgo segun la cascada.
1469function tbHereBiasParams(atOverride) {
1470    var p = {};
1471    if (atOverride) {
1472        p.at = atOverride;                         // anclaje explicito (origen->destino)
1473    } else if (HERE_DEFAULT_AT) {
1474        p.at = HERE_DEFAULT_AT;                    // sesgo por ciudad
1475    } else if (typeof HERE_COUNTRY3 !== 'undefined' && HERE_COUNTRY3 !== '') {
1476        p['in'] = 'countryCode:' + HERE_COUNTRY3;  // sesgo por pais
1477    }
1478    return p;
1479}
1480
1481// Autocomplete con /discover. getAnchor: funcion opcional que devuelve "lat,lon" para anclar.
1482function tbHereAutocomplete(inputEl, onSelect, getAnchor) {
1483    tbjQuery(inputEl).autocomplete({
1484        minLength: 3,
1485        delay: 300,
1486        source: function(request, response) {
1487            var anchor = (typeof getAnchor === 'function') ? getAnchor() : null;
1488            var params = {
1489                apiKey: HERE_KEY,
1490                q: request.term,
1491                limit: 5
1492            };
1493            var bias = tbHereBiasParams(anchor);
1494            for (var k in bias) { if (bias.hasOwnProperty(k)) { params[k] = bias[k]; } }
1495
1496            var locale = tbjQuery('#locale').val();
1497            if (locale) { params.lang = locale.substring(0, 2); }
1498
1499            tbjQuery.ajax({
1500                url: 'https://discover.search.hereapi.com/v1/discover',
1501                dataType: 'json',
1502                data: params,
1503                success: function(data) {
1504                    var items = (data && data.items) ? data.items : [];
1505                    response(tbjQuery.map(items, function(item) {
1506                        var label = (item.address && item.address.label) ? item.address.label : item.title;
1507                        var pos = item.position || {};
1508                        return {
1509                            label: label,
1510                            value: label,
1511                            lat: (typeof pos.lat !== 'undefined') ? pos.lat : null,
1512                            lon: (typeof pos.lng !== 'undefined') ? pos.lng : null
1513                        };
1514                    }));
1515                },
1516                error: function() { response([]); }
1517            });
1518        },
1519        select: function(event, ui) {
1520            if (typeof onSelect === 'function') { onSelect(ui.item); }
1521        }
1522    });
1523
1524    var inst = tbjQuery(inputEl).data('uiAutocomplete') || tbjQuery(inputEl).data('autocomplete');
1525    if (inst) {
1526        inst._resizeMenu = function() {
1527            this.menu.element.outerWidth(tbjQuery(inputEl).outerWidth());
1528        };
1529    }
1530}
1531
1532// Reverse geocoding HERE: coords -> direccion
1533function tbHereReverse(lat, lon, cb) {
1534    var params = { apiKey: HERE_KEY, at: lat + ',' + lon, limit: 1 };
1535    var locale = tbjQuery('#locale').val();
1536    if (locale) { params.lang = locale.substring(0, 2); }
1537    tbjQuery.ajax({
1538        url: 'https://revgeocode.search.hereapi.com/v1/revgeocode',
1539        dataType: 'json',
1540        data: params,
1541        success: function(data) {
1542            var items = (data && data.items) ? data.items : [];
1543            cb((items.length && items[0].address && items[0].address.label) ? items[0].address.label : null);
1544        },
1545        error: function() { cb(null); }
1546    });
1547}
1548
1549// Forward geocode HERE: texto -> {lat, lon} (lo usa tbHereInitDefaultAt)
1550function tbHereForward(query, cb) {
1551    tbjQuery.ajax({
1552        url: 'https://geocode.search.hereapi.com/v1/geocode',
1553        dataType: 'json',
1554        data: { apiKey: HERE_KEY, q: query, limit: 1 },
1555        success: function(data) {
1556            var items = (data && data.items) ? data.items : [];
1557            if (items.length && items[0].position) {
1558                cb(parseFloat(items[0].position.lat), parseFloat(items[0].position.lng));
1559            } else { cb(null, null); }
1560        },
1561        error: function() { cb(null, null); }
1562    });
1563}
1564
1565/* ============================================================
1566   LocationIQ helpers (replacement for google.maps.places)
1567   ============================================================ */
1568
1569function tbLocationIQAutocomplete(inputEl, onSelect) {
1570    tbjQuery(inputEl).autocomplete({
1571        minLength: 3,
1572        delay: 300,
1573        source: function(request, response) {
1574            var params = {
1575                key: LOCATIONIQ_KEY,
1576                q: request.term,
1577                limit: 5,
1578                dedupe: 1,
1579                format: 'json'
1580            };
1581            var locale = tbjQuery('#locale').val();
1582            if (locale) { params['accept-language'] = locale.substring(0, 2); }
1583            if (LOCATIONIQ_COUNTRY) { params.countrycodes = LOCATIONIQ_COUNTRY; }
1584
1585            tbjQuery.ajax({
1586                url: 'https://api.locationiq.com/v1/autocomplete',
1587                dataType: 'json',
1588                data: params,
1589                success: function(data) {
1590                    response(tbjQuery.map(data || [], function(item) {
1591                        return {
1592                            label: item.display_name,
1593                            value: item.display_name,
1594                            lat: item.lat,
1595                            lon: item.lon
1596                        };
1597                    }));
1598                },
1599                error: function() { response([]); }
1600            });
1601        },
1602        select: function(event, ui) {
1603            if (typeof onSelect === 'function') { onSelect(ui.item); }
1604        }
1605    });
1606
1607    // Make the suggestions dropdown match the input width (so long
1608    // addresses wrap onto several lines instead of overflowing the page).
1609    var inst = tbjQuery(inputEl).data('uiAutocomplete') || tbjQuery(inputEl).data('autocomplete');
1610    if (inst) {
1611        inst._resizeMenu = function() {
1612            this.menu.element.outerWidth(tbjQuery(inputEl).outerWidth());
1613        };
1614    }
1615}
1616
1617function tbLocationIQReverse(lat, lon, cb) {
1618    var params = { key: LOCATIONIQ_KEY, lat: lat, lon: lon, format: 'json' };
1619    var locale = tbjQuery('#locale').val();
1620    if (locale) { params['accept-language'] = locale.substring(0, 2); }
1621
1622    tbjQuery.ajax({
1623        url: 'https://us1.locationiq.com/v1/reverse',
1624        dataType: 'json',
1625        data: params,
1626        success: function(data) {
1627            cb(data && data.display_name ? data.display_name : null);
1628        },
1629        error: function() { cb(null); }
1630    });
1631}
1632
1633function initialize() {
1634        var options = {};
1635        
1636        var address_from_input = document.getElementById('address_from');
1637
1638    tbjQuery("#address_from").on('input', function(){
1639	tbjQuery('#address_from_lat').val("");
1640	tbjQuery('#address_from_lng').val("");
1641	tbjQuery('div.pickup_wrap div.poi_dropdown_wrapper').hide();
1642    });
1643    tbHereAutocomplete(address_from_input, function(item) {
1644	tbjQuery('div.pickup_wrap div.poi_dropdown_wrapper').hide();
1645	tbjQuery('#address_from_lat').val(item.lat);
1646	tbjQuery('#address_from_lng').val(item.lon);
1647
1648	tbjQuery.fn.unsetRoute();
1649	tbjQuery.fn.unsetHourlyHire();
1650
1651	// set booking type
1652	tbjQuery('div#pickup_extra_wrapper').html('');
1653	tbjQuery('#booking_type').val('address');
1654	tbjQuery("#address_from").removeClass('incorrect');
1655
1656	tbjQuery.fn.getExtras('pickup');
1657
1658	// regenerate return route with extra if Return Journey is selected
1659	if(tbjQuery('#returnjurney').is(':checked') && tbjQuery('#show_return_extras').val()==1){
1660	    tbjQuery.fn.getReturnExtras();
1661	}
1662    });
1663        
1664        var address_to_input = document.getElementById('address_to');
1665
1666    tbjQuery("#address_to").on('input', function(){
1667	tbjQuery('#address_to_lat').val("");
1668	tbjQuery('#address_to_lng').val("");
1669	tbjQuery('div.dropoff_wrap div.poi_dropdown_wrapper').hide();
1670    });
1671    tbHereAutocomplete(address_to_input, function(item) {
1672	tbjQuery('div.dropoff_wrap div.poi_dropdown_wrapper').hide();
1673	tbjQuery('#address_to_lat').val(item.lat);
1674	tbjQuery('#address_to_lng').val(item.lon);
1675
1676	tbjQuery.fn.unsetRoute();
1677	tbjQuery.fn.unsetHourlyHire();
1678
1679	// set booking type
1680	tbjQuery('div#dropoff_extra_wrapper').html('');
1681	tbjQuery('#booking_type').val('address');
1682	tbjQuery("#address_to").removeClass('incorrect');
1683
1684	tbjQuery.fn.getExtras('dropoff');
1685
1686	// regenerate return route with extra if Return Journey is selected
1687	if(tbjQuery('#returnjurney').is(':checked') && tbjQuery('#show_return_extras').val()==1){
1688	    tbjQuery.fn.getReturnExtras();
1689	}
1690    });
1691        
1692    tbjQuery('.waypoints').each(function(){
1693	var waypoint_field = this;
1694	tbHereAutocomplete(waypoint_field, function(item) {
1695	    tbjQuery(waypoint_field).siblings('#waypoint_lat').val(item.lat);
1696	    tbjQuery(waypoint_field).siblings('#waypoint_lng').val(item.lon);
1697	});
1698    })
1699    
1700    load_default_map();
1701}
1702
1703function get_user_location(scope, obj)
1704{
1705    if(scope=='pickup'){
1706	if(navigator.geolocation) {
1707	    navigator.geolocation.getCurrentPosition(function(position) {
1708		
1709		tbjQuery('#address_from_lat').val(position.coords.latitude);
1710		tbjQuery('#address_from_lng').val(position.coords.longitude);
1711		
1712		tbjQuery.fn.unsetRoute();
1713		tbjQuery.fn.unsetHourlyHire();
1714		
1715		// set booking type
1716		tbjQuery('div#pickup_extra_wrapper').html('');
1717		tbjQuery('#booking_type').val('address');
1718		tbjQuery("#address_from").removeClass('incorrect');
1719		
1720		// regenerate return route with extra if Return Journey is selected
1721		if(tbjQuery('#returnjurney').is(':checked') && tbjQuery('#show_return_extras').val()==1){
1722		    tbjQuery.fn.getReturnExtras();
1723		}
1724		//tbjQuery.fn.getExtras('address_pickup');
1725		tbjQuery.fn.getExtras('pickup');
1726		tbHereReverse(position.coords.latitude, position.coords.longitude, function(address) {
1727		    if (address) {
1728			tbjQuery('#address_from').val(address);
1729		    } else {
1730			alert('We could not detect your location');
1731		    }
1732		});
1733	    }, function() {
1734	      
1735	    });
1736	}
1737    }
1738    if(scope=='dropoff'){
1739	if(navigator.geolocation) {
1740	    navigator.geolocation.getCurrentPosition(function(position) {
1741		
1742		tbjQuery('#address_to_lat').val(position.coords.latitude);
1743		tbjQuery('#address_to_lng').val(position.coords.longitude);
1744		
1745		tbjQuery.fn.unsetRoute();
1746		tbjQuery.fn.unsetHourlyHire();
1747		
1748		// set booking type
1749		tbjQuery('div#dropoff_extra_wrapper').html('');
1750		tbjQuery('#booking_type').val('address');
1751		tbjQuery("#address_to").removeClass('incorrect');
1752		
1753		// regenerate return route with extra if Return Journey is selected
1754		if(tbjQuery('#returnjurney').is(':checked') && tbjQuery('#show_return_extras').val()==1){
1755		    tbjQuery.fn.getReturnExtras();
1756		}
1757		//tbjQuery.fn.getExtras('address_dropoff');
1758		tbjQuery.fn.getExtras('dropoff');
1759		tbHereReverse(position.coords.latitude, position.coords.longitude, function(address) {
1760		    if (address) {
1761			tbjQuery('#address_to').val(address);
1762		    } else {
1763			alert('We could not detect your location');
1764		    }
1765		});
1766	    }, function() {
1767	      
1768	    });
1769	}
1770    }
1771    if(scope=='waypoints'){
1772	var stop_parent = tbjQuery(obj).closest('div.stops_wrap');
1773	if(navigator.geolocation) {
1774	    navigator.geolocation.getCurrentPosition(function(position) {
1775		
1776		tbjQuery(stop_parent).find('#waypoint_lat').val(position.coords.latitude);
1777		tbjQuery(stop_parent).find('#waypoint_lng').val(position.coords.longitude);
1778		
1779		tbjQuery.fn.unsetRoute();
1780		tbjQuery.fn.unsetHourlyHire();
1781		tbjQuery('#booking_type').val('address');
1782	    
1783		tbHereReverse(position.coords.latitude, position.coords.longitude, function(address) {
1784		    if (address) {
1785			tbjQuery(stop_parent).find('.waypoints').val(address);
1786		    } else {
1787			alert('We could not detect your location');
1788		    }
1789		});
1790	    }, function() {
1791	      
1792	    });
1793	}
1794    }
1795}
1796
1797function load_default_map() {
1798    // No external map provider to initialize for LocationIQ in this module.
1799}
1800
1801tbjQuery(window).on('load', initialize);
1802
1803/* tb_city override: mensaje de error visible tras la validacion */
1804tbjQuery(function(){
1805    var msgs = { es: 'Revisa los campos marcados en rojo.',
1806                 en: 'Please check the fields highlighted in red.' };
1807    tbjQuery(document).on('click', '.see_price', function(){
1808        setTimeout(function(){
1809            /* marcar con clase PROPIA: .incorrect a veces se retira antes
1810               de pintarse y el mensaje salia sin campos en rojo */
1811            var bad = tbjQuery('#verticle_booking_wrap .incorrect:visible');
1812            bad.addClass('tbc-bad');
1813            var lang = (tbjQuery('#locale').val() || 'en').substring(0,2);
1814            var box = tbjQuery('#tbc_form_error');
1815            if (bad.length > 0) { box.text(msgs[lang] || msgs.en).show(); }
1816            else { box.hide(); }
1817        }, 60);
1818    });
1819    tbjQuery(document).on('input change', '#verticle_booking_wrap .incorrect, #verticle_booking_wrap .tbc-bad', function(){
1820        tbjQuery(this).removeClass('incorrect tbc-bad');
1821        if (tbjQuery('#verticle_booking_wrap .tbc-bad:visible').length === 0) { tbjQuery('#tbc_form_error').hide(); }
1822    });
1823});
1824
1825/* tb_city override: cambio nativo en hourly (el plugin ya no existe) */
1826tbjQuery(function(){
1827    tbjQuery(document).on('change', '#hourly_hr', function(){
1828        tbjQuery('#booking_type').val('hourly');
1829        if (tbjQuery.fn.unsetPoiAddress) tbjQuery.fn.unsetPoiAddress();
1830        if (tbjQuery.fn.unsetRoute) tbjQuery.fn.unsetRoute();
1831        if (tbjQuery.fn.getExtras) tbjQuery.fn.getExtras('hourly_hire');
1832    });
1833});
1834</script>
1834		</div>
1835			<div class="moduletable-wellcometext span6">
1836					
1837
1838<div class="custom-wellcometext span6"  >
1839	<div style="float:left; width: 90%;">
1840	<div>
1841		<h2>
1842			Los Angeles Airport Transfer</h2>
1843		<p>
1844			&nbsp;</p>
1845		<p>
1846			<strong>If you are going to visit Los Angeles, we can help you to start your visit stress-free. </strong>We are delivering private transportation for groups and individuals, holidays and business, from Los Angeles airport (LAX) to Los Angeles downtown, Port of Los Angeles and to the main resorts in the region, with a large fleet of budget and premium vehicles, 6 seater minivans and minibuses for groups of 14-36 people. Our prices are "all inclusive" and fixed, for a total comfort and hassle-free arrival to Los Angeles.</p>
1847		<p>
1848			&nbsp;</p>
1849		<p>
1850			<strong>Book online your Private Transfer</strong>, using our website with an online safe payment. Our driver will be waiting for you at the arrival terminal of the airport, showing a board with your name, taking you to your destination fast and stress-free.</p>
1851		<p>
1852			&nbsp;</p>
1853		<span style="font-size:24px;"><strong>Easy booking online!</strong></span>
1854		<p>
1855			&nbsp;</p>
1856		<p>
1857			<i class="fa fa-map-marker fa-3x">&nbsp;</i> <i class="fa fa-plus fa-2x">&nbsp;</i> <i class="fa fa-eur fa-3x">&nbsp;</i> <i class="fa fa-plus fa-2x">&nbsp;</i> <i class="fa fa-credit-card fa-3x">&nbsp;</i> <i class="fa fa-arrow-right fa-2x">&nbsp;</i> <i class="fa fa-taxi fa-3x">&nbsp;</i></p>
1858		<ul>
1859			<li>
1860				Select your options for pickup and drop off from the list of available routes in booking form.</li>
1861			<li>
1862				Click "book online" button to calculate the all-inclusive total amount and select the type of vehicle required.</li>
1863			<li>
1864				Complete your personal data, flight details and the mobile phone number and confirm the payment with your credit or debit card (or PayPal). Your booking will be automatically processed and confirmed and you will receive all the details by email immediately.</li>
1865		</ul>
1866	</div>
1867	<div class="mobilehide" style="float:right; width: 90%;">
1868		<br />
1869		<br />
1870		<ul class="fa-ul">
1871			<li>
1872				<i class="fa-li fa fa-envelope fa-4x">&nbsp;</i> <span style="font-size:18px;"><strong>Immediate confirmation</strong></span><br />
1873				After completing the payment process, you immediately will receive an email confirmation with the details of your booking (please check), including instructions for driver meeting and our assistance phone number in Los Angeles.</li>
1874			<li>
1875				&nbsp;</li>
1876			<li>
1877				<i class="fa-li fa fa-user-plus fa-4x">&nbsp;</i> <span style="font-size:18px;"><strong>We check any reservation</strong></span><br />
1878				Our Customer Service will review your booking data to avoid any possible problems (flight number, date and time of arrival ..).</li>
1879			<li>
1880				&nbsp;</li>
1881			<li>
1882				<i class="fa-li fa fa-cab fa-4x">&nbsp;</i> <strong>Professional</strong><span style="font-size:18px;"><strong> experienced drivers</strong></span><br />
1883				Book Taxi Los Angeles provide professional drivers with vehicles that meet local regulations for the transport of persons.<br />
1884				Our drivers are carefully selected for their expertise and obsession to customer service. Taxi reservation with Book Taxi Los Angeles is safe and reliable.</li>
1885			<li>
1886				&nbsp;</li>
1887		</ul>
1888	</div>
1889	<div>
1890		<br />
1891		<p>
1892			&nbsp;</p>
1893	</div>
1894	<p>
1895		&nbsp;</p>
1896</div>
1897<div style="float:left; width: 90%;">
1898	<p>
1899		If you are travelling within USA, please check also our services in <a href="http://www.booktaxinewyork.com" target="_blank">New York</a>, <a href="http://www.booktaxisanfrancisco.com" target="_blank">San Francisco</a>, <a href="http://www.booktaxilasvegas.com" target="_blank">Las Vegas</a>. For other destinations in the <a href="http://www.bookairporttransfers.com" target="_blank">USA and Canada</a>, please also check <a href="http://www.bookairporttransfers.com" target="_blank">here</a>.</p>
1900</div>
1901</div>
1902		</div>
1903			<div class="moduletable-bookonline span6">
1904					
1905
1906<div class="custom-bookonline span6"  >
1907	<p>
1908	<span style="font-size:18px;">Meet &amp; Greet at airport arrival lounge</span></p>
1909<p>
1910	<strong>Los Angeles Airport Transfers stress-free</strong>: Once you arrive and claim your luggage, please meet our driver at arrival lounge (luggage claim area). You will find meeting instructions on your service voucher. In case of flight delay, we will reschedule your pickup time for free.</p>
1911<p>
1912	<span style="font-size:18px;">Meet &amp; Greet at cruise terminal</span></p>
1913<p>
1914	In the cruise terminal there are numbered areas for cars to pull into, please call our assistance number to notify the number of the area are you standing and we will notify to the driver to show at this area with a nameboard. (toll free number available for international customers).</p>
1915<p>
1916	<span style="font-size:18px;">Safe Payment</span></p>
1917<p>
1918	You can book a transfer safely and easily with Book Taxi Los Angeles using Mastercard, American Express, JCB, Visa and Visa Electron or PayPal.<br />
1919	<br />
1920	Our website uses a secure bank system to process payments. All information is managed only between you and our bank, with an encoded page, making it impossible to read for third parties.<br />
1921	<br />
1922	&nbsp;</p>
1923<p>
1924	&nbsp;</p>
1925<p align="center">
1926	<i class="fa fa-cc-amex fa-4x">&nbsp;</i> <i class="fa fa-cc-mastercard fa-4x">&nbsp;</i> <i class="fa fa-cc-visa fa-4x">&nbsp;</i> <i class="fa fa-cc-paypal fa-4x">&nbsp;</i><i class="fa fa-cc-jcb fa-4x">&nbsp;</i></p>
1927<p>
1928	&nbsp;</p>
1929</div>
1930		</div>
1931	    </div>
1932      </div>
1933  <div class="tbc-strip">
1934    <div class="tbc-wrap">
1935      <span>&#10003; Meet &amp; Greet</span>
1936      <span>&#10003; Flight tracking included</span>
1937      <span>&#10003; Fixed price &mdash; no surprises</span>
1938      <span>&#10003; Free cancellation</span>
1939    </div>
1940  </div>
1941</section>
1942<script>
1943/* Neutralizar en el parse (antes del ready de jQuery) las pestanas del
1944   formulario cuyo href es una URL real: jQuery UI las cargaria por AJAX
1945   incrustando la pagina entera y re-inicializando los selects (clones). */
1946(function () {
1947  var links = document.querySelectorAll('.tbc-heroform ul li a, #verticle_booking_wrap ul li a');
1948  for (var i = 0; i < links.length; i++) {
1949    var h = links[i].getAttribute('href') || '';
1950    if (h.charAt(0) === '/' || h.indexOf('http') === 0) {
1951      links[i].setAttribute('href', '#tbc-disabled');
1952      links[i].parentNode.style.display = 'none';
1953    }
1954  }
1955})();
1956</script>
1956
1957
1958<!-- ===== Resumen de servicio (solo home): intro + como funciona + tarifas ===== -->
1959<section class="tbc-quick">
1960  <div class="tbc-wrap">
1961    <p class="tbc-quick-intro">Airport, port and station transfers in Los Angeles with licensed local drivers. Fixed price confirmed at booking, Meet &amp; Greet at arrivals and 24/7 support on WhatsApp.</p>
1962    <h2 class="tbc-quick-h">How it works</h2>
1963    <div class="tbc-steps">
1964      <div class="tbc-step"><span class="tbc-stepn">1</span><h3>Book online</h3><p>Choose route, date and vehicle &mdash; your fixed price shows instantly.</p></div>
1965      <div class="tbc-step"><span class="tbc-stepn">2</span><h3>Instant confirmation</h3><p>Booking and driver details arrive by email. Free cancellation.</p></div>
1966      <div class="tbc-step"><span class="tbc-stepn">3</span><h3>Your driver waits for you</h3><p>Name sign at arrivals and flight tracking included &mdash; even if you land late.</p></div>
1967    </div>
1968      </div>
1969</section>
1970
1971
1972<!-- ================= CONTENIDO ================= -->
1973<div id="tbc-main" class="tbc-wrap tbc-maincontainer">
1974  <span style="font-size:15px;cursor:pointer" onclick="openNav()">&#9776; Click here to open the list of available destinations worldwide</span>
1975
1976<script>
1977function openNav() {
1978    document.getElementById("mySidenav").style.width = "99%";
1979}
1980
1981function closeNav() {
1982    document.getElementById("mySidenav").style.width = "0";
1983}
1984</script>
1984  
1985<div id="system-message-container">
1986</div>
1987  <div class="blog-featured">
1988
1989
1990
1991
1992</div>
1993
1994  </div>
1995
1996<!-- receptor de los modulos extra que llegan en topmodule junto al formulario -->
1997<div id="tbc-extra" class="tbc-wrap tbc-modgrid"></div>
1998
1999
2000<div class="tbc-wrap tbc-modgrid bottommodulelist">
2001  		<div class="moduletable">
2002					
2003
2004<div class="custom"  >
2005	<p>
2006	<i class="fa fa-taxi">&nbsp;</i><em><a href="/">Book Taxi Los Angeles</a>, your local expert for Los Angeles Airport Transfers. The most comfortable way to go from <a href="/los-angeles-airport-transfers-to-city">Los Angeles airport to city.</a> </em></p>
2007</div>
2008		</div>
2009			<div class="moduletable">
2010					
2011
2012<div class="custom"  >
2013	<p>
2014	<i class="fa fa-info-circle fa-4x">&nbsp;</i><span style="font-size:22px;">Useful Information a</span><span style="font-size:22px;">bout your Transfer in Los Angeles</span></p>
2015</div>
2016		</div>
2017			<div class="moduletable">
2018					
2019
2020<div class="custom"  >
2021	<p>
2022	<br />
2023	<strong>Is my reservation a Private or shared transfer service? </strong>You have booked a private shuttle service. Our company provides exclusively private transfers in Los Angeles. You and your group are the only passengers in the booked vehicle, and a door-to-door service will be provided without any additional waiting or extra stop between the requested addresses and final destination.<br />
2024	<br />
2025	<strong>Where will the driver meet my group?</strong></p>
2026<p>
2027	For Customers arriving to <strong>Los Angeles airport</strong>: On arrival please collect your luggage and proceed to the main lounge. The driver will be waiting for you showing a board with your name.</p>
2028<p>
2029	For Customers <strong>arriving to any Cruise Terminal</strong>; Passengers must call the driver once they arrive outside the gates of the terminal (a toll free number for international customers is available). In the terminal there are numbered areas for cars to pull into, please notify our assistance number with the specific area are you standing and we will notify to the driver to show at this area with a nameboard.</p>
2030<p>
2031	Transfers from hotel to <strong>the airport</strong>: If you are leaving the hotel, the driver will wait for you at the hotel lobby. If you are leaving from a private address, please have your group waiting out front at requested pick-up time.<br />
2032	&nbsp;</p>
2033</div>
2034		</div>
2035			<div class="moduletable  container">
2036					
2037
2038<div class="custom  container"  >
2039	</div>
2040		</div>
2041			<div class="moduletable">
2042					
2043
2044<div class="custom"  >
2045	<div style="float:right;">
2046	<i class="fa fa-plane ">&nbsp;</i> Delivering reliable Airport Transfers in <a href="https://www.booktaxibcn.com/" target="_blank">Barcelona</a> - <a href="https://www.booktaximadrid.com/" target="_blank">Madrid</a> - <a href="https://www.booktaxivalencia.com/" target="_blank">Valencia</a> - <a href="https://www.booktaxisevilla.com/" target="_blank">Sevilla</a> - <a href="https://www.booktaxigrancanaria.com/">Gran Canaria</a> - <a href="https://www.booktaxitenerife.com/">Tenerife</a> - <a href="https://www.booktaximallorca.com/">Mallorca</a> - <a href="https://www.bookwatertaxivenice.com/">Venice</a> - <a href="https://www.booktaximilan.com/">Milan</a> - <a href="https://www.booktaxirome.com/" target="_blank">Rome</a> - <a href="https://www.airporttransfersparis.com" target="_blank">Paris</a> - <a href="https://www.booktaxilondon.com/" target="_blank">London</a> - <a href="https://www.booktaxiistanbul.com/" target="_blank">Istanbul</a> – <a href="https://www.booktaxiamsterdam.com/">Amsterdam</a> - <a href="https://www.booktaxiprague.com/">Prague</a> - <a href="https://www.booktaxiantalya.com" target="_blank">Antalya</a> - <a href="https://www.booktaxihongkong.com/">Hong Kong</a> – <a href="https://www.booktaxisingapore.com/">Singapore</a> - <a href="https://www.booktaxibangkok.com/">Bangkok</a> - <a href="http://www.booktaximarbella.com" target="_blank">Marbella</a> - <a href="https://www.booktaximalaga.com" target="_blank">Malaga</a> - <a href="https://www.booktaxilisbon.com" target="_blank">Lisbon</a> - <a href="https://www.booktaxiflorence.com" target="_blank">Florence</a> - <a href="https://www.booktaxibudapest.com">Budapest</a> - <a href="https://www.booktaxiathens.com" target="_blank">Athens</a> - <a href="https://www.booktaximunich.com" target="_blank">Munich</a> - <a href="https://www.booktaxibrussels.com" target="_blank">Brussels</a> - <a href="https://www.booktaxigeneva.com" target="_blank">Geneva</a> - <a href="https://www.booktaximoscow.com" target="_blank">Moscow</a> - <a href="https://www.booktaxistpetersburg.com" target="_blank">St Petersburg</a> - <a href="https://www.booktaxistockholm.com" target="_blank">Stockholm</a>
2046 - <a href="https://www.booktaxiabudhabi.com" target="_blank">Abu Dhabi</a> - <a href="https://www.booktaxidubai.com" target="_blank">Dubai</a> - <a href="https://www.booktaxitokyo.com" target="_blank">Tokyo</a> - <a href="https://www.booktaxinewyork.com" target="_blank">New York</a> - <a href="https://www.booktaxisanfrancisco.com">San Francisco</a> - <a href="https://www.booktaxilasvegas.com" target="_blank">Las Vegas</a> - <a href="https://www.bookairporttransfers.com" target="_blank">rest of USA and Canada</a></div>
2047<div style="float:right;">
2048	&nbsp;</div>
2049<div style="float:right;">
2050	&nbsp;</div>
2051<div style="float:left;">
2052	<i><a href="/">Book Taxi Los Angeles </a>offers Private Airport Taxi Services at Los Angeles airport (LAX), using exclusively vehicles with an official license and insurance for the transport of persons as requested by law. Book Taxi Los Angeles, your local expert for airport transfers in Los Angeles.</i></div>
2053</div>
2054		</div>
2055	</div>
2056
2057<!-- ===== Social proof: reseñas verificadas + reservas en vivo ===== -->
2058<section class="tbc-social" id="tbc-social" style="display:none">
2059  <div class="tbc-wrap">
2060    <h2 class="tbc-social-h"><span id="tbc-social-rating"></span> <span class="tbc-social-st" id="tbc-social-stars"></span></h2>
2061    <p class="tbc-social-sub">Verified post-trip reviews from real customers.</p>
2062    <div class="tbc-tgrid" id="tbc-tgrid"></div>
2063  </div>
2064</section>
2065<div class="tbc-toast" id="tbc-toast"></div>
2066
2067<!-- ===== Indicador de proceso: overlay con spinner entre pasos/paginas ===== -->
2068<div id="tbc-busy" aria-hidden="true">
2069  <div class="tbc-busy-box"><div class="tbc-spinner"></div><span>Processing your request&hellip;</span></div>
2070</div>
2071<script>
2072(function () {
2073  var b = document.getElementById('tbc-busy');
2074  function on()  { if (b) b.classList.add('on'); }
2075  function off() { if (b) b.classList.remove('on'); }
2076  /* navegacion completa: se enciende al salir, la pagina nueva lo limpia sola */
2077  window.addEventListener('beforeunload', on);
2078  /* volver con "atras" (bfcache) restauraria el overlay encendido: apagarlo */
2079  window.addEventListener('pageshow', off);
2080  /* pasos AJAX del flujo de reserva */
2081  document.addEventListener('click', function (e) {
2082    var t = e.target;
2083    if (!t || !t.classList) return;
2084    if (t.classList.contains('see_price') || t.classList.contains('step_submit_button')
2085        || t.classList.contains('car_booking') || t.classList.contains('see_summary')) {
2086      on();
2087      /* si la validacion paro el flujo (campos en rojo, sin AJAX), apagar pronto */
2088      setTimeout(function () {
2089        if (document.querySelector('.tbc-bad, .incorrect')) { off(); }
2090      }, 450);
2091      setTimeout(off, 15000); /* red de seguridad absoluta */
2092    }
2093  }, true);
2094  /* apagar cuando la actividad AJAX se calma (cuenta peticiones en vuelo) */
2095  function tbcArmBusyJq() {
2096    var jq = window.tbjQuery || window.jQuery;
2097    if (!jq || !jq.fn || jq.__tbcBusy) return;
2098    jq.__tbcBusy = 1;
2099    var inflight = 0, timer = null;
2100    jq(document).ajaxSend(function () { inflight++; if (timer) { clearTimeout(timer); timer = null; } });
2101    jq(document).ajaxComplete(function () {
2102      inflight--;
2103      if (inflight <= 0) { inflight = 0; if (timer) clearTimeout(timer); timer = setTimeout(off, 400); }
2104    });
2105  }
2106  tbcArmBusyJq();
2107  document.addEventListener('DOMContentLoaded', tbcArmBusyJq);
2108})();
2109</script>
vendor: 1 bytes, line 2109
2109
2110<script>
2111(function () {
2112  function esc(x){ var d=document.createElement('div'); d.textContent=String(x==null?'':x); return d.innerHTML; }
2113  fetch('/templates/tb_city/social.php')
2114    .then(function(r){ return r.json(); })
2115    .then(function(S){
2116      if (!S || S.error || !S.rating) return;
2117      var sec = document.getElementById('tbc-social');
2118      /* cabecera con rating real */
2119      var full = Math.floor(S.rating.avg), st='';
2120      for (var i=0;i<5;i++) st += (i<full ? '★' : '☆');
2121      document.getElementById('tbc-social-rating').innerHTML =
2122        Number(S.rating.avg).toFixed(1) + '/5 &middot; ' + Number(S.rating.count).toLocaleString('en') + ' verified reviews'
2123        + (S.rating.pct4plus ? ' &middot; ' + S.rating.pct4plus + '% rate us 4&#9733; or 5&#9733;' : '');
2124      document.getElementById('tbc-social-stars').textContent = st;
2125      /* testimonios: rotacion de 3 en 3 cada 8s */
2126      var ts = S.testimonials || [];
2127      if (ts.length) {
2128        sec.style.display = 'block';
2129        var grid = document.getElementById('tbc-tgrid'), page = 0;
2130        var pages = Math.max(1, Math.ceil(ts.length / 3));
2131        function render() {
2132          var group = ts.slice(page*3, page*3+3);
2133          if (!group.length) { page = 0; group = ts.slice(0,3); }
2134          grid.classList.add('tbc-fade');
2135          setTimeout(function(){
2136            grid.innerHTML = group.map(function(t){
2137              return '<div class="tbc-tc"><div class="tbc-tc-st">★★★★★</div>'
2138                + '<p>“' + esc(t.comment) + '”</p>'
2139                + '<div class="tbc-tc-who"><b>' + esc(t.name) + '</b>' + esc(t.route) + '</div></div>';
2140            }).join('');
2141            grid.classList.remove('tbc-fade');
2142          }, 300);
2143          page = (page + 1) % pages;
2144        }
2145        render();
2146        if (pages > 1) { setInterval(render, 8000); }
2147      }
2148      /* bocadillo de reservas anonimas en tiempo real */
2149      var rec = (S.recent || []).slice().sort(function(){ return Math.random() - .5; });
2150      if (rec.length && window.innerWidth > 991) {
2151        var t = document.getElementById('tbc-toast'), i = 0;
2152        function show(){
2153          var d = rec[i % rec.length]; i++;
2154          /* no pisar el aviso de cookies si sigue visible */
2155          var ca = document.getElementById('ca_banner');
2156          t.style.bottom = (ca && ca.offsetParent && ca.offsetHeight > 0) ? (ca.offsetHeight + 40) + 'px' : '18px';
2157          t.innerHTML = '<b>' + esc(d.name) + '</b> just booked: ' + esc(d.route)
2158            + '<div class="tbc-toast-tt">✓ verified booking</div>';
2159          t.classList.add('on');
2160          setTimeout(function(){ t.classList.remove('on'); }, 5000);
2161        }
2162        setTimeout(function(){ show(); setInterval(show, 14000); }, 6000);
2163      }
2164    })
2165    .catch(function(){ /* sin datos: la seccion queda oculta */ });
2166})();
2167</script>
2167
2168
2169<!-- ================= FOOTER ================= -->
2170<footer class="tbc-foot">
2171  <div class="tbc-wrap">
2172    <div class="tbc-foot-grid">
2173      		<div class="moduletable-footerleft span4">
2174					
2175<ul class="menu">
2176<li class="item-256"><a href="/" >BookTaxiLosAngeles © 2016</a></li><li class="item-159"><a href="/privacy-policy" >Privacy Policy</a></li><li class="item-160"><a href="/terms-conditions" >T &amp; C</a></li><li class="item-252"><a href="/top-destinations" >BookTaxi Destinations</a></li><li class="item-277"><a href="/sitemap-english" >Sitemap</a></li></ul>
2177		</div>
2178	
2179      
2180    </div>
2181    <div class="tbc-foot-legal">
2182      <a href="/about-booktaxilosangeles">BookTaxiLosangeles &copy;</a> - Operated by Acertio Factoria Creativa, part of <a href="https://www.booktaxigroup.com" target="_blank" rel="noopener">Book Taxi Group</a> - VAT# ESB65613424          </div>
2183    <div id="rating" class="tbc-rating"></div>
2184    <details class="tbc-seo">
2185      <summary>All destinations</summary>
2186            
2187    </details>
2188  </div>
2189</footer>
2190
2191<!-- ================= WIDGET WHATSAPP (B1) ================= -->
2192<div id="btg-wa-root"></div>
2193<script>
2194(function () {
2195  var BTG_WA_CONFIG = {
2196    phone: '34935478521',
2197    title: 'Book Taxi Group',
2198    subtitle: 'Support - usually replies in minutes',
2199    welcome: 'Hi! \ud83d\udc4b How can we help you with your transfer?',
2200    cta: 'Start chat on WhatsApp',
2201    placeholderNote: 'You will continue the conversation in WhatsApp.',
2202    schedule: { enabled: false, fromHour: 0, toHour: 24, offlineMsg: 'We are offline now, but leave your message and we will reply soon.' },
2203    position: 'right',
2204    greetingDelayMs: 1200
2205  };
2206  function buildWaLink() { return 'https://wa.me/' + BTG_WA_CONFIG.phone; }
2207  function isOnline() { var s = BTG_WA_CONFIG.schedule; if (!s.enabled) return true; var h = new Date().getHours(); return h >= s.fromHour && h < s.toHour; }
2208  var side = BTG_WA_CONFIG.position === 'left' ? 'left' : 'right';
2209  var css = ''
2210   + '#btg-wa-root{--btg-blue:var(--tbc-dark,#1f3864);--btg-green:#25d366;--btg-greend:#128c7e;}'
2211   + '.btg-wa-fab{position:fixed;bottom:22px;' + side + ':22px;z-index:99998;width:60px;height:60px;border-radius:50%;background:var(--btg-green);box-shadow:0 4px 14px rgba(0,0,0,.28);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .18s ease;border:none;}'
2212   + '.btg-wa-fab:hover{transform:scale(1.07);}'
2213   + '.btg-wa-fab svg{width:34px;height:34px;fill:#fff;}'
2214   + '.btg-wa-badge{position:absolute;top:-4px;' + side + ':-4px;background:#ff3b30;color:#fff;border-radius:50%;width:20px;height:20px;font:bold 12px/20px Arial;text-align:center;box-shadow:0 0 0 2px #fff;}'
2215   + '.btg-wa-bubble{position:fixed;bottom:92px;' + side + ':22px;z-index:99998;background:#fff;border-radius:14px;padding:12px 14px;max-width:240px;box-shadow:0 6px 22px rgba(0,0,0,.18);font:14px/1.4 Arial,sans-serif;color:#333;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .25s,transform .25s;}'
2216   + '.btg-wa-bubble.show{opacity:1;transform:translateY(0);pointer-events:auto;}'
2217   + '.btg-wa-bubble .x{position:absolute;top:6px;' + (side === 'right' ? 'left' : 'right') + ':8px;cursor:pointer;color:#aaa;font:16px/1 Arial;}'
2218   + '.btg-wa-panel{position:fixed;bottom:92px;' + side + ':22px;z-index:99999;width:330px;max-width:calc(100vw - 32px);background:#ece5dd;border-radius:14px;overflow:hidden;box-shadow:0 10px 32px rgba(0,0,0,.32);font-family:Arial,sans-serif;opacity:0;transform:translateY(12px) scale(.98);pointer-events:none;transition:opacity .22s,transform .22s;}'
2219   + '.btg-wa-panel.show{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}'
2220   + '.btg-wa-head{background:var(--btg-blue);color:#fff;padding:14px 16px;display:flex;align-items:center;gap:10px;}'
2221   + '.btg-wa-head .av{width:42px;height:42px;border-radius:50%;background:var(--btg-green);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}'
2222   + '.btg-wa-head .av svg{width:24px;height:24px;fill:#fff;}'
2223   + '.btg-wa-head .t{font-size:15px;font-weight:bold;}'
2224   + '.btg-wa-head .s{font-size:11px;color:#c9d6ea;margin-top:2px;}'
2225   + '.btg-wa-head .cls{margin-' + (side === 'right' ? 'left' : 'right') + ':auto;cursor:pointer;font-size:20px;color:#c9d6ea;line-height:1;}'
2226   + '.btg-wa-body{padding:18px 14px;min-height:90px;}'
2227   + '.btg-wa-msg{background:#fff;border-radius:0 10px 10px 10px;padding:10px 12px;font-size:14px;color:#333;line-height:1.45;box-shadow:0 1px 1px rgba(0,0,0,.1);max-width:85%;}'
2228   + '.btg-wa-msg .nm{display:block;font-size:11px;font-weight:bold;color:var(--btg-green);margin-bottom:3px;}'
2229   + '.btg-wa-off{background:#fff7d6;color:#7a5c00;font-size:12px;border-radius:8px;padding:8px 10px;margin-top:10px;}'
2230   + '.btg-wa-foot{padding:12px 14px;background:#f7f7f7;}'
2231   + '.btg-wa-btn{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--btg-green);color:#fff;text-decoration:none;font-size:15px;font-weight:bold;padding:12px;border-radius:24px;transition:background .15s;}'
2232   + '.btg-wa-btn:hover{background:var(--btg-greend);}'
2233   + '.btg-wa-btn svg{width:20px;height:20px;fill:#fff;}'
2234   + '.btg-wa-note{text-align:center;font-size:11px;color:#999;margin-top:8px;}';
2235  var st = document.createElement('style'); st.textContent = css;
2236  document.head.appendChild(st);
2237  var WA_ICON = '<svg viewBox="0 0 32 32">
2237<path d="M16 .4C7.4.4.4 7.4.4 16c0 2.8.7 5.5 2.1 7.9L.3 31.7l8-2.1c2.3 1.3 4.9 1.9 7.6 1.9 8.6 0 15.6-7 15.6-15.6S24.6.4 16 .4zm0 28.5c-2.4 0-4.8-.7-6.9-1.9l-.5-.3-4.8 1.3 1.3-4.7-.3-.5c-1.4-2.2-2.1-4.7-2.1-7.3C2.7 8.7 8.7 2.7 16 2.7S29.3 8.7 29.3 16 23.3 28.9 16 28.9zm7.3-9.6c-.4-.2-2.4-1.2-2.7-1.3-.4-.1-.6-.2-.9.2-.3.4-1 1.3-1.3 1.6-.2.3-.5.3-.9.1-.4-.2-1.7-.6-3.2-2-1.2-1.1-2-2.4-2.2-2.8-.2-.4 0-.6.2-.8.2-.2.4-.5.6-.7.2-.2.3-.4.4-.7.1-.3.1-.5 0-.7-.1-.2-.9-2.2-1.3-3-.3-.8-.7-.7-.9-.7h-.8c-.3 0-.7.1-1.1.5-.4.4-1.4 1.4-1.4 3.4s1.5 3.9 1.7 4.2c.2.3 2.9 4.4 7 6.2 1 .4 1.7.7 2.3.9 1 .3 1.8.3 2.5.2.8-.1 2.4-1 2.7-1.9.3-.9.3-1.7.2-1.9-.1-.2-.3-.3-.7-.5z"/></svg>';
2238  var root = document.getElementById('btg-wa-root');
2239  var fab = document.createElement('button');
2240  fab.className = 'btg-wa-fab'; fab.setAttribute('aria-label', 'WhatsApp');
2241  fab.innerHTML = WA_ICON + '<span class="btg-wa-badge">1</span>';
2242  root.appendChild(fab);
2243  var bubble = document.createElement('div');
2244  bubble.className = 'btg-wa-bubble';
2245  bubble.innerHTML = '<span class="x">&times;</span>' + BTG_WA_CONFIG.welcome;
2246  root.appendChild(bubble);
2247  var online = isOnline();
2248  var panel = document.createElement('div');
2249  panel.className = 'btg-wa-panel';
2250  panel.innerHTML =
2251      '<div class="btg-wa-head"><div class="av">' + WA_ICON + '</div>'
2252    + '<div><div class="t">' + BTG_WA_CONFIG.title + '</div>'
2253    + '<div class="s">' + (online ? BTG_WA_CONFIG.subtitle : 'Offline') + '</div></div>'
2254    + '<div class="cls">&times;</div></div>'
2255    + '<div class="btg-wa-body"><div class="btg-wa-msg"><span class="nm">' + BTG_WA_CONFIG.title + '</span>' + BTG_WA_CONFIG.welcome + '</div>'
2256    + (online ? '' : '<div class="btg-wa-off">' + BTG_WA_CONFIG.schedule.offlineMsg + '</div>') + '</div>'
2257    + '<div class="btg-wa-foot"><a class="btg-wa-btn" href="' + buildWaLink() + '" target="_blank" rel="noopener">' + WA_ICON + BTG_WA_CONFIG.cta + '</a>'
2258    + '<div class="btg-wa-note">' + BTG_WA_CONFIG.placeholderNote + '</div></div>';
2259  root.appendChild(panel);
2260  function openPanel() { panel.classList.add('show'); bubble.classList.remove('show'); fab.querySelector('.btg-wa-badge').style.display = 'none'; }
2261  function closePanel() { panel.classList.remove('show'); }
2262  fab.addEventListener('click', function () { panel.classList.contains('show') ? closePanel() : openPanel(); });
2263  panel.querySelector('.cls').addEventListener('click', closePanel);
2264  bubble.addEventListener('click', function (e) { if (e.target.classList.contains('x')) { bubble.classList.remove('show'); return; } openPanel(); });
2265  if (BTG_WA_CONFIG.greetingDelayMs > 0) { setTimeout(function () { if (!panel.classList.contains('show')) bubble.classList.add('show'); }, BTG_WA_CONFIG.greetingDelayMs); }
2266})();
2267</script>
2267
2268
2269<script>
2270/* Limpieza de clones sbHolder: el plugin selectbox se inicializa varias
2271   veces y acumula copias. Conservar solo el ULTIMO clon de cada select.
2272   OJO: no depender de window.load (hay recursos que lo dejan colgado):
2273   programar varias pasadas tras DOMContentLoaded. */
2274function tbcDedupSb() {
2275  var sels = document.querySelectorAll('#verticle_booking_wrap select');
2276  for (var i = 0; i < sels.length; i++) {
2277    var clones = [], n = sels[i].nextElementSibling;
2278    while (n && n.tagName !== 'SELECT' && n.tagName !== 'LABEL') {
2279      if (n.classList && n.classList.contains('sbHolder')) clones.push(n);
2280      n = n.nextElementSibling;
2281    }
2282    for (var j = 0; j < clones.length - 1; j++) {
2283      clones[j].parentNode.removeChild(clones[j]);
2284    }
2285  }
2286}
2287/* La posicion topmodule trae mas modulos ademas del formulario (cookies,
2288   textos SEO): sacarlos de la columna del hero y llevarlos al contenido. */
2289/* El panel remoto de jQuery UI puede incrustar una COPIA entera de la pagina
2290   (ids duplicados: #tbc-extra, #tbc-main...): elegir siempre el elemento REAL,
2291   nunca el clon embebido dentro del panel o del hero. */
2292function tbcRealNode(sel) {
2293  var list = document.querySelectorAll(sel), el = null;
2294  for (var i = 0; i < list.length; i++) {
2295    if (!list[i].closest('[id^="ui-tabs-"]') && !list[i].closest('.tbc-heroform')) { el = list[i]; }
2296  }
2297  return el;
2298}
2299/* vaciar los paneles remotos que hayan incrustado la pagina entera */
2300function tbcPurgeRemotePanels() {
2301  var ps = document.querySelectorAll('div[id^="ui-tabs-"]');
2302  for (var i = 0; i < ps.length; i++) {
2303    if (ps[i].querySelector('.tbc-hero, .tbc-maincontainer, .tbc-foot')) { ps[i].innerHTML = ''; }
2304  }
2305}
2306/* Guardian AJAX: el JS heredado (tabs/modales "remote") descargaba paginas
2307   enteras del propio sitio y las inyectaba con .html(), re-ejecutando TODOS
2308   los scripts (mootools, common.js...) de forma recursiva — segundos de
2309   bloqueo del hilo principal y menu sin responder. Se cancela cualquier GET
2310   al mismo dominio que sea una PAGINA (las llamadas legitimas del motor
2311   llevan option=/format=; los .js/.css y dominios externos no se tocan). */
2312function tbcArmAjaxGuard() {
2313  var jqs = [window.tbjQuery, window.jQuery, window.$];
2314  for (var i = 0; i < jqs.length; i++) {
2315    var jq = jqs[i];
2316    if (!jq || !jq.ajaxPrefilter || jq.__tbcGuard) continue;
2317    jq.__tbcGuard = 1;
2318    jq.ajaxPrefilter(function (opts) {
2319      var m = (opts.type || 'GET').toUpperCase();
2320      if (m !== 'GET') return;
2321      var u = String(opts.url || '');
2322      var abs = (u.charAt(0) === '/') ? location.origin + u : u;
2323      if (abs.indexOf('http') !== 0) { abs = location.origin + '/' + u; }
2324      if (abs.indexOf(location.origin) !== 0) return;      /* externos: libres */
2325      var path = abs.replace(location.origin, '').split('?')[0];
2326      var qs   = (abs.split('?')[1] || '').replace(/(^|&)langsw=[^&]*/g, '').replace(/^&/, '');
2327      /* solo se bloquea el GET de una PAGINA pura: sin query util y sin
2328         extension de fichero. Todo AJAX legitimo lleva query (task=, option=,
2329         format=...) o pide un fichero (.js/.css/.php...) y pasa sin tocar. */
2330      if (qs === '' && path.indexOf('.') === -1
2331          && (opts.dataType === undefined || opts.dataType === 'html')) {
2332        opts.beforeSend = function () { return false; }; /* jQuery cancela */
2333      }
2334    });
2335  }
2336}
2337function tbcRelocateExtras() {
2338  var hf = document.querySelector('.tbc-heroform');
2339  var dest = tbcRealNode('[id="tbc-extra"]');
2340  if (!hf || !dest) return;
2341  var kids = Array.prototype.slice.call(hf.children);
2342  for (var i = 0; i < kids.length; i++) {
2343    if (!kids[i].querySelector('#price_form')) { dest.appendChild(kids[i]); }
2344  }
2345}
2346/* ocultar bloques de plazas invisibles (ocupaban celda en la rejilla) */
2347function tbcTidySeats(aggressive) {
2348  var ws = document.querySelectorAll('.tbc-heroform .seat_input_wrap');
2349  for (var i = 0; i < ws.length; i++) {
2350    var sel = ws[i].querySelector('select');
2351    if (!sel) { ws[i].style.display = 'none'; continue; }
2352    var st = window.getComputedStyle(sel);
2353    if (st.display === 'none' && !ws[i].querySelector('.sbHolder')) { ws[i].style.display = 'none'; }
2354    else if (st.visibility === 'hidden') { ws[i].style.display = 'none'; }
2355    /* bloques colapsados a altura cero (p.ej. booster escondido por el JS
2356       antiguo sin display:none): ocupan celda en la rejilla — fuera */
2357    else if (aggressive && ws[i].offsetHeight === 0) { ws[i].style.display = 'none'; }
2358  }
2359}
2360/* armar YA, en el parseo: los ready() del modulo legacy se registraron antes
2361   que nuestro listener de DOMContentLoaded y podian lanzar su peticion de
2362   pagina antes de que el guardian existiera (carrera en cargas lentas) */
2363tbcArmAjaxGuard();
2364document.addEventListener('DOMContentLoaded', function () {
2365  tbcArmAjaxGuard();
2366  tbcRelocateExtras();
2367  var delays = [400, 1200, 2500, 4500, 8000];
2368  for (var i = 0; i < delays.length; i++) {
2369    (function (d) {
2370      setTimeout(tbcArmAjaxGuard, d); /* por si tbjQuery se define tarde */
2371      setTimeout(tbcDedupSb, d);
2372      setTimeout(function () { tbcTidySeats(d >= 1200); }, d);
2373      setTimeout(tbcPurgeRemotePanels, d);
2374      setTimeout(tbcRelocateExtras, d); /* por si el primer intento apunto al clon */
2375    })(delays[i]);
2376  }
2377});
2378window.addEventListener('load', function () { tbcDedupSb(); });
2379</script>
vendor: 1 bytes, line 2379
2379
2380<script>
2381/* En la home, plegar el texto SEO largo heredado bajo un "Leer mas":
2382   el HTML sigue integro para los buscadores, pero deja de dominar la pagina. */
2383function tbcCollapseSeo() {
2384  if (!document.body.classList.contains('tbc-is-home')) return;
2385  var sels = ['#tbc-main', '#tbc-extra', '.bottommodulelist'];
2386  for (var s = 0; s < sels.length; s++) {
2387    var el = tbcRealNode(sels[s]); /* nunca el clon embebido del panel remoto */
2388    if (!el || el.getAttribute('data-tbc-clip') || el.scrollHeight < 520) continue;
2389    el.setAttribute('data-tbc-clip', '1');
2390    el.classList.add('tbc-clip');
2391    var b = document.createElement('button');
2392    b.type = 'button';
2393    b.className = 'tbc-readmore';
2394    b.innerHTML = 'Read more';
2395    el.parentNode.insertBefore(b, el.nextSibling);
2396    (function (el, b) {
2397      b.onclick = function () {
2398        var open = !el.classList.contains('tbc-clip');
2399        if (open) {
2400          el.classList.add('tbc-clip');
2401          b.innerHTML = 'Read more';
2402          el.scrollIntoView({ behavior: 'smooth', block: 'start' });
2403        } else {
2404          el.classList.remove('tbc-clip');
2405          b.innerHTML = 'Show less';
2406        }
2407      };
2408    })(el, b);
2409  }
2410}
2411document.addEventListener('DOMContentLoaded', function () {
2412  setTimeout(tbcCollapseSeo, 600);
2413  setTimeout(tbcCollapseSeo, 2000); /* tbc-extra se rellena tras relocate */
2414  setTimeout(tbcCollapseSeo, 5000); /* red por si el embed AJAX llego tarde */
2415});
2416/* Cambio de idioma a prueba de caches: Chrome (y algunos hostings) cachean
2417   la redireccion de /en/ o /es/, dejando el sitio "atascado" en un idioma.
2418   Al hacer clic en un enlace de idioma se anade un parametro unico para
2419   saltar cualquier cache y llegar siempre al servidor (que fija la cookie). */
2420document.addEventListener('click', function (e) {
2421  var a = e.target && e.target.closest ? e.target.closest('a') : null;
2422  if (!a || a.host !== location.host) return;
2423  /* SOLO enlaces reales: los controles del formulario son <a href="#..."> o
2424     javascript: — su pathname coincide con la pagina actual y NO deben
2425     interceptarse (recargaban la home y borraban los datos del formulario) */
2426  var raw = a.getAttribute('href') || '';
2427  if (raw === '' || raw.charAt(0) === '#' || raw.indexOf('javascript') === 0 || a.hash !== '') return;
2428  /* /en/ y /es/ (cambio de idioma) y tambien "/" (Home y logo): la home
2429     redirige por cookie y esa redireccion se cachea con max-age — un clic
2430     con parametro unico no puede caer nunca en una redireccion cacheada */
2431  if (a.pathname === '/en/' || a.pathname === '/es/' || a.pathname === '/en' || a.pathname === '/es' || a.pathname === '/') {
2432    e.preventDefault();
2433    var p = a.pathname === '/' ? '/' : a.pathname.replace(/\/?$/, '/');
2434    location.href = p + '?langsw=' + (new Date()).getTime();
2435  }
2436}, true);
2437/* Blindaje contra modulos jurasicos: un document.write ejecutado DESPUES
2438   de cargar la pagina borra el documento entero (asi dejaba en blanco la
2439   home el scroller de testimonios antiguo cuando un embed AJAX re-evaluaba
2440   su script inline). Tras el load, write/writeln/open quedan anulados —
2441   ningun write post-carga es legitimo. */
2442window.addEventListener('load', function () {
2443  var noop = function () {};
2444  try {
2445    document.write = noop;
2446    document.writeln = noop;
2447    document.open = function () { return document; };
2448  } catch (e) {}
2449});
2450/* La cookie de idioma SIEMPRE pegada al idioma de la pagina visible.
2451   Cubre el hueco de la bfcache: al volver con "atras" la pagina se muestra
2452   sin pasar por el servidor y la cookie podia quedarse en el otro idioma —
2453   el siguiente POST (ver precio) respondia entonces en ese idioma. Se
2454   re-clava al mostrar la pagina, en cada clic y antes de enviar formularios
2455   (el submit programatico no dispara el evento submit: por eso el clic). */
2456(function () {
2457  var ck  = '85f482ac66195dd46292e9b99d583dec';
2458  var tag = 'en-GB';
2459  function tbcPinLang() {
2460    try { document.cookie = ck + '=' + tag + '; path=/; max-age=31536000'; } catch (e) {}
2461  }
2462  window.addEventListener('pageshow', tbcPinLang);
2463  document.addEventListener('click', tbcPinLang, true);
2464  document.addEventListener('submit', tbcPinLang, true);
2465  tbcPinLang();
2466})();
2467</script>
vendor: 1 bytes, line 2467
2467
2468<script>
2469/* imagenes grandes del contenido a ancho completo (las pequenas no se tocan) */
2470window.addEventListener('load', function () {
2471  var imgs = document.querySelectorAll('.tbc-maincontainer img, #tbc-extra img, .tbc-modgrid img');
2472  for (var i = 0; i < imgs.length; i++) {
2473    var im = imgs[i];
2474    if (im.naturalWidth >= 500 && !im.closest('#verticle_booking_wrap')) {
2475      im.style.width = '100%'; im.style.height = 'auto'; im.style.borderRadius = '12px';
2476    }
2477  }
2478});
2479</script>
vendor: 1 bytes, line 2479
2479
2480<script src="https://apis.google.com/js/platform.js" async defer>{lang: 'en-GB'}</script>
vendor: 1 bytes, line 2480
2480
2481<script>
vendor: 343 bytes, lines 2481-2486
2481
2482  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
2483  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
2484  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
2485  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
2486  ga('create', '
2486UA-46556656-1
vendor: 38 bytes, lines 2486-2487
2486', 'auto', {'allowLinker': true});
2487  
2487ga('require', 'displayfeatures');
2488  ga('require', 'linker');
2489  ga('linker:autoLink', ['gettaxibarcelona.com', 'gettaxibarcelona.co.uk', 'booktaxibarcelona.es', 'booktaxibcn.com', 'reservertaxibarcelone.fr', 'barcelonataxi.de', 'таксибарселона.рф', 'mobileworldcongresstransportation.com', 'booktaxicanaryislands.com', 'booktaxicanarias.com', 'booktaxitenerife.com', 'booktaxilaspalmas.com', 'booktaxigrancanaria.com', 'booktaxispain.com', 'booktaxi.es', 'booktaxivalencia.com', 'booktaxisevilla.com', 'booktaximadrid.com', 'booktaximallorca.com', 'booktaximajorca.com' , 'booktaxivenice.com', 'booktaxivenice.co.uk', 'bookwatertaxivenice.com', 'booktaxiistambul.com', 'booktaxiistanbul.com', 'fleetandgoo.com', 'barcelonaairporttransfers.info', 'taxiinmadrid.info', 'booktaximilan.com', 'booktaxirome.com', 'booktaxiparis.com', 'booktaxilondon.com', 'booktaximilan.co.uk', 'booktaxirome.co.uk', 'booktaxiparis.co.uk', 'booktaxilondon.co.uk', 'booktaxiberlin.com', 'bookairporttransfers.com' , 'booktaxiamsterdam.com' , 'booktaxiprague.com' , 'booktaxihongkong.com' , 'booktaxisingapore.com' , 'booktaxibangkok.com' , 'booktaxiantalya.com'  , 'booktaxilisbon.com' , 'booktaximarbella.com' , 'booktaximalaga.com' , 'booktaxinewyork.com' , 'booktaxisanfrancisco.com' , 'booktaxilasvegas.com' , 'booktaxilosangeles.com' , 'booktaxiflorence.com' , 'booktaxinaples.com' , 'booktaxibologna.com' , 'booktaxibudapest.com' , 'booktaxiathens.com' , 'booktaximunich.com' , 'booktaxibrussels.com' , 'booktaxigeneva.com' , 'booktaximoscow.com' , 'booktaxistpetersburg.com' , 'booktaxistockholm.com' , 'booktaxiabudhabi.com' , 'booktaxidubai.com' , 'booktaxitokyo.com'], true);
2490  ga('require', 'linkid', 'linkid.js');
2491  ga('send', 'pageview');
2492</script>
2492</body>
2493</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.