1<!DOCTYPE html> 2<html lang="en" 3 data-theme="synthwave"> 4<head> 5 <meta charset="utf-8"> 6 <meta name="viewport" content="width=device-width, initial-scale=1"> 7 <meta name="csrf-token" content="JbRwqATW1Vb2SskuUAqTnJBmY2FPliClbpRbYHqM"> 8 9 <link rel="icon" type="image/jpeg" href="https://cdn.directify.app/directories/favicons/01K8NASVNMBWXDY7QEG1KY5793.jpg"> 10 11 <!-- PWA Meta Tags --> 12 <!-- PWA Meta Tags --> 13<meta name="mobile-web-app-capable" content="yes"> 14<meta name="apple-mobile-web-app-capable" content="yes"> 15<meta name="apple-mobile-web-app-status-bar-style" content="default"> 16<meta name="apple-mobile-web-app-title" content="Team.aero"> 17<meta name="application-name" content="Team.aero"> 18<meta name="theme-color" content="#003160"> 19<meta name="msapplication-TileColor" content="#003160"> 20<meta name="msapplication-navbutton-color" content="#003160"> 21 22<!-- Web App Manifest (Dynamic) --> 23<link rel="manifest" href="/manifest.json"> 24 25<!-- Apple Touch Icons --> 26<link rel="apple-touch-icon" href="https://cdn.directify.app/directories/favicons/01K8NASVNMBWXDY7QEG1KY5793.jpg"> 27<link rel="apple-touch-icon" sizes="180x180" href="https://cdn.directify.app/directories/favicons/01K8NASVNMBWXDY7QEG1KY5793.jpg"> 28<link rel="apple-touch-icon" sizes="192x192" href="https://cdn.directify.app/directories/favicons/01K8NASVNMBWXDY7QEG1KY5793.jpg"> 29 30 31 <title>Aer Lingus - Team.aero</title> 32<meta name="description" content="Aer Lingus is a provider of commercial aviation based in Ireland. Flag carrier airline of Ireland offering transatlantic and European air travel services."> 33<!-- Twitter Card Tags --> 34<meta name="twitter:card" content="summary_large_image"> 35<meta name="twitter:title" content="Aer Lingus - Team.aero"> 36<meta name="twitter:description" content="Aer Lingus is a provider of commercial aviation based in Ireland. Flag carrier airline of Ireland offering transatlantic and European air travel services."> 37<meta name="twitter:image" content="https://images.aerlingus.com/resrc-origin/s=w352m,u/c=w352,h127,xof50,yof50/o=75/s=w380,pd2.6/https:/https://www.aerlingus.com/media/images/content/a321neo-economy.jpg"> 38<meta name="twitter:site" content=""> 39<!-- OG--> 40<meta property="og:title" content="Aer Lingus - Team.aero"> 41<meta property="og:description" content="Aer Lingus is a provider of commercial aviation based in Ireland. Flag carrier airline of Ireland offering transatlantic and European air travel services."> 42<meta property="og:image" content="https://images.aerlingus.com/resrc-origin/s=w352m,u/c=w352,h127,xof50,yof50/o=75/s=w380,pd2.6/https:/https://www.aerlingus.com/media/images/content/a321neo-economy.jpg"> 43<meta property="og:url" content="https://team.aero/listings/aer-lingus/"> 44<meta property="og:type" content="website"> 45<!-- Hreflang Tags --> 46<link rel="alternate" hreflang="en" href="https://team.aero/listings/aer-lingus/"> 47<link rel="alternate" hreflang="x-default" href="https://team.aero/listings/aer-lingus/"> 48<link rel="alternate" type="application/rss+xml" title="Team.aero" href="https://team.aero/rss.xml/"> 49 50 <link rel="canonical" href="https://team.aero/listings/aer-lingus/"> 51 52 <link href="https://team.aero/fonts/fonts.css?families=Roboto" rel="stylesheet"> 53 54 <!-- Auto Dark-Mode --> 55
55<script> 56 if (window.matchMedia('(prefers-color-scheme: dark)').matches) { 57 document.documentElement.setAttribute('data-theme', 'sunset'); 58 } 59 </script>
59 60 61 <!-- Scripts --> 62 <link rel="preload" as="style" href="https://team.aero/build/assets/app-DZNpRw8P.css" /><link rel="modulepreload" as="script" href="https://team.aero/build/assets/app-J8Ay3an5.js" /><link rel="stylesheet" href="https://team.aero/build/assets/app-DZNpRw8P.css" data-navigate-track="reload" />
62<script type="module" src="https://team.aero/build/assets/app-J8Ay3an5.js" data-navigate-track="reload"></script>
62 63 <!-- Styles --> 64 <!-- Livewire Styles --><style >[wire\:loading][wire\:loading], [wire\:loading\.delay][wire\:loading\.delay], [wire\:loading\.inline-block][wire\:loading\.inline-block], [wire\:loading\.inline][wire\:loading\.inline], [wire\:loading\.block][wire\:loading\.block], [wire\:loading\.flex][wire\:loading\.flex], [wire\:loading\.table][wire\:loading\.table], [wire\:loading\.grid][wire\:loading\.grid], [wire\:loading\.inline-flex][wire\:loading\.inline-flex] {display: none;}[wire\:loading\.delay\.none][wire\:loading\.delay\.none], [wire\:loading\.delay\.shortest][wire\:loading\.delay\.shortest], [wire\:loading\.delay\.shorter][wire\:loading\.delay\.shorter], [wire\:loading\.delay\.short][wire\:loading\.delay\.short], [wire\:loading\.delay\.default][wire\:loading\.delay\.default], [wire\:loading\.delay\.long][wire\:loading\.delay\.long], [wire\:loading\.delay\.longer][wire\:loading\.delay\.longer], [wire\:loading\.delay\.longest][wire\:loading\.delay\.longest] {display: none;}[wire\:offline][wire\:offline] {display: none;}[wire\:dirty]:not(textarea):not(input):not(select) {display: none;}:root {--livewire-progress-bar-color: #2299dd;}[x-cloak] {display: none !important;}[wire\:cloak] {display: none !important;}dialog#livewire-error::backdrop {background-color: rgba(0, 0, 0, .6);}</style> 65 66 <!-- Google tag (gtag.js) -->
vendor: 64 bytes, lines 66-67
66 67<script async src="https://www.googletagmanager.com/gtag/js?id=
67G-LYNL3EX2KZ
vendor: 12 bytes, line 67
67"></script>
68<script> 69
vendor: 134 bytes, lines 69-73
69window.dataLayer = window.dataLayer || []; 70 function gtag(){dataLayer.push(arguments);} 71 gtag('js', new Date()); 72 73 gtag('config', '
73G-LYNL3EX2KZ
vendor: 4 bytes, line 73
73');
74</script>
74 75 76
76<script defer src="https://analytics.directify.app/script.js" data-website-id="bae0b8ec-e684-42b8-9012-a635eb3b438b"></script>
76 77 78 <style> 79 @layer base { 80 html { 81 font-family: "Roboto", sans-serif !important; 82 } 83 } 84 </style> 85 86 87 88 <!-- Custom Styles --> 89<style id="directify-styles"> 90 :root, [data-theme] { 91 --color-base-100: oklch(13% 0.028 261.692); 92--color-base-200: #003160; 93--color-base-300: #E30613; 94--color-base-content: oklch(87% 0.01 258.338); 95--color-primary: #0030613; 96--color-primary-content: #9D9D9C; 97--color-secondary: #003160; 98--color-secondary-content: #9D9D9C; 99--color-accent: oklch(0% 0 0); 100--color-accent-content: oklch(100% 0 0); 101--color-neutral: oklch(44% 0.03 256.802); 102--color-neutral-content: oklch(98% 0.002 247.839); 103--color-info: #9D9D9C; 104--color-info-content: oklch(30% 0.056 229.695); 105--color-success: #dbfbe6; 106--color-success-content: oklch(26% 0.051 172.552); 107--color-warning: oklch(85% 0.199 91.936); 108--color-warning-content: oklch(28% 0.066 53.813); 109--color-error: oklch(70% 0.191 22.216); 110--color-error-content: oklch(25% 0.092 26.042); 111--radius-selector: 0rem; 112--radius-field: 1rem; 113--radius-box: 2rem; 114--size-selector: 0.25rem; 115--size-field: 0.28125rem; 116--border: 1px; 117--depth: 1; 118--noise: 0; 119 } 120 121 .btn-primary { 122 background-color: #003160; 123 color: #ffffff; 124 border-color: #e30613; 125 126 } 127 128 .btn-primary:hover { 129 background-color: #bababa; 130 131 } 132 133 /* Templates styling buttons with raw utilities (bg-primary etc.) tag them 134 with data-btn-primary; !important lets the configured colors beat the 135 single-class utilities regardless of stylesheet order. */ 136 [data-btn-primary] { 137 background-color: #003160 !important; 138 color: #ffffff !important; 139 border-color: #e30613 !important; 140 141 } 142 143 [data-btn-primary]:hover { 144 background-color: #bababa !important; 145 146 } 147 148 /* Hero Settings */ 149 .hero-bg-color { 150 background-color: #ffffff; 151 152 } 153 154 .directory-name { 155 color: #003160; 156 157 } 158 159 .directory-title { 160 color: #9D9D9C; 161 162 } 163 164 .directory-description { 165 color: #666666; 166 167 } 168 169 /* Cover-image opacity (0-100 in the editor â 0-1 here). Unlayered, so it 170 overrides the template's hardcoded Tailwind opacity utility. Only emitted 171 for a positive numeric value â a missing/zero/garbage value falls back to 172 the template's default so the cover can never silently disappear. */ 173 .directory-cover-image { 174 175 } 176 177 /* The dark tint layered above the cover image fades out as the slider 178 goes up, so 100 shows the photo completely untinted. Same guard as 179 above: unset/zero/garbage keeps the template's default tint. */ 180 .directory-cover-overlay { 181 182 } 183 184 /* Restaurant hero stat numbers use the brand primary on a near-black 185 hero; a dark primary would make them invisible, so fall back to white. */ 186 .hero-stat-value { 187 188 } 189 190 .submit-btn { 191 192 } 193 194 .submit-btn:hover { 195 196 } 197 198 .menu-item { 199 color: #ffffff; 200 201 } 202 203 .menu-item:hover { 204 color: #00615f; 205 206 } 207 208 .search-container { 209 background-color: #71cfcd; 210 211 } 212 213 .search-input { 214 background-color: #871111; 215 216 } 217 218 .search-btn { 219 220 } 221 222 .search-btn:hover { 223 224 } 225 226 .top-categories-title { 227 228 } 229 230 .top-categories-item { 231 232 } 233 234 .top-categories-item:hover { 235 236 } 237 238 /* Footer Settings */ 239 .footer-container { 240 241 } 242 243 244 245 /* Footer sections will use inline styles for individual colors */ 246 247 248 249 .footer-copyright, 250 .footer-container .footer-copyright { 251 252 } 253</style> 254 255 <style> 256 .mapouter { 257 position: relative; 258 text-align: right; 259 width: 100%; 260 height: 400px; 261 } 262 263 .gmap_canvas { 264 overflow: hidden; 265 background: none !important; 266 width: 100%; 267 height: 400px; 268 } 269 270 .gmap_iframe { 271 height: 400px !important; 272 } 273 </style> 274</head> 275 276<body class="antialiased"> 277 278 279 280<!-- Premium Modern Header --> 281<header class="sticky top-0 z-50 bg-base-100/95 backdrop-blur-xl border-b border-base-200/60 shadow-sm"> 282 <div class="container mx-auto px-4 lg:px-6"> 283 <nav class="flex items-center justify-between py-4"> 284 <!-- Left Section: Mobile Menu + Logo --> 285 <div class="flex items-center gap-3 lg:gap-6"> 286 <!-- Mobile Sidebar Toggle --> 287 <label for="my-drawer-2" class="lg:hidden btn btn-ghost btn-sm btn-circle hover:bg-primary/10 hover:text-primary transition-all"> 288 <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" 289 stroke="currentColor" class="w-5 h-5"> 290 <path stroke-linecap="round" stroke-linejoin="round" 291 d="M3.75 6.75h16.5M3.75 12h16.5m-16.5 5.25h16.5" /> 292 </svg> 293 </label> 294 295 <!-- Logo & Brand --> 296 <a href="https://team.aero/" class="flex items-center gap-3 group"> 297 <img src="https://cdn.directify.app/directories/logos/01KFZYQYADTQMTJ8M5PB0J55YC.png" alt="Team.aero" 298 class="w-auto h-16 transition-transform group-hover:scale-105"> 299 </a> 300 </div> 301 302 <!-- Center Section: Desktop Navigation --> 303 <div class="hidden lg:flex items-center gap-1"> 304 </div> 305 306 <!-- Right Section: CTA Buttons --> 307 <div class="flex items-center gap-2 lg:gap-3"> 308 309 <!-- Dashboard Button (Desktop) --> 310 311 <!-- Submit Button (Desktop) --> 312 313 <!-- Mobile Menu Toggle --> 314 <div class="lg:hidden"> 315 <div class="dropdown dropdown-end"> 316 <label tabindex="0" class="btn btn-ghost btn-sm btn-circle hover:bg-primary/10 hover:text-primary transition-all"> 317 <svg xmlns="http://www.w3.org/2000/svg" class="w-5 h-5" fill="none" viewBox="0 0 24 24" 318 stroke="currentColor" stroke-width="2"> 319 <path stroke-linecap="round" stroke-linejoin="round" d="M12 5v.01M12 12v.01M12 19v.01M12 6a1 1 0 110-2 1 1 0 010 2zm0 7a1 1 0 110-2 1 1 0 010 2zm0 7a1 1 0 110-2 1 1 0 010 2z" /> 320 </svg> 321 </label> 322 <ul tabindex="0" class="dropdown-content menu bg-base-100 rounded-2xl border border-base-200/60 shadow-2xl z-50 w-64 p-2 mt-3"> 323 <!-- Mobile Menu Items --> 324 325 <!-- Divider --> 326 327 <!-- Dashboard Link (Mobile) --> 328 329 <!-- Submit Button (Mobile) --> 330 </ul> 331 </div> 332 </div> 333 </div> 334 </nav> 335 </div> 336</header> 337 338<main class="min-h-screen bg-gradient-to-b from-base-100 via-base-100 to-base-200/30"> 339 <div class="drawer lg:drawer-open">
340 <input id="my-drawer-2" type="checkbox" class="drawer-toggle"/> 341 342 <!-- Main Content Area --> 343 <div class="drawer-content flex flex-col"> 344 <div class="flex-1"> 345 <!-- Hero Section / Title Area --> 346 347 <!-- Page Content --> 348 <div class="container mx-auto"> 349 <div wire:snapshot="{"data":{"placement":["hero-listing",{"class":"App\\Enums\\AdPlacement","s":"enm"}],"directory":[null,{"class":"App\\Models\\Directory","key":3176,"s":"mdl"}],"project":[null,{"class":"App\\Models\\Project","key":10751967,"s":"mdl"}],"category":null},"memo":{"id":"brm8pLX2RTB9DJp2AJ4B","name":"common.ads","path":"listings\/aer-lingus","method":"GET","release":"a-a-a","children":[],"scripts":[],"assets":[],"errors":[],"locale":"en"},"checksum":"ac42a426e0781fe0830560f0a6ccc79c4558fcb655bc574b55b6fd841f90bd37"}" wire:effects="{"partials":[]}" wire:id="brm8pLX2RTB9DJp2AJ4B" class=""> 350 <!--[if BLOCK]><![endif]--> <!--[if BLOCK]><![endif]--> <div class="mx-auto text-center px-4 md:px-8 pt-4 md:pt-8 mb-2"> 351 <div x-data="carousel('ad-hero')" 352 x-init=" startAutoPlay(5000) ; initResponsive({"default":1})" 353 @keydown.right="next" 354 @keydown.left="previous" 355 class="relative group pb-8" 356 data-slides="[[{}]]"> 357 358 <div class="overflow-hidden relative"> 359 <div class="flex transition-transform duration-500 ease-out" 360 :style="{ transform: `translateX(-${currentIndex * 100}%)` }"> 361 <!--[if BLOCK]><![endif]--> <div class="w-full shrink-0"> 362 <div class="grid grid-cols-1 gap-4"> 363 <!--[if BLOCK]><![endif]--> <!--[if BLOCK]><![endif]--> <div class="w-full mx-auto text-center"> 364 <!--[if BLOCK]><![endif]--> <p><img src="https://cdn.directify.app/directory/ad/EvvNHidWsD31ayRRHUNw0WABvCrWeOuf8BBtJG1o.jpg" alt="" /></p> 365 366 <!--[if ENDBLOCK]><![endif]--> </div> 367 <!--[if ENDBLOCK]><![endif]--> 368 <!--[if ENDBLOCK]><![endif]--> </div> 369 </div> 370 <!--[if ENDBLOCK]><![endif]--> </div> 371 </div> 372 373 <!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--></div> 374
375<script> 376document.addEventListener('alpine:init', () => { 377 Alpine.data('carousel', (id) => ({ 378 id: id, 379 currentIndex: 0, 380 slides: [], 381 autoPlayInterval: null, 382 itemsPerPage: { default: 1 }, 383 currentItems: 1, 384 385 init() { 386 this.slides = JSON.parse(this.$el.dataset.slides); 387 }, 388 389 initResponsive(config) { 390 this.itemsPerPage = config; 391 this.updateItemsPerPage(); 392 393 // Listen for window resize 394 window.addEventListener('resize', () => this.updateItemsPerPage()); 395 }, 396 397 updateItemsPerPage() { 398 const width = window.innerWidth; 399 let newItems = this.itemsPerPage.default; 400 401 if (width >= 1024 && this.itemsPerPage.lg) { 402 newItems = this.itemsPerPage.lg; 403 } else if (width >= 768 && this.itemsPerPage.md) { 404 newItems = this.itemsPerPage.md; 405 } else if (width >= 640 && this.itemsPerPage.sm) { 406 newItems = this.itemsPerPage.sm; 407 } 408 409 if (this.currentItems !== newItems) { 410 this.currentItems = newItems; 411 this.updateSlides(); 412 } 413 }, 414 415 updateSlides() { 416 const items = JSON.parse(this.$el.dataset.originalItems || this.$el.dataset.slides); 417 const allItems = items.flat(); // Flatten the array in case it's already chunked 418 419 // Rechunk items based on current items per page 420 const chunks = []; 421 for (let i = 0; i < allItems.length; i += this.currentItems) { 422 chunks.push(allItems.slice(i, i + this.currentItems)); 423 } 424 425 this.slides = chunks; 426 this.currentIndex = 0; // Reset to first slide after updating 427 }, 428 429 next() { 430 if (this.slides.length <= 1) return; 431 this.currentIndex = (this.currentIndex + 1) % this.slides.length; 432 }, 433 434 previous() { 435 if (this.slides.length <= 1) return; 436 this.currentIndex = (this.currentIndex - 1 + this.slides.length) % this.slides.length; 437 }, 438 439 startAutoPlay(interval) { 440 if (this.slides.length <= 1) return; 441 442 // Clear any existing interval for this carousel 443 if (this.autoPlayInterval) { 444 clearInterval(this.autoPlayInterval); 445 } 446 447 this.autoPlayInterval = setInterval(() => { 448 this.next(); 449 }, interval); 450 451 // Store the interval ID with the carousel's unique ID 452 this.$el.setAttribute('data-interval-id', this.autoPlayInterval); 453 454 this.$el.addEventListener('mouseenter', () => { 455 const intervalId = this.$el.getAttribute('data-interval-id'); 456 if (intervalId) { 457 clearInterval(parseInt(intervalId)); 458 } 459 }); 460 461 this.$el.addEventListener('mouseleave', () => { 462 this.startAutoPlay(interval); 463 }); 464 }, 465 466 // Cleanup when component is destroyed 467 destroy() { 468 const intervalId = this.$el.getAttribute('data-interval-id'); 469 if (intervalId) { 470 clearInterval(parseInt(intervalId)); 471 } 472 } 473 })); 474}); 475</script>
475 </div> <!--[if ENDBLOCK]><![endif]--> <!--[if ENDBLOCK]><![endif]--></div> 476 477 478 <div class="w-full"> 479 <div class="container mx-auto px-4 sm:px-6 lg:px-12 py-12"> 480 481 <nav class="flex items-center gap-2 text-sm text-base-content/60 mb-8"> 482 <a href="https://team.aero/" 483 class="hover:text-primary transition-colors duration-200"> 484 <span data-te-label data-te-group="project" data-te-key="breadcrumb_home">Home</span> 485 </a> 486 <svg class="w-4 h-4 rtl:-scale-x-100" fill="none" stroke="currentColor" viewBox="0 0 24 24"> 487 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path> 488 </svg> 489 <a href="https://team.aero/airline/" 490 class="hover:text-primary transition-colors duration-200"> 491 Airline 492 </a> 493 <svg class="w-4 h-4 rtl:-scale-x-100" fill="none" stroke="currentColor" viewBox="0 0 24 24"> 494 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"></path> 495 </svg> 496 <span class="text-base-content font-medium">Aer Lingus</span> 497 </nav> 498 499 500 <div 501 class="relative overflow-hidden rounded-3xl mb-8 h-96 bg-gradient-to-br from-primary/5 to-secondary/5"> 502 <img loading="lazy" 503 src="https://images.aerlingus.com/resrc-origin/s=w352m,u/c=w352,h127,xof50,yof50/o=75/s=w380,pd2.6/https:/https://www.aerlingus.com/media/images/content/a321neo-economy.jpg" 504 alt="" 505 class="w-full h-full object-cover"> 506 <div class="absolute inset-0 bg-gradient-to-t from-base-100 via-base-100/40 to-transparent"></div> 507 </div> 508 509 510 <div class="grid grid-cols-1 lg:grid-cols-4 xl:grid-cols-3 gap-8"> 511 512 <div class=" lg:col-span-3 xl:col-span-2 space-y-8"> 513 514 <div 515 class="bg-gradient-to-br from-base-100 to-base-200/50 rounded-2xl shadow-xl border-2 border-base-300/50 p-8"> 516 <div class="flex flex-col md:flex-row items-start gap-6 mb-6"> 517 <div class="flex-shrink-0 w-full md:w-auto flex justify-center md:justify-start"> 518 <div 519 class="w-24 h-24 rounded-2xl ring-4 ring-base-100 shadow-xl bg-base-100 overflow-hidden"> 520 <img loading="lazy" 521 src="https://www.aerlingus.com/media/images/furniture/branding/apple-touch-icon.png" 522 alt="" 523 class="w-full h-full object-cover"> 524 </div> 525 </div> 526 527 <div class="flex-1 min-w-0"> 528 <div class="flex items-start justify-between gap-4 mb-3"> 529 <div class="flex-1 min-w-0"> 530 <div class="text-4xl md:text-5xl font-bold text-base-content leading-tight mb-4"> 531 <h1 class="inline">Aer Lingus</h1> </div> 532 533 534 <div class="mb-4"> 535 </div> 536 537 </div> 538 539 </div> 540 541 <p class="text-lg text-base-content/70 leading-relaxed"> 542 Aer Lingus is the flag carrier airline of Ireland operating international passenger flights across Europe, North America and North Africa from its Dublin and Shannon hubs, offering scheduled services, holiday packages and cargo transport. 543 </p> 544 </div> 545 </div> 546 547 548 <div class="flex flex-wrap items-center gap-2 mb-6" x-data="{ showAllCategories: false }"> 549 <a href="https://team.aero/airline/" 550 class="inline-flex items-center px-4 py-2 rounded-lg text-sm font-semibold 551 bg-base-200 text-base-content/80 border border-base-300 552 hover:bg-primary/10 hover:text-primary hover:border-primary/30 553 transition-all duration-200"> 554 Airline 555 </a> 556 557 </div> 558 559 560 561 562 <div class="flex flex-wrap items-center gap-2" x-data="{ showAll: false }"> 563 <sp
563an class="inline-flex items-center gap-1.5 px-3 py-1.5 rounded-lg text-xs font-medium 564 shadow-sm hover:shadow-md transition-all duration-200 transform hover:scale-105" 565 style="background-color: ; color: ;"> 566 Commercial Aviation 567 </span> 568 569 </div> 570 571 572 573 574 </div> 575 576 577 578 579 580 581 582 583 584 <div wire:snapshot="{"data":{"placement":["listing-below-content",{"class":"App\\Enums\\AdPlacement","s":"enm"}],"directory":[null,{"class":"App\\Models\\Directory","key":3176,"s":"mdl"}],"project":[null,{"class":"App\\Models\\Project","key":10751967,"s":"mdl"}],"category":null},"memo":{"id":"4w8sler4R1KtuG7WYcZ3","name":"common.ads","path":"listings\/aer-lingus","method":"GET","release":"a-a-a","children":[],"scripts":[],"assets":[],"errors":[],"locale":"en"},"checksum":"c6e0cfc812227098d9f25283265512e0a7483db842b0812d03197ddf5a001f6d"}" wire:effects="{"partials":[]}" wire:id="4w8sler4R1KtuG7WYcZ3" class="hidden"> 585 <!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--></div> 586 587 588 589 590 591 592 <div class="bg-base-100 rounded-2xl shadow-lg border border-base-300/50 p-6"> 593 <div class="flex flex-col gap-3"> 594 <div class="custom-field flex items-center gap-2"> 595 <span class="flex items-center gap-2"> 596 597 <span class="custom-field-label text-sm text-base-content font-semibold"> 598 Team Aero Member 599 </span> 600 601 602 </span> 603 604 605 <span class="custom-field-value custom-checkbox inline-flex items-center"> 606 <div class="flex items-center gap-1.5 px-3 py-1 rounded-full bg-success/10 text-success"> 607 <svg class="w-5 h-5" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon"> 608 <path stroke-linecap="round" stroke-linejoin="round" d="M9 12.75 11.25 15 15 9.75M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"/> 609</svg> <span class="text-sm font-medium"><span data-te-label data-te-group="project" data-te-key="custom_field_yes_label">Yes</span> 610</span> 611 </div> 612 </span> 613 </div> 614 </div> 615 </div> 616 </div> 617 618 619 <div class="lg:col-span-1 xl:col-span-1 space-y-6"> 620 621 <div 622 class="bg-gradient-to-br from-base-100 to-base-200/50 rounded-2xl shadow-xl border-2 border-base-300/50 p-6 sticky top-8"> 623 <h3 class="text-lg font-bold mb-4"><span data-te-label data-te-group="project" data-te-key="quick_actions_heading">Quick Actions</span> 624</h3> 625 626 <div class="flex flex-col gap-3"> 627 <a href="https://www.aerlingus.com" 628 target="_blank" 629 630 class="flex items-center justify-center gap-2 px-5 py-3 rounded-xl 631 text-sm font-bold text-white bg-gradient-to-r from-primary to-primary/90 632 hover:from-primary/90 hover:to-primary shadow-lg hover:shadow-xl 633 transform hover:scale-[1.02] active:scale-[0.98] 634 transition-all duration-200 "> 635 <svg class="w-5 h-5" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon"> 636 <path stroke-linecap="round" stroke-linejoin="round" d="M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622 1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244"/> 637</svg>
637 <span> 638 Visit Website 639 </span> 640 </a> 641 642 643 </div> 644 645 646 647 648 649 <div class="mt-6 pt-6 border-t border-base-300/50"> 650 <div wire:snapshot="{"data":{"project":[null,{"class":"App\\Models\\Project","key":10751967,"s":"mdl"}],"classes":"","form":[null,{"class":"App\\Models\\Form","key":275,"s":"mdl"}],"active":true},"memo":{"id":"VSTkAGZINvKBEELUnist","name":"common.contact-project","path":"listings\/aer-lingus","method":"GET","release":"a-a-a","children":[],"scripts":[],"assets":[],"errors":[],"locale":"en"},"checksum":"3825fd0b76143f9ef7cbefb120cd2480f42ad2a51316ca351d9c754d47c99fcc"}" wire:effects="{"partials":[]}" wire:id="VSTkAGZINvKBEELUnist"> 651 <!--[if BLOCK]><![endif]--> <style> 652 [x-cloak] { display: none !important; } 653 </style> 654 655 <!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> 656 <div x-data="{ open: false }" 657 @open-contact-modal.window="open = true"> 658 <button 659 type="button" 660 @click="open = true" 661 class="btn btn-primary btn-sm cursor-pointer w-full rounded-lg font-semibold shadow-md hover:shadow-lg transition-all hover:scale-[1.02] active:scale-[0.98] flex items-center justify-center gap-2 " 662 > 663 <svg xmlns="http://www.w3.org/2000/svg" class="w-5 h-5" fill="none" viewBox="0 0 24 24" stroke="currentColor"> 664 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z" /> 665 </svg> 666 <span data-te-label data-te-group="project" data-te-key="contact_button_text">Contact</span> 667 </button> 668 669 <template x-teleport="body"> 670 <div 671 x-show="open" 672 x-cloak 673 class="fixed inset-0 z-[999] flex items-center justify-center bg-black/50 backdrop-blur-sm p-4" 674 @click.self="open = false" 675 @keydown.escape.window="open = false" 676 > 677 <div class="bg-base-100 rounded-2xl shadow-2xl w-full max-w-2xl max-h-[90vh] overflow-y-auto"> 678 679 <div class="sticky top-0 bg-gradient-to-br from-primary/5 to-primary/10 border-b border-base-200/50 px-6 py-4 rounded-t-2xl"> 680 <div class="flex items-start justify-between"> 681 <div class="flex-1"> 682 <h3 class="text-2xl font-bold text-base-content flex items-center gap-2"> 683 <svg xmlns="http://www.w3.org/2000/svg" class="w-6 h-6 text-primary" fill="none" viewBox="0 0 24 24" stroke="currentColor"> 684 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z" /> 685 </svg> 686 <span data-te-label data-te-group="project" data-te-key="contact_button_text">Contact</span> 687 </h3> 688 <p class="text-sm text-base-content/60 mt-1">Aer Lingus</p> 689 </div> 690 <button 691 type="button" 692 @click="open = false" 693 class="ms-4 p-2 rounded-lg hover:bg-base-200 transition-all" 694 > 695 <svg xmlns="http://www.w3.org/2000/svg" class="w-5 h-5" fill="none" viewBox="0 0 24 24" stroke="currentColor"> 696 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12" /> 697 </svg> 698 </button> 699 </div> 700 </div> 701 702 703 <div class="p-6"> 704 <div class="container mx-auto max-w-xl"> 705 <!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> 706 <form action="https://team.aero/forms/275" method="POST" enctype="multipart/form-data"> 707 <input type="hidden" name="_token" value="JbRwqATW1Vb2SskuUAqTnJBmY2FPliClbpRbYHqM" autocomplete="off"> 708 <div aria-hidden="true" style="position:absolute;
708left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;"> 709 <label for="_directify_hp_url">Website</label> 710 <input type="text" id="_directify_hp_url" name="_directify_hp_url" tabindex="-1" autocomplete="off" /> 711</div> 712 713<input type="hidden" name="_directify_hp_ts" value="eyJpdiI6ImR6UEI0bEptZjlyRUFjaDRRTFo5SVE9PSIsInZhbHVlIjoiMzdmSTJsai9MN3dMamRMcGc0aHBKZz09IiwibWFjIjoiMzFhMjhiMmU4Y2IwYmUwNzZhYzdkZWFmZjdjNDA1N2UwOGMzNGIzNTc2MTNjOWE2YThjMWNjOWNjNzgzYjFkOSIsInRhZyI6IiJ9" /> 714 715 <input type="hidden" name="_form_id" value="275" /> 716 <!--[if BLOCK]><![endif]--> <input type="hidden" name="project_id" value="10751967" /> 717 <!--[if ENDBLOCK]><![endif]--> 718 <div class="space-y-4"> 719 <!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> 720 <!--[if BLOCK]><![endif]--> <!--[if BLOCK]><![endif]--> <div class="space-y-1.5"> 721 <label for="name" class="block text-sm font-medium text-base-content/80 text-start"> 722 Name<!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> </label> 723 <input 724 type="text" 725 id="name" 726 name="name" 727 value="" 728 placeholder="Name" 729 class="input input-bordered w-full rounded-xl" 730 /> 731 <!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> </div> 732 <!--[if ENDBLOCK]><![endif]--> <!--[if BLOCK]><![endif]--> <div class="space-y-1.5"> 733 <label for="email" class="block text-sm font-medium text-base-content/80 text-start"> 734 Email<!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> </label> 735 <input 736 type="email" 737 id="email" 738 name="email" 739 value="" 740 placeholder="Email" 741 class="input input-bordered w-full rounded-xl" 742 /> 743 <!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> </div> 744 <!--[if ENDBLOCK]><![endif]--> <!--[if BLOCK]><![endif]--> <div class="space-y-1.5"> 745 <label for="message" class="block text-sm font-medium text-base-content/80 text-start"> 746 Message<!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> </label> 747 <textarea 748 id="message" 749 name="message" 750 placeholder="Message" 751 rows="4" 752 class="textarea textarea-bordered w-full rounded-xl" 753 ></textarea> 754 <!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> </div> 755 <!--[if ENDBLOCK]><![endif]--> <!--[if ENDBLOCK]><![endif]--> </div> 756 757 <div class="mt-6"> 758 <button type="submit" class="btn btn-primary btn-lg w-full rounded-xl"> 759 Send message 760 </button> 761 </div> 762 </form> 763 764 <!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--></div> 765 </div> 766 </div> 767 </div> 768 </template> 769 </div> 770 <!--[if ENDBLOCK]><![endif]--></div> 771 <div wire:snapshot="{"data":{"project":[null,{"class":"App\\Models\\Project","key":10751967,"s":"mdl"}],"classes":"","form":null,"active":false},"memo":{"id":"gNZmCCfM2nxDwf3CF6jT","name":"common.book-project","path":"listings\/aer-lingus","method":"GET","release":"a-a-a","children":[],"scripts":[],"assets":[],"errors":[],"locale":"en"},"checksum":"43ffc2644ce308635473f2ee15e69ca37be6fd8d2418ca36fb8634c71669e578"}" wire:effects="{"partials":[]}" wire:id="gNZmCCfM2nxDwf3CF6jT"> 772 <!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--></div>
773 <div wire:snapshot="{"data":{"project":[null,{"class":"App\\Models\\Project","key":10751967,"s":"mdl"}],"name":"","email":"","proof":"","classes":"","claimListingSettings":[{"listing_name":"listing","listing_name_plural":"","all_listings_heading":"All :listing","all_listings_description":"Browse through all :listing.","search_placeholder":"Locate an Aviation Service","search_button_text":"Locate","search_autocomplete_enabled":true,"listing_card_button_text":"View More","listing_button_text":"Visit Website","show_url_on_listing_card":false,"show_map_on_listing":true,"map_view_enabled":false,"map_geolocation_enabled":true,"show_desktop_filter_sidebar":false,"listing_call_button_text":"Call","listing_email_button_text":"Send Email","hide_related_projects":false,"similar_listings_title":"Similar :listing","similar_listings_in_category_title":"Similar :listing in category","listings_related_articles_title":"Articles related to :listing","articles_related_listings_title":"Listings related to :article","empty_search_text":"<h2>We could not find any listing matching your search criteria.<\/h2><p>Try adjusting your search or browse through our categories to discover exciting :listing.<\/p>","pagination_per_page":12,"default_sort_by":"name","default_sort_direction":"asc","default_aspect_ratio":"16:9","auto_resize_cover_image":true,"cover_image_max_height_class":"max-h-72","cover_banner_height_class":"h-28 md:h-36","show_featured_listing_badge":false,"featured_listing_badge_text":"featured","featured_listing_badge_color":"#49a773","featured_listing_badge_text_color":"#ffffff","featured_listing_badge_position":"top-2 right-2","featured_listing_badge_size":"badge-sm","featured_listing_custom_css_classes":"","expired_listings_behavior":"badge","expired_badge_text":"Expired","show_expiry_countdown":true,"expiry_countdown_days":7,"expiry_ends_today_text":"Ends today","expiry_one_day_left_text":"1 day left","expiry_days_left_text":":days days left","health_checks_enabled":true,"health_auto_unpublish_after":0,"contact_button_active":true,"contact_button_scope":"all","booking_button_active":false,"listing_primary_cta":"call","claim_listing_active":false,"claim_listing_self_manage":false,"claim_listing_button_text":"Claim Listing","claim_listing_button_color":"#3227ff","claim_listing_button_border_color":"#2721d6","claim_listing_button_text_color":"#ffffff","claim_listing_button_size":"btn-sm","claim_listing_button_classes":"","claim_listing_name_placeholder":"Your Name","claim_listing_email_placeholder":"Your Email","claim_listing_proof_placeholder":"Proof of Ownership","claim_listing_submit_button_text":"Submit Claim","claim_listing_cancel_button_text":"Cancel","claim_listing_success_message":"Your claim has been submitted successfully.","claim_listing_invite_notice":"You were invited to claim this listing \u2014 no proof of ownership needed.","claim_listing_invite_email_hint":"
773Your invitation is tied to this email address.","claim_listing_already_claimed_text":"This listing has already been claimed.","claim_listing_price_notice":"Claiming this listing costs :price. You'll be taken to a secure checkout after submitting.","claim_listing_hide_if_claimed":false,"claim_listing_charge_active":false,"claim_listing_plan_key":null,"claim_listing_plan_keys":[[],{"s":"arr"}],"claim_listing_plan_picker_label":"Choose a plan","show_listing_timestamp":true,"show_contact_info_on_listing":false,"show_contact_card_on_listing":true,"show_breadcrumbs":true,"show_category_in_breadcrumbs":true,"append_category_to_title":false,"listing_title_pattern":"","disable_show_listing_pages":false,"card_image_links_to_website":false,"card_image_website_label":"Visit website","show_votes":false,"show_reviews":false,"reviews_require_approval":true,"show_categories_on_listing_card":true,"show_default_image_on_listing_card":true,"categories_on_listing_page_limit":20,"show_more_categories_button_text":"Show More","show_less_categories_button_text":"Show Less"},{"s":"arr"}],"inviteEmail":null,"claimPrice":null,"claimPlanOptions":[[],{"s":"arr"}],"selectedClaimPlanKey":null,"showForm":false,"claimed":false,"justPaid":false},"memo":{"id":"qkEDmLUmWG26iJraQoCy","name":"common.claim-project","path":"listings\/aer-lingus","method":"GET","release":"a-a-a","children":[],"scripts":[],"assets":[],"errors":[],"locale":"en"},"checksum":"df331963ea2f271b8b2ad0c6b142520a329379538d12c09777d8be608387103e"}" wire:effects="{"partials":[]}" wire:id="qkEDmLUmWG26iJraQoCy" class="hidden "> 774 <button 775 wire:click="toggleForm" 776 class="btn cursor-pointer w-full rounded-lg font-semibold shadow-md hover:shadow-lg transition-all hover:scale-[1.02] active:scale-[0.98] flex items-center justify-center gap-2 btn-sm " 777 style="background-color: #3227ff !important; border: 2px solid #2721d6 !important; color: #ffffff !important;"> 778 <svg xmlns="http://www.w3.org/2000/svg" class="w-5 h-5" fill="none" viewBox="0 0 24 24" stroke="currentColor"> 779 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z" /> 780 </svg> 781 Claim Listing 782 </button> 783 784 785 <template x-teleport="body"> 786 <div> 787 <!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> 788 <!--[if BLOCK]><![endif]--><!--[if ENDBLOCK]><![endif]--> </div> 789 </template> 790</div> 791 </div> 792 793 794 </div> 795 </div> 796 </div> 797 </div> 798 </div> 799 800 801 802 803 804 <div class="mx-auto px-4 sm:px-6 lg:px-12 py-12"> 805 <h2 class="text-3xl font-bold text-base-content mb-8"> 806 <span data-te-label data-te-group="project" data-te-key="similar_in_category_label">Similar listings in category</span> 807 </h2> 808 <div class="grid grid-cols-1 gap-6 sm:grid-cols-2 lg:grid-cols-3"> 809 <article class="group relative bg-gradient-to-br from-base-100 to-base-200/50 rounded-2xl shadow-xl hover:shadow-2xl 810 border-2 border-base-300/50 hover:border-primary/30 overflow-hidden 811 transition-all duration-500 ease-out hover:-translate-y-2"> 812 813 814 815 816 817 818 <div class="relative overflow-hidden h-56 bg-gradient-to-br from-primary/5 to-secondary/5"> 819 <a href="https://team.aero/listings/aerolineas-argentinas/" class="block h-full"> 820 <img loading="lazy" 821 class="object-cover object-center w-full h-full listing-cover-image 822 group-hover:scale-110 transition-transform duration-700 ease-out" 823 src="https://www.loyaltyprogram.ita-airways.com/on/demandware.static/-/Sites-ita-master-catalog/default/dwbb8d4a6f/AerolÃneas-Argentinas/Aerolineas1080x1920.webp" 824 alt="" /> 825 <div class="absolute inset-0 bg-gradient-to-t from-base-100/80 via-base-100/20 to-transparent 826 opacity-0 group-hover:opacity-100 transition-opacity duration-500"></div> 827 </a> 828 </div> 829 830 831 <div class="relative p-6 space-y-5"> 832 833 <div class="flex items-start gap-4"> 834 <div class="flex-shrink-0 -mt-10 relative z-10"> 835 <div class="w-20 h-20 rounded-2xl ring-4 ring-base-100 shadow-xl 836 bg-base-100 overflow-hidden transform group-hover:scale-105 837 transition-transform duration-300"> 838 <img loading="lazy" 839 src="https://encrypted-tbn0.gstatic.
839com/images?q=tbn:ANd9GcS-0Sjk8anuHrU9ZfR0uophaQ5BOzJvEpjwJw&s" 840 alt="" 841 class="listing-logo w-full h-full object-cover" /> 842 </div> 843 </div> 844 845 <div class="flex-1 min-w-0 pt-0"> 846 <a href="https://team.aero/listings/aerolineas-argentinas/" wire:navigate> 847 <h2 class="text-2xl font-bold text-base-content listing-title 848 group-hover:text-primary transition-colors duration-300 849 line-clamp-2 leading-tight"> 850 AerolÃneas Argentinas </h2> 851 </a> 852 </div> 853 </div> 854 855 856 <p class="text-base text-base-content/70 listing-description line-clamp-3 leading-relaxed"> 857 AerolÃneas Argentinas is the national airline and flag carrier of Argentina, offering commercial passenger and cargo flights to domestic and international destinations across South America, the Caribbean, North America, and Europe from its hubs in Buenos Aires. 858 </p> 859 860 861 862 863 864 865 866 867 868 869 870 871 <div class="flex flex-col gap-3 pt-2"> 872 <div 873 class="custom-field-card flex items-center"> 874 <span class="custom-field-card-label text-sm font-semibold text-base-content me-1"> 875 Team Aero Member 876 </span> 877 878 879 <span class="custom-field-card-value checkbox-field"> 880 <svg class="w-5 h-5 text-green-600 dark:text-green-500" fill="none" stroke="currentColor"
881 viewBox="0 0 24 24"> 882 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 13l4 4L19 7"/> 883 </svg> 884 </span> 885 </div> 886 </div> 887 </div> 888 889 890 <div class="px-6 pb-6 space-y-4"> 891 <div class="flex flex-col sm:flex-row gap-3"> 892 <a href="https://team.aero/listings/aerolineas-argentinas/" 893 class="flex-1 flex items-center justify-center gap-2 px-5 py-3 rounded-xl 894 text-sm font-semibold text-base-content bg-base-200 border-2 border-base-300 895 hover:bg-base-100 hover:border-primary hover:text-primary 896 transform hover:scale-[1.02] active:scale-[0.98] 897 transition-all duration-200 shadow-sm hover:shadow-md view-more-button"> 898 <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"> 899 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" 900 d="M15 12a3 3 0 11-6 0 3 3 0 016 0z"></path> 901 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" 902 d="M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z"></path> 903 </svg> 904 View More 905 </a> 906 907 </div> 908 909 910 </div> 911 912 913 914 915 <div class="absolute inset-0 rounded-2xl ring-2 ring-primary/0 group-hover:ring-primary/20 916 transition-all duration-500 pointer-events-none"></div> 917</article> 918 <article class="group relative bg-gradient-to-br from-base-100 to-base-200/50 rounded-2xl shadow-xl hover:shadow-2xl 919 border-2 border-base-300/50 hover:border-primary/30 overflow-hidden 920 transition-all duration-500 ease-out hover:-translate-y-2"> 921 922 923 924 925 926 927 <div class="relative overflow-hidden h-56 bg-gradient-to-br from-primary/5 to-secondary/5"> 928 <a href="https://team.aero/listings/fedex/" class="block h-full"> 929 <img loading="lazy" 930 class="object-cover object-center w-full h-full listing-cover-image 931 group-hover:scale-110 transition-transform duration-700 ease-out" 932 src="https://fedex-dims.brightspotgocdn.com/dims4/default/1050dc8/2147483647/strip/true/crop/8425x4743+0+436/resize/1000x563!/quality/90/?url=https%3A%2F%2Ffedex-static.brightspotgocdn.com%2F1e%2Fc5%2F331e8434c09367a2283f25202e9c%2F2019-fedex-777-s6a1250.jpg" 933 alt="" /> 934 <div class="absolute inset-0 bg-gradient-to-t from-base-100/80 via-base-100/20 to-transparent 935 opacity-0 group-hover:opacity-100 transition-opacity duration-500"></div> 936 </a> 937 </div> 938 939 940 <div class="relative p-6 space-y-5"> 941 942 <div class="flex items-start gap-4"> 943 <div class="flex-shrink-0 -mt-10 relative z-10"> 944 <div class="w-20 h-20 rounded-2xl ring-4 ring-base-100 shadow-xl 945 bg-base-100 overflow-hidden transform group-hover:scale-105 946 transition-transform duration-300"> 947 <img loading="lazy" 948 src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQs82FBeJpjCGKEZ1Wrqz08UwYyx8fyNJhfBw&s" 949 alt="" 950 class="listing-logo w-full h-full object-cover" /> 951 </div> 952 </div> 953 954 <div class="flex-1 min-w-0 pt-0"> 955 <a href="https://team.aero/listings/fedex/" wire:navigate> 956 <h2 class="text-2xl font-bold text-base-content listing-title 957 group-hover:text-primary transition-colors duration-300 958 line-clamp-2 leading-tight"> 959 FedEx </h2> 960 </a> 961 </div> 962 </div> 963 964 965 <p class="text-base text-base-content/70 listing-description line-clamp-3 leading-relaxed"> 966 FedEx is a global logistics and cargo operator whose aviation arm, FedEx Express, operates the worldâs largest all-cargo airline, providing time-sensitive air freight and charter cargo services across more than 220 countries. 967 </p> 968 969 970 971 972 973 974 975 976 977 978 979 980 <div class="flex flex-col gap-3 pt-2"> 981 <div 982 class="custom-field-card flex items-center">
983 <span class="custom-field-card-label text-sm font-semibold text-base-content me-1"> 984 Team Aero Member 985 </span> 986 987 988 <span class="custom-field-card-value checkbox-field"> 989 <svg class="w-5 h-5 text-green-600 dark:text-green-500" fill="none" stroke="currentColor" 990 viewBox="0 0 24 24"> 991 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 13l4 4L19 7"/> 992 </svg> 993 </span> 994 </div> 995 </div> 996 </div> 997 998 999 <div class="px-6 pb-6 space-y-4"> 1000 <div class="flex flex-col sm:flex-row gap-3"> 1001 <a href="https://team.aero/listings/fedex/" 1002 class="flex-1 flex items-center justify-center gap-2 px-5 py-3 rounded-xl 1003 text-sm font-semibold text-base-content bg-base-200 border-2 border-base-300 1004 hover:bg-base-100 hover:border-primary hover:text-primary 1005 transform hover:scale-[1.02] active:scale-[0.98] 1006 transition-all duration-200 shadow-sm hover:shadow-md view-more-button"> 1007 <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"> 1008 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" 1009 d="M15 12a3 3 0 11-6 0 3 3 0 016 0z"></path> 1010 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" 1011 d="M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z"></path> 1012 </svg> 1013 View More 1014 </a> 1015 1016 </div> 1017 1018 1019 </div> 1020 1021 1022 1023 1024 <div class="absolute inset-0 rounded-2xl ring-2 ring-primary/0 group-hover:ring-primary/20 1025 transition-all duration-500 pointer-events-none"></div> 1026</article> 1027 <article class="group relative bg-gradient-to-br from-base-100 to-base-200/50 rounded-2xl shadow-xl hover:shadow-2xl 1028 border-2 border-base-300/50 hover:border-primary/30 overflow-hidden 1029 transition-all duration-500 ease-out hover:-translate-y-2"> 1030 1031 1032 1033 1034 1035 1036 <div class="relative overflow-hidden h-56 bg-gradient-to-br from-primary/5 to-secondary/5"> 1037 <a href="https://team.aero/listings/nas-air-company/" class="block h-full"> 1038 <img loading="lazy" 1039 class="object-cover object-center w-full h-full listing-cover-image 1040 group-hover:scale-110 transition-transform duration-700 ease-out" 1041 src="https://mediaassets.airbus.com/pm_38_622_622899-e7bdgtis0j.jpg" 1042 alt="" /> 1043 <div class="absolute inset-0 bg-gradient-to-t from-base-100/80 via-base-100/20 to-transparent 1044 opacity-0 group-hover:opacity-100 transition-opacity duration-500"></div> 1045 </a> 1046 </div> 1047 1048 1049 <div class="relative p-6 space-y-5"> 1050 1051 <div class="flex items-start gap-4"> 1052 <div class="flex-shrink-0 -mt-10 relative z-10"> 1053 <div class="w-20 h-20 rounded-2xl ring-4 ring-base-100 shadow-xl 1054 bg-base-100 overflow-hidden transform group-hover:scale-105 1055 transition-transform duration-300"> 1056 <img loading="lazy" 1057 src="https://iconape.com/wp-content/files/qq/20811/png/Flynas-01.png" 1058 alt="" 1059 class="listing-logo w-full h-full object-cover" /> 1060 </div> 1061 </div> 1062 1063 <div class="flex-1 min-w-0 pt-0"> 1064 <a href="https://team.aero/listings/nas-air-company/" wire:navigate> 1065 <h2 class="text-2xl font-bold text-base-content listing-title 1066 group-hover:text-primary transition-colors duration-300 1067 line-clamp-2 leading-tight"> 1068 Nas Air Company </h2> 1069 </a> 1070 </div> 1071 </div> 1072 1073 1074 <p class="text-base text-base-content/70 listing-description line-clamp-3 leading-relaxed"> 1075 flynas is a Saudi low-cost airline operating domestic and international passenger flights across the Middle East, Europe, Asia and Africa, providing scheduled services, charter flights and ancillary travel products such as hotels and packages. 1076 </p> 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 <div class="flex flex-col gap-3 pt-2"> 1090 <div 1091 class="custom-field-card flex items-center">
1092 <span class="custom-field-card-label text-sm font-semibold text-base-content me-1"> 1093 Team Aero Member 1094 </span> 1095 1096 1097 <span class="custom-field-card-value checkbox-field"> 1098 <svg class="w-5 h-5 text-green-600 dark:text-green-500" fill="none" stroke="currentColor" 1099 viewBox="0 0 24 24"> 1100 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 13l4 4L19 7"/> 1101 </svg> 1102 </span> 1103 </div> 1104 </div> 1105 </div> 1106 1107 1108 <div class="px-6 pb-6 space-y-4"> 1109 <div class="flex flex-col sm:flex-row gap-3"> 1110 <a href="https://team.aero/listings/nas-air-company/" 1111 class="flex-1 flex items-center justify-center gap-2 px-5 py-3 rounded-xl 1112 text-sm font-semibold text-base-content bg-base-200 border-2 border-base-300 1113 hover:bg-base-100 hover:border-primary hover:text-primary 1114 transform hover:scale-[1.02] active:scale-[0.98] 1115 transition-all duration-200 shadow-sm hover:shadow-md view-more-button"> 1116 <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"> 1117 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" 1118 d="M15 12a3 3 0 11-6 0 3 3 0 016 0z"></path> 1119 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" 1120 d="M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z"></path> 1121 </svg> 1122 View More 1123 </a> 1124 1125 </div> 1126 1127 1128 </div> 1129 1130 1131 1132 1133 <div class="absolute inset-0 rounded-2xl ring-2 ring-primary/0 group-hover:ring-primary/20 1134 transition-all duration-500 pointer-events-none"></div> 1135</article> 1136 </div> 1137 </div> 1138 </div> 1139 </div> 1140 </div> 1141 1142 <!-- Sidebar --> 1143 <div class="drawer-side z-10 top-24 start-4 pt-4"> 1144 <label for="my-drawer-2" aria-label="close sidebar" class="drawer-overlay"></label> 1145 <div class="bg-base-100/95 backdrop-blur-sm"> 1146 <div class="w-80 bg-gradient-to-br from-base-100 to-base-200/50" 1147 x-data="{ 1148 searchQuery: '', 1149 isSearching: false, 1150 searchResults: null, 1151 debounceTimer: null, 1152 async search() { 1153 clearTimeout(this.debounceTimer); 1154 this.debounceTimer = setTimeout(async () => { 1155 if (this.searchQuery.length === 0) { 1156 this.searchResults = null; 1157 this.isSearching = false; 1158 return; 1159 } 1160 this.isSearching = true; 1161 try { 1162 const response = await fetch('https://team.aero/api/categories/search?q=' + encodeURIComponent(this.searchQuery) + '&active_category_id=&expanded_category_ids=[]&variant=default-new'); 1163 this.searchResults = await response.text(); 1164 } catch (e) { 1165 console.error('Search failed:', e); 1166 } 1167 this.isSearching = false; 1168 }, 300); 1169 }, 1170 clearSearch() { 1171 this.searchQuery = ''; 1172 this.searchResults = null; 1173 this.isSearching = false; 1174 } 1175 }"> 1176 <div class="lg:sticky lg:top-20"> 1177 <div class="rounded-2xl border-2 border-base-300/50 bg-base-100"> 1178 <div class="p-6"> 1179 1180 <div class="mb-6"> 1181 <h3 class="text-2xl font-bold text-base-content mb-2 flex items-center gap-2"> 1182 Categories 1183 </h3> 1184 </div> 1185 1186 1187 <div class="w-full mb-6"> 1188 <div class="relative"> 1189 <div class="absolute inset-y-0 start-0 flex items-center ps-4 pointer-events-none"> 1190 <svg class="w-5 h-5 text-base-content/40" fill="none" stroke="currentColor"
1191 viewBox="0 0 24 24"> 1192 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" 1193 d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"></path> 1194 </svg> 1195 </div> 1196 <input type="text" 1197 x-model="searchQuery" 1198 @input="search()" 1199 class="w-full ps-11 pe-10 py-3 rounded-xl border-2 border-base-300 bg-base-100 1200 focus:border-primary focus:ring-4 focus:ring-primary/20 focus:outline-none 1201 transition-all duration-200 text-sm" 1202 placeholder="Search for a category"/> 1203 <button x-show="searchQuery.length > 0" 1204 @click="clearSearch()" 1205 class="absolute inset-y-0 end-0 flex items-center pe-4 text-base-content/50 hover:text-base-content"> 1206 <svg xmlns="http://www.w3.org/2000/svg" class="w-5 h-5" fill="none" viewBox="0 0 24 24" 1207 stroke="currentColor"> 1208 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" 1209 d="M6 18L18 6M6 6l12 12"/> 1210 </svg> 1211 </button> 1212 </div> 1213 </div> 1214 1215 1216 <ul class="categories-sidebar flex flex-col space-y-1 overflow-y-auto 1217 h-[calc(100vh-340px)] lg:h-[calc(100vh-340px)] 1218 pe-2 -me-2 scrollbar-thin scrollbar-thumb-base-300 scrollbar-track-transparent" 1219 :class="{ 'searching': searchResults }"> 1220 1221 <li class="w-full default-category"> 1222 <a class="group flex items-center gap-3 w-full px-4 py-3 rounded-xl text-sm font-medium 1223 transition-all duration-200 1224 text-base-content/70 hover:bg-base-200 hover:text-primary" 1225 href="https://team.aero/"> 1226 <svg 1227 class="w-5 h-5 text-base-content/40 group-hover:text-primary" 1228 fill="none" stroke="currentColor" viewBox="0 0 24 24"> 1229 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" 1230 d="M4 6a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2H6a2 2 0 01-2-2V6zM14 6a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2h-2a2 2 0 01-2-2V6zM4 16a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2H6a2 2 0 01-2-2v-2zM14 16a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2h-2a2 2 0 01-2-2v-2z"></path> 1231 </svg> 1232 <span class="flex-1">All</span> 1233 </a> 1234 </li> 1235 1236 1237 <li class="w-full default-category" id="category-372493" 1238 x-data="{ 1239 open: false, 1240 loaded: false, 1241 loading: false, 1242 hasChildren: false, 1243 async loadChildren() { 1244 if (this.loaded || this.loading || !this.hasChildren) return; 1245 this.loading = true; 1246 try { 1247 const response = await fetch('https://team.aero/api/categories/372493/children?level=0&active_category_id=&expanded_category_ids=[]&variant=default-new'); 1248 const html = await response.text(); 1249 this.$refs.childrenContainer.innerHTML = html; 1250 this.loaded = true; 1251 } catch (e) { 1252 console.error('Failed to load children:', e); 1253 } 1254 this.loading = false; 1255 }, 1256 toggle() { 1257 this.open = !this.open; 1258 if (this.open && !this.loaded) { 1259 this.loadChildren(); 1260 } 1261 } 1262 }" 1263 x-init="if (open && hasChildren) { loadChildren(); }"> 1264 1265 <a href="https://team.aero/acmi-charter/" 1266 class="group flex items-center gap-2.5 w-full px-4 py-3 rounded-xl text-sm font-medium 1267 transition-all duration-200 1268 text-base-content/70 hover:bg-base-200 hover:text-primary hover:ps-5"> 1269 <img src="https://cdn.directify.app/directory/category/custom_icons/01KFN5XP5MV59FBYGH17J9MG02.png" 1270 alt="ACMI / Charter" 1271 class="w-5 h-5 flex-shrink-0 sidebar-category-icon 1272 opacity-60 group-hover:opacity-100">
1273 <span class="truncate flex-1">ACMI / Charter</span> 1274 </a> 1275 </li> 1276 <li class="w-full default-category" id="category-372492" 1277 x-data="{ 1278 open: false, 1279 loaded: false, 1280 loading: false, 1281 hasChildren: false, 1282 async loadChildren() { 1283 if (this.loaded || this.loading || !this.hasChildren) return; 1284 this.loading = true; 1285 try { 1286 const response = await fetch('https://team.aero/api/categories/372492/children?level=0&active_category_id=&expanded_category_ids=[]&variant=default-new'); 1287 const html = await response.text(); 1288 this.$refs.childrenContainer.innerHTML = html; 1289 this.loaded = true; 1290 } catch (e) { 1291 console.error('Failed to load children:', e); 1292 } 1293 this.loading = false; 1294 }, 1295 toggle() { 1296 this.open = !this.open; 1297 if (this.open && !this.loaded) { 1298 this.loadChildren(); 1299 } 1300 } 1301 }" 1302 x-init="if (open && hasChildren) { loadChildren(); }"> 1303 1304 <a href="https://team.aero/aircraft-leasing/" 1305 class="group flex items-center gap-2.5 w-full px-4 py-3 rounded-xl text-sm font-medium 1306 transition-all duration-200 1307 text-base-content/70 hover:bg-base-200 hover:text-primary hover:ps-5"> 1308 <img src="https://cdn.directify.app/directory/category/custom_icons/01KFP4N0012QT6MDB0ZHPS0GN1.png" 1309 alt="Aircraft Leasing" 1310 class="w-5 h-5 flex-shrink-0 sidebar-category-icon 1311 opacity-60 group-hover:opacity-100"> 1312 <span class="truncate flex-1">Aircraft Leasing</span> 1313 </a> 1314 </li> 1315 <li class="w-full default-category" id="category-372491" 1316 x-data="{ 1317 open: false, 1318 loaded: false, 1319 loading: false, 1320 hasChildren: false, 1321 async loadChildren() { 1322 if (this.loaded || this.loading || !this.hasChildren) return; 1323 this.loading = true; 1324 try { 1325 const response = await fetch('https://team.aero/api/categories/372491/children?level=0&active_category_id=&expanded_category_ids=[]&variant=default-new'); 1326 const html = await response.text(); 1327 this.$refs.childrenContainer.innerHTML = html; 1328 this.loaded = true; 1329 } catch (e) { 1330 console.error('Failed to load children:', e); 1331 } 1332 this.loading = false; 1333 }, 1334 toggle() { 1335 this.open = !this.open; 1336 if (this.open && !this.loaded) { 1337 this.loadChildren(); 1338 } 1339 } 1340 }" 1341 x-init="if (open && hasChildren) { loadChildren(); }"> 1342 1343 <a href="https://team.aero/airline/" 1344 class="group flex items-center gap-2.5 w-full px-4 py-3 rounded-xl text-sm font-medium 1345 transition-all duration-200 1346 text-base-content/70 hover:bg-base-200 hover:text-primary hover:ps-5"> 1347 <img src="https://cdn.directify.app/directory/category/custom_icons/01KFP4WWB26TTA66PZVWT0FMSA.png" 1348 alt="Airline" 1349 class="w-5 h-5 flex-shrink-0 sidebar-category-icon 1350 opacity-60 group-hover:opacity-100"> 1351 <span class="truncate flex-1">Airline</span> 1352 </a> 1353 </li> 1354 <li class="w-full default-category" id="category-372494" 1355 x-data="{ 1356 open: false, 1357 loaded: false, 1358 loading: false, 1359 hasChildren: false, 1360 async loadChildren() { 1361 if (this.loaded || this.loading || !this.hasChildren) return; 1362 this.loading = true; 1363 try { 1364 const response = await fetch('https://team.aero/api/categories/372494/children?level=0&active_category_id=&expanded_category_ids=[]&variant=default-new'); 1365 const html = await response.text(); 1366 this.$refs.childrenContainer.innerHTML = html; 1367 this.loaded = true; 1368 } catch (e) { 1369 console.error('Failed to load children:', e); 1370 } 1371 this.loading = false;
1372 }, 1373 toggle() { 1374 this.open = !this.open; 1375 if (this.open && !this.loaded) { 1376 this.loadChildren(); 1377 } 1378 } 1379 }" 1380 x-init="if (open && hasChildren) { loadChildren(); }"> 1381 1382 <a href="https://team.aero/mro/" 1383 class="group flex items-center gap-2.5 w-full px-4 py-3 rounded-xl text-sm font-medium 1384 transition-all duration-200 1385 text-base-content/70 hover:bg-base-200 hover:text-primary hover:ps-5"> 1386 <img src="https://cdn.directify.app/directory/category/custom_icons/01KFP4ST861TDZBHKA1SNP9DHH.png" 1387 alt="MRO" 1388 class="w-5 h-5 flex-shrink-0 sidebar-category-icon 1389 opacity-60 group-hover:opacity-100"> 1390 <span class="truncate flex-1">MRO</span> 1391 </a> 1392 </li> 1393 <li class="w-full default-category" id="category-372490" 1394 x-data="{ 1395 open: false, 1396 loaded: false, 1397 loading: false, 1398 hasChildren: false, 1399 async loadChildren() { 1400 if (this.loaded || this.loading || !this.hasChildren) return; 1401 this.loading = true; 1402 try { 1403 const response = await fetch('https://team.aero/api/categories/372490/children?level=0&active_category_id=&expanded_category_ids=[]&variant=default-new'); 1404 const html = await response.text(); 1405 this.$refs.childrenContainer.innerHTML = html; 1406 this.loaded = true; 1407 } catch (e) { 1408 console.error('Failed to load children:', e); 1409 } 1410 this.loading = false; 1411 }, 1412 toggle() { 1413 this.open = !this.open; 1414 if (this.open && !this.loaded) { 1415 this.loadChildren(); 1416 } 1417 } 1418 }" 1419 x-init="if (open && hasChildren) { loadChildren(); }"> 1420 1421 <a href="https://team.aero/parts-components/" 1422 class="group flex items-center gap-2.5 w-full px-4 py-3 rounded-xl text-sm font-medium 1423 transition-all duration-200 1424 text-base-content/70 hover:bg-base-200 hover:text-primary hover:ps-5"> 1425 <img src="https://cdn.directify.app/directory/category/custom_icons/01KFP4F9MMY07VF3T87YC1BW9Y.png" 1426 alt="Parts & Components" 1427 class="w-5 h-5 flex-shrink-0 sidebar-category-icon 1428 opacity-60 group-hover:opacity-100"> 1429 <span class="truncate flex-1">Parts & Components</span> 1430 </a> 1431 </li> 1432 1433 1434 <template x-if="searchResults"> 1435 <li class="contents" x-html="searchResults"></li> 1436 </template> 1437 </ul> 1438 <style> 1439 .categories-sidebar.searching .default-category { 1440 display: none; 1441 } 1442 </style> 1443 1444 1445 </div> 1446 </div> 1447 </div> 1448</div> 1449 1450 </div> 1451 </div> 1452 1453 1454</main> 1455 1456<!-- Footer --> 1457<footer class="footer-container bg-gradient-to-br from-base-200 to-base-300/30 text-base-content border-t border-base-300/50"> 1458 <div class="container mx-auto px-12 py-16"> 1459 <!-- Company Info (Always Present) + Custom Sections Grid --> 1460 1461 <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-1 gap-12 mb-12"> 1462 <!-- Company Info (Always Present) --> 1463 <div class="space-y-6"> 1464 <div class="flex items-center gap-3"> 1465 <img src="https://cdn.directify.app/directories/logos/01KFZYQYADTQMTJ8M5PB0J55YC.png" alt="Team.aero" class="h-10 w-auto"> 1466 </div> 1467 <p class="text-base-content/70 leading-relaxed max-w-md">The Commercial Jet Aircraft Trading Community Directory 1468</p> 1469 1470 <!-- Social Links --> 1471 <div class="flex gap-2"> 1472 <a href="" target="_blank" class="btn btn-circle btn-ghost btn-sm hover:bg-primary/10 hover:text-primary transition-all duration-300"> 1473 </a> 1474 <a href="" target="_blank" class="btn btn-circle btn-ghost btn-sm hover:bg-primary/10 hover:text-primary transition-all duration-300"> 1475 </a> 1476 </div> 1477 </div> 1478 1479 <!-- Custom Footer Sections (Only if provided by user) --> 1480 1481 <!-- Custom Pages Section (Sidebar & Footer placement) --> 1482 </div> 1483 1484 <!-- Bottom Section --> 1485 <div class="border-t border-base-300/50 pt-8"> 1486 <div class="flex flex-col md:flex-row justify-between items-center gap-6"> 1487 <div class="flex flex-col md:flex-row items-center gap-6"> 1488 <div class="text-sm text-base-content/60 footer-copyright">
1489 <span data-te-label data-te-group="directory" data-te-key="footer_copyright_text">© 2026 Team.aero. All rights reserved.</span> 1490 </div> 1491 1492 1493 1494 <!-- Social Links in Copyright Section --> 1495 </div> 1496 1497 <!-- Custom Pages Links (Bottom placement when grid is full) --> 1498 </div> 1499 </div> 1500 </div> 1501</footer> 1502 1503 1504 1505
1506<script src="/livewire/livewire.min.js?id=e949cd11" data-csrf="JbRwqATW1Vb2SskuUAqTnJBmY2FPliClbpRbYHqM" data-update-uri="/livewire/update" data-navigate-once="true"></script>
1506 1507 1508<!-- Used for Auto Schema -->
1509<script type="application/ld+json">{"@context":"https://schema.org","@type":"LocalBusiness","name":"Aer Lingus","description":"Aer Lingus is the flag carrier airline of Ireland operating international passenger flights across Europe, North America and North Africa from its Dublin and Shannon hubs, offering scheduled services, holiday packages and cargo transport.","image":"https://images.aerlingus.com/resrc-origin/s=w352m,u/c=w352,h127,xof50,yof50/o=75/s=w380,pd2.6/https:/https://www.aerlingus.com/media/images/content/a321neo-economy.jpg","url":"www.aerlingus.com"}</script>
1509 1510 1511 1512 1513
1513<script type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Team.aero","item":"https://team.aero/"},{"@type":"ListItem","position":2,"name":"Airline","item":"https://team.aero/airline/"},{"@type":"ListItem","position":3,"name":"Aer Lingus","item":"https://team.aero/listings/aer-lingus/"}]}</script>
1513 1514 1515<!-- Used for Per Entity Schema (From SEO Table) --> 1516 1517 1518<!-- Cookie Banner --> 1519<div id="cookie-banner" 1520 class="fixed bottom-4 end-4 z-50 max-w-sm w-80 p-4 rounded-lg shadow-lg border transform transition-all duration-300 ease-in-out translate-x-full opacity-0" 1521 style="background-color: #0e0c26; color: #374151; border-color: rgba(0,0,0,0.1);"> 1522 <div class="space-y-3"> 1523 <div class="text-sm leading-relaxed"> 1524 This website uses cookies to ensure you get the best experience on our website. 1525 </div> 1526 <div class="flex justify-end"> 1527 <button id="cookie-accept-btn" 1528 class="px-3 py-1.5 rounded text-xs font-medium transition-colors duration-200 hover:opacity-90" 1529 style="background-color: #b33b32; color: #ffffff;"> 1530 Ok 1531 </button> 1532 </div> 1533 </div> 1534 </div> 1535 1536
1536<script> 1537 document.addEventListener('DOMContentLoaded', function() { 1538 const cookieBanner = document.getElementById('cookie-banner'); 1539 const acceptBtn = document.getElementById('cookie-accept-btn'); 1540 const cookieName = 'directify_cookies_accepted_3176'; 1541 1542 // Check if cookie banner was already accepted 1543 function getCookie(name) { 1544 const value = `; ${document.cookie}`; 1545 const parts = value.split(`; ${name}=`); 1546 if (parts.length === 2) return parts.pop().split(';').shift(); 1547 return null; 1548 } 1549 1550 function setCookie(name, value, days) { 1551 const date = new Date(); 1552 date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); 1553 const expires = `expires=${date.toUTCString()}`; 1554 document.cookie = `${name}=${value};${expires};path=/`; 1555 } 1556 1557 function showCookieBanner() { 1558 cookieBanner.classList.remove('translate-x-full', 'opacity-0'); 1559 } 1560 1561 function hideCookieBanner() { 1562 cookieBanner.classList.add('translate-x-full', 'opacity-0'); 1563 } 1564 1565 // Show banner if not accepted 1566 if (!getCookie(cookieName)) { 1567 // Small delay to ensure page is loaded 1568 setTimeout(showCookieBanner, 500); 1569 } 1570 1571 // Handle accept button click 1572 acceptBtn.addEventListener('click', function() { 1573 setCookie(cookieName, 'true', 365); // Cookie expires in 1 year 1574 hideCookieBanner(); 1575 }); 1576 }); 1577 </script>
1577 1578 <!-- PWA Service Worker --> 1579 <!-- PWA Service Worker Registration -->
1580<script> 1581 if ('serviceWorker' in navigator) { 1582 window.addEventListener('load', function() { 1583 navigator.serviceWorker.register('/sw.js') 1584 .then(function(registration) { 1585 console.log('ServiceWorker registration successful'); 1586 1587 // Check for updates 1588 registration.addEventListener('updatefound', () => { 1589 const newWorker = registration.installing; 1590 1591 newWorker.addEventListener('statechange', () => { 1592 if (newWorker.state === 'installed' && navigator.serviceWorker.controller) { 1593 // Show non-intrusive toast banner 1594 const isDark = document.documentElement.getAttribute('data-theme')?.includes('dark') 1595 || document.documentElement.classList.contains('dark') 1596 || window.matchMedia('(prefers-color-scheme: dark)').matches; 1597 const bg = isDark ? '#f9fafb' : '#1f2937'; 1598 const text = isDark ? '#1f2937' : '#fff'; 1599 const dismiss = isDark ? '#6b7280' : '#9ca3af'; 1600 const toast = document.createElement('div'); 1601 toast.id = 'pwa-update-toast'; 1602 toast.innerHTML = ` 1603 <div style="position:fixed;bottom:1rem;right:1rem;z-index:9999;display:flex;align-items:center;gap:0.75rem;background:${bg};color:${text};padding:0.875rem 1.25rem;border-radius:0.75rem;box-shadow:0 10px 25px rgba(0,0,0,0.2);font-size:0.875rem;font-family:system-ui,sans-serif;max-width:24rem;animation:slideUp 0.3s ease-out"> 1604 <span style="flex:1">A new version is available.</span> 1605 <button onclick="document.querySelector('#pwa-update-toast').remove()" style="background:none;border:none;color:${dismiss};cursor:pointer;padding:0.25rem;font-size:1.1rem;line-height:1">×</button> 1606 <button onclick="navigator.serviceWorker.controller.postMessage({type:'SKIP_WAITING'});window.location.reload()" style="background:#3b82f6;color:#fff;border:none;padding:0.375rem 0.875rem;border-radius:0.5rem;cursor:pointer;font-weight:500;font-size:0.8125rem;white-space:nowrap">Update</button> 1607 </div> 1608 <style>@keyframes slideUp{from{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}</style> 1609 `; 1610 document.body.appendChild(toast); 1611 } 1612 }); 1613 }); 1614 }) 1615 .catch(function(error) { 1616 console.log('ServiceWorker registration failed: ', error); 1617 }); 1618 1619 // Handle controller change (when new SW takes over) 1620 let refreshing; 1621 navigator.serviceWorker.addEventListener('controllerchange', function() { 1622 if (refreshing) return; 1623 refreshing = true; 1624 window.location.reload(); 1625 }); 1626 }); 1627 } 1628 1629 // Handle install prompt for PWA 1630 let deferredPrompt; 1631 1632 window.addEventListener('beforeinstallprompt', (e) => { 1633 // Prevent the mini-infobar from appearing on mobile 1634 e.preventDefault(); 1635 // Stash the event so it can be triggered later 1636 deferredPrompt = e; 1637 1638 // You can show your own install button here 1639 // For example: document.getElementById('install-button').style.display = 'block'; 1640 }); 1641 1642 window.addEventListener('appinstalled', () => { 1643 console.log('PWA was installed'); 1644 deferredPrompt = null; 1645 }); 1646</script>
1646 1647
1648<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"53763417bf8b4949a99211b576ce3247","r":1,"spa":2}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 1648
1648
1649<script>(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a444152b4c780c69',t:'MTc5MDk0ODA0Ng=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>
1649</body> 1650</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.