{"id":7488,"date":"2023-10-26T15:42:29","date_gmt":"2023-10-26T15:42:29","guid":{"rendered":"https:\/\/jornalmovimento.com.br\/?p=7488"},"modified":"2023-10-26T15:42:31","modified_gmt":"2023-10-26T15:42:31","slug":"tap-air-portugal","status":"publish","type":"post","link":"https:\/\/jornalmovimento.com.br\/en\/tap-air-portugal\/","title":{"rendered":"How to guarantee cheap tickets with TAP Air Portugal!"},"content":{"rendered":"<!--advertisement--><div class=\"mx-5 sm:mx-0 sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900 text-left\">\n<h2 id=\"h-a-tap-air-tem-o-stopover-que-permite-aproveitar-mais-de-um-destino-pagando-so-uma-passagem\">TAP Air has Stopover, which allows you to enjoy more than one destination by paying just one ticket!<\/h2>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>TAP Air Portugal is one of the oldest airlines in all of Europe. Headquartered in Lisbon, it connects the country and Europe with the rest of the world. <\/p>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>The company is highly praised for its high quality service, safety and comfort, and also for its network of destinations that connects three continents, Africa, America and Europe.\u00a0<\/p>\n<\/div><div class=\"wp-block-lazyblock-credit-card lazyblock-credit-card-2gp2S0\"><section class=\"credit-card mx-5 sm:mx-0 text-gray-600 body-font  my-10 border-gray-200 border-b border-l border-r sm:border-0\">\n  <div class=\"h-1 bg-gray-200 rounded overflow-hidden\">\n    <div class=\"w-24 h-full\"><\/div>\n  <\/div>\n  <div class=\"container px-5 sm:px-0 py-6 mx-auto\" data-anchor-target=\"lazyBlock\">\n    <div class=\"flex flex-wrap mx-auto\">\n      <a class=\"lg:w-2\/5 w-full lg:pl-6 mt-6 lg:mt-0\" href=\"https:\/\/www.flytap.com\/\" data-analytics-label=\"creditCardImage\" data-action=\"analytics#trackCTA\" >\n        <img decoding=\"async\" class=\"w-full h-64 object-cover object-center rounded\" loading=\"lazy\" alt=\"card\" style=\"height: 190px;\" src=\"https:\/\/jornalmovimento.com.br\/wp-content\/uploads\/2023\/10\/offer.jpg\">\n      <\/a>\n      <div class=\"lg:w-3\/5 w-full lg:pl-6 mt-6 lg:mt-0\">\n        <h2 class=\"text-sm title-font text-gray-500 tracking-widest uppercase\">\n          Airline        <\/h2>\n        <h1 class=\"text-gray-900 text-3xl title-font font-medium mb-1\">\n          TAP Air Portugal        <\/h1>\n        <div class=\"flex mb-4 justify-center sm:justify-start\">\n          \n                      <span class=\"inline-block py-1 px-2 rounded text-xs font-medium tracking-widest uppercase mr-2\">\n              Promotion            <\/span>\n                      <span class=\"inline-block py-1 px-2 rounded text-xs font-medium tracking-widest uppercase mr-2\">\n              Discount            <\/span>\n                    \n        <\/div>\n        <p class=\"leading-relaxed\">\n          Get the best flights and exclusive prices with the company!        <\/p>\n        <div class=\"flex mt-6 items-center pb-5 border-b-2 border-gray-100 mb-5\">\n          \n        <\/div>\n        <div class=\"flex\">\n          <a data-km2-rewarded=\"true\" style=\"font-size: 13px;\" class=\"hidden animate-fade-in flex m-auto sm:mr-0 sm:ml-auto\" rel=\"sponsored\" href=\"https:\/\/www.flytap.com\/\" data-analytics-label=\"creditCardButton\" data-action=\"analytics#trackCTA\"  >\n            <button class=\"uppercase flex m-auto sm:mr-0 sm:ml-auto border-0 py-2 px-4 focus:outline-none rounded  disabled:opacity-50\">\n              See promotions!            <\/button>\n          <\/a>\n          <a data-km2-rewarded=\"false\" style=\"font-size: 15px;\" class=\"flex m-auto sm:mr-0 sm:ml-auto\" rel=\"sponsored\" href=\"https:\/\/www.flytap.com\/\" data-analytics-label=\"creditCardButton\" data-action=\"analytics#trackCTA\"  >\n            <button id=\"offer-first\" class=\"flex m-auto sm:mr-0 sm:ml-auto border-0 py-2 px-6 focus:outline-none rounded  disabled:opacity-50\">\n              See promotions!            <\/button>\n          <\/a>\n        <\/div>\n        <p class=\"text-xs text-gray-500 mt-3 text-center sm:text-right\">\n          You will be redirected to another website        <\/p>\n      <\/div>\n    <\/div>\n  <\/div>\n\n    <script type=\"module\"> function waitFor(conditionFunction) { const poll = resolve => { if(conditionFunction()) resolve(); else setTimeout(_ => poll(resolve), 400); }; return new Promise(poll); } import { Application, Controller } from \"\/wp-content\/themes\/twentytwentyone\/assets\/js\/stimulus.min.js\"; let Stimulus = Application.start(); Stimulus.register(\"anchor\", class extends Controller { static get targets() { return [ \"lazyBlock\", \"lazyBlockAnchor\" ]; } initialize() { this.active = false; this.passed = false; this.closed = false; this.anchorViews = 0; this.boundOnShowAnchor = this.onShowAnchor.bind(this); window.anchorReady = window.anchorReady || false; waitFor(_ => (window.scrollY > this.getHeightBlock() && !this.active)) .then(_ => { !window.anchorReady? this.visible() : ''; window.anchorReady = true; }); if (document.getElementById('landing')) { setTimeout(() => { !window.anchorReady ? this.visible() : ''; window.anchorReady = true; }, 1 * 30000); }; } connect() { this.onShowAnchor(); document.addEventListener(\"scroll\", this.boundOnShowAnchor); } disconnect() { document.removeEventListener(\"scroll\", this.boundOnShowAnchor); } visible() { if (document.getElementById('av-offerwall__wrapper')) { setTimeout(() => this.visible(), 20000); return; } if (document.getElementById('av-fixed__bottomWrapper') && document.getElementById('av-fixed__bottomWrapper').style.display !== 'none' && document.getElementById('av-fixed__bottomWrapper').getBoundingClientRect().height > 100) { setTimeout(() => this.visible(), 1000); return; } if (document.getElementById('av-fixed__bottomWrapper') && document.getElementById('av-fixed__bottomWrapper').style.display !== 'none' && document.getElementById('av-fixed__bottomWrapper').getBoundingClientRect().height > 10) { this.getAnchorElement().style.marginBottom = '60px'; } if (document.querySelector('[data-anchor-shown=\"true\"]') && document.querySelector('[data-anchor-shown=\"true\"]').style.bottom === '0px') { setTimeout(() => this.visible(), 1000); return; } if (!window.km2AnchorReady) { this.active = true; \/*this.getAnchorElement().style.animation = \"none\"; this.getAnchorElement().classList.remove('animate-show-down');*\/ \/*this.getAnchorElement().classList.add('animate-show-up');*\/ \/*setTimeout(() => {*\/ \/*this.getAnchorElement().style.animation = \"\";*\/ this.getAnchorElement().classList.add('animate-show-up'); this.getAnchorElement().classList.remove('hidden'); this.setAnchorViews(this.anchorViews+1); setTimeout(() => this.closeAnchor(), 20000); waitFor(_ => (document.getElementById('av-fixed__bottomWrapper') && document.getElementById('av-fixed__bottomWrapper').style.display !== 'none' && document.getElementById('av-fixed__bottomWrapper').getBoundingClientRect().height > 10 && this.getAnchorElement().style.marginBottom !== '60px')) .then(_ => { this.closeAnchor(); }); this.active = false; \/*}, 10);*\/ } } invisible() { this.active = true; this.getAnchorElement().style.animation = \"none\"; this.getAnchorElement().classList.remove('animate-show-up'); this.getAnchorElement().classList.add('animate-show-down'); setTimeout(() => { this.getAnchorElement().style.animation = \"\"; setTimeout(() => { this.getAnchorElement().classList.add('hidden'); this.active = false; }, 800); }, 10); } onShowAnchor() { let anchorReady = false;  \/*if (!this.active && !anchorReady) { if (this.getAnchorViews() <= 3) { if (window.scrollY > this.getHeightBlock()) { if (!this.passed && !this.closed) { this.visible(); this.passed = true; } } else { if (this.passed) { this.invisible(); this.passed = false; } } } else { if (!this.getAnchorElement().classList.contains('close')) { this.getAnchorElement().classList.add('close'); if (window.scrollY < this.getHeightBlock()) { this.invisible(); } } } }*\/ } closeAnchor() { if (this.closed) return; this.invisible(); this.getAnchorElement().classList.add('close'); this.closed = true; } getAnchorElement() { return this.lazyBlockAnchorTargets[0]; } getAnchorViews() { this.anchorViews = parseInt(sessionStorage.getItem(\"anchorViews\")) >= 1 ? parseInt(sessionStorage.getItem(\"anchorViews\")) : 0; return this.anchorViews; } setAnchorViews(views) { sessionStorage.setItem(\"anchorViews\", views); } getHeightBlock() { return this.lazyBlockTarget.offsetTop + this.lazyBlockTarget.offsetHeight - 110; } }) <\/script>  <div data-anchor-target=\"lazyBlockAnchor\" class=\"fixed w-full sm:w-96 px-3 py-2 bottom-0 left-0 hidden\" style=\"z-index: 999999;\" name=\"lazyBlockAnchor\">\n    <div class=\"grid justify-items-stretch\">        \n              <div class=\"relative justify-self-end top-4 -right-2\">\n          <button data-no-translation class=\"bg-white text-md font-medium text-center rounded-full h-7 w-7 border-2\" data-analytics-label=\"anchorCloseAnchor\" data-action=\"anchor#closeAnchor\" style=\"z-index: 999999;\">\n            X\n          <\/button>\n        <\/div>\n        <div class=\"justify-self-auto flex flex-col h-32 bg-white border-solid border-2 shadow-md rounded-md\">\n          <div class=\"flex my-0 h-full\">\n            <div class=\"w-2\/5 p-1 ml-2 mt-2 w-full\">\n              <a href=\"https:\/\/www.flytap.com\/\" rel=\"sponsored\" data-analytics-label=\"anchorImage\" data-action=\"analytics#trackCTA\">          \n                <img decoding=\"async\" loading=\"lazy\" alt=\"card\" class=\"w-full object-cover h-24 object-center rounded justify-self-auto border-2 border-gray-100\" src=\"https:\/\/jornalmovimento.com.br\/wp-content\/uploads\/2023\/10\/offer.jpg\">          \n              <\/a>\n            <\/div>\n            <div class=\"w-3\/5 my-2\">\n              <p class=\"px-4 text-center text-xs h-1\/2\">\n                Get the best flights and exclusive prices with the airline\u2026              <\/p>\n              <a href=\"https:\/\/www.flytap.com\/\" rel=\"sponsored\" data-analytics-label=\"anchorButton\" data-action=\"analytics#trackCTA\" >\n                <button class=\"flex w-5\/6 m-auto mt-2 border-0 py-1 px-3 focus:outline-none rounded\">                \n                  <p class=\"text-center w-full\" style=\"font-size: 0.67rem;\">\n                    See promotions!                  <\/p>\n                <\/button>\n              <\/a>\n              <p class=\"text-gray-500 text-center mt-1\" style=\"font-size: 0.50rem;\">\n                You will be redirected to another website              <\/p>\n            <\/div>\n          <\/div>\n        <\/div>\n          <\/div>\n  <\/div>\n<\/section><\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>TAP has a modern and varied fleet of state-of-the-art aircraft. Furthermore, it is also a member of Star Alliance, one of the largest airline alliances in the world.<\/p>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>This means that it offers its passengers many connection options and benefits, such as shared mileage programs. See tips for saving when buying your plane ticket.<\/p>\n<\/div><!--advertisement--><div class=\"mx-5 sm:mx-0 sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900 text-left\">\n<h2>How to buy cheaper air tickets on TAP Air Portugal?<\/h2>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>So, finding discounted flights on TAP Air Portugal is simpler than you think. The company offers several ways for you to get cheap flights and incredible experiences. <\/p>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>Therefore, we have put together some tips that will help you find more affordable rates:<\/p>\n<\/div><!--advertisement--><div class=\"mx-5 sm:mx-0 sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900 text-left\">\n<h3 id=\"h-pelo-site-da-tap\">Via the TAP website <\/h3>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>Firstly, access the TAP website. Then, visit the home page, you will see a search location where you can enter the details of your trip, such as destination, dates, and number of passengers.<\/p>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>If you want to save, it&#039;s a good idea to pay attention to the special promotions that usually appear on the company&#039;s website home page.<\/p>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>Additionally, sign up for the TAP newsletter to ensure you receive exclusive offers and promotions via email, which will ensure you don&#039;t miss any chance to make your trips cheaper.<\/p>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>Finally, compare prices, don&#039;t just look on the TAP website. Use price comparison sites to see if there are cheaper options on other booking sites.<\/p>\n<\/div><!--advertisement--><div class=\"mx-5 sm:mx-0 sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900 text-left\">\n<h3 id=\"h-pelo-aplicativo\">Through the app <\/h3>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>First of all, the app is available for iOS and Android devices. It helps you in a quick and practical way to book tickets, and check purchased tickets for upcoming trips, in addition to sending notifications about casual promotions.<\/p>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>But, so that you can receive new promotions and special discounts on TAP tickets, don&#039;t forget to activate the app&#039;s notifications.<\/p>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>If you want to know about offers and promotions directly in the app, be sure to turn on notifications so you can be informed whenever there is an offer available.<\/p>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>Take advantage of promotions, finally, check out the promotions or offers available on the app. TAP Air Portugal usually offers exclusive promotions for bookings made directly through the app.<\/p>\n<\/div><div class=\"wp-block-lazyblock-credit-card lazyblock-credit-card-3WVvs\"><section class=\"credit-card mx-5 sm:mx-0 text-gray-600 body-font  my-10 border-gray-200 border-b border-l border-r sm:border-0\">\n  <div class=\"h-1 bg-gray-200 rounded overflow-hidden\">\n    <div class=\"w-24 h-full\"><\/div>\n  <\/div>\n  <div class=\"container px-5 sm:px-0 py-6 mx-auto\" data-anchor-target=\"lazyBlock\">\n    <div class=\"flex flex-wrap mx-auto\">\n      <a class=\"lg:w-2\/5 w-full lg:pl-6 mt-6 lg:mt-0\" href=\"https:\/\/www.flytap.com\/\" data-analytics-label=\"creditCardImage\" data-action=\"analytics#trackCTA\" >\n        <img decoding=\"async\" class=\"w-full h-64 object-cover object-center rounded\" loading=\"lazy\" alt=\"card\" style=\"height: 190px;\" src=\"https:\/\/jornalmovimento.com.br\/wp-content\/uploads\/2023\/10\/offer.jpg\">\n      <\/a>\n      <div class=\"lg:w-3\/5 w-full lg:pl-6 mt-6 lg:mt-0\">\n        <h2 class=\"text-sm title-font text-gray-500 tracking-widest uppercase\">\n          Airline        <\/h2>\n        <h1 class=\"text-gray-900 text-3xl title-font font-medium mb-1\">\n          TAP Air Portugal        <\/h1>\n        <div class=\"flex mb-4 justify-center sm:justify-start\">\n          \n                      <span class=\"inline-block py-1 px-2 rounded text-xs font-medium tracking-widest uppercase mr-2\">\n              Promotion            <\/span>\n                      <span class=\"inline-block py-1 px-2 rounded text-xs font-medium tracking-widest uppercase mr-2\">\n              Discount            <\/span>\n                    \n        <\/div>\n        <p class=\"leading-relaxed\">\n          Get the best flights and exclusive prices with the company!        <\/p>\n        <div class=\"flex mt-6 items-center pb-5 border-b-2 border-gray-100 mb-5\">\n          \n        <\/div>\n        <div class=\"flex\">\n          <a data-km2-rewarded=\"true\" style=\"font-size: 13px;\" class=\"hidden animate-fade-in flex m-auto sm:mr-0 sm:ml-auto\" rel=\"sponsored\" href=\"https:\/\/www.flytap.com\/\" data-analytics-label=\"creditCardButton\" data-action=\"analytics#trackCTA\"  >\n            <button class=\"uppercase flex m-auto sm:mr-0 sm:ml-auto border-0 py-2 px-4 focus:outline-none rounded  disabled:opacity-50\">\n              See promotions!            <\/button>\n          <\/a>\n          <a data-km2-rewarded=\"false\" style=\"font-size: 15px;\" class=\"flex m-auto sm:mr-0 sm:ml-auto\" rel=\"sponsored\" href=\"https:\/\/www.flytap.com\/\" data-analytics-label=\"creditCardButton\" data-action=\"analytics#trackCTA\"  >\n            <button id=\"offer-first\" class=\"flex m-auto sm:mr-0 sm:ml-auto border-0 py-2 px-6 focus:outline-none rounded  disabled:opacity-50\">\n              See promotions!            <\/button>\n          <\/a>\n        <\/div>\n        <p class=\"text-xs text-gray-500 mt-3 text-center sm:text-right\">\n          You will be redirected to another website        <\/p>\n      <\/div>\n    <\/div>\n  <\/div>\n\n    <script type=\"module\"> function waitFor(conditionFunction) { const poll = resolve => { if(conditionFunction()) resolve(); else setTimeout(_ => poll(resolve), 400); }; return new Promise(poll); } import { Application, Controller } from \"\/wp-content\/themes\/twentytwentyone\/assets\/js\/stimulus.min.js\"; let Stimulus = Application.start(); Stimulus.register(\"anchor\", class extends Controller { static get targets() { return [ \"lazyBlock\", \"lazyBlockAnchor\" ]; } initialize() { this.active = false; this.passed = false; this.closed = false; this.anchorViews = 0; this.boundOnShowAnchor = this.onShowAnchor.bind(this); window.anchorReady = window.anchorReady || false; waitFor(_ => (window.scrollY > this.getHeightBlock() && !this.active)) .then(_ => { !window.anchorReady? this.visible() : ''; window.anchorReady = true; }); if (document.getElementById('landing')) { setTimeout(() => { !window.anchorReady ? this.visible() : ''; window.anchorReady = true; }, 1 * 30000); }; } connect() { this.onShowAnchor(); document.addEventListener(\"scroll\", this.boundOnShowAnchor); } disconnect() { document.removeEventListener(\"scroll\", this.boundOnShowAnchor); } visible() { if (document.getElementById('av-offerwall__wrapper')) { setTimeout(() => this.visible(), 20000); return; } if (document.getElementById('av-fixed__bottomWrapper') && document.getElementById('av-fixed__bottomWrapper').style.display !== 'none' && document.getElementById('av-fixed__bottomWrapper').getBoundingClientRect().height > 100) { setTimeout(() => this.visible(), 1000); return; } if (document.getElementById('av-fixed__bottomWrapper') && document.getElementById('av-fixed__bottomWrapper').style.display !== 'none' && document.getElementById('av-fixed__bottomWrapper').getBoundingClientRect().height > 10) { this.getAnchorElement().style.marginBottom = '60px'; } if (document.querySelector('[data-anchor-shown=\"true\"]') && document.querySelector('[data-anchor-shown=\"true\"]').style.bottom === '0px') { setTimeout(() => this.visible(), 1000); return; } if (!window.km2AnchorReady) { this.active = true; \/*this.getAnchorElement().style.animation = \"none\"; this.getAnchorElement().classList.remove('animate-show-down');*\/ \/*this.getAnchorElement().classList.add('animate-show-up');*\/ \/*setTimeout(() => {*\/ \/*this.getAnchorElement().style.animation = \"\";*\/ this.getAnchorElement().classList.add('animate-show-up'); this.getAnchorElement().classList.remove('hidden'); this.setAnchorViews(this.anchorViews+1); setTimeout(() => this.closeAnchor(), 20000); waitFor(_ => (document.getElementById('av-fixed__bottomWrapper') && document.getElementById('av-fixed__bottomWrapper').style.display !== 'none' && document.getElementById('av-fixed__bottomWrapper').getBoundingClientRect().height > 10 && this.getAnchorElement().style.marginBottom !== '60px')) .then(_ => { this.closeAnchor(); }); this.active = false; \/*}, 10);*\/ } } invisible() { this.active = true; this.getAnchorElement().style.animation = \"none\"; this.getAnchorElement().classList.remove('animate-show-up'); this.getAnchorElement().classList.add('animate-show-down'); setTimeout(() => { this.getAnchorElement().style.animation = \"\"; setTimeout(() => { this.getAnchorElement().classList.add('hidden'); this.active = false; }, 800); }, 10); } onShowAnchor() { let anchorReady = false;  \/*if (!this.active && !anchorReady) { if (this.getAnchorViews() <= 3) { if (window.scrollY > this.getHeightBlock()) { if (!this.passed && !this.closed) { this.visible(); this.passed = true; } } else { if (this.passed) { this.invisible(); this.passed = false; } } } else { if (!this.getAnchorElement().classList.contains('close')) { this.getAnchorElement().classList.add('close'); if (window.scrollY < this.getHeightBlock()) { this.invisible(); } } } }*\/ } closeAnchor() { if (this.closed) return; this.invisible(); this.getAnchorElement().classList.add('close'); this.closed = true; } getAnchorElement() { return this.lazyBlockAnchorTargets[0]; } getAnchorViews() { this.anchorViews = parseInt(sessionStorage.getItem(\"anchorViews\")) >= 1 ? parseInt(sessionStorage.getItem(\"anchorViews\")) : 0; return this.anchorViews; } setAnchorViews(views) { sessionStorage.setItem(\"anchorViews\", views); } getHeightBlock() { return this.lazyBlockTarget.offsetTop + this.lazyBlockTarget.offsetHeight - 110; } }) <\/script>  <div data-anchor-target=\"lazyBlockAnchor\" class=\"fixed w-full sm:w-96 px-3 py-2 bottom-0 left-0 hidden\" style=\"z-index: 999999;\" name=\"lazyBlockAnchor\">\n    <div class=\"grid justify-items-stretch\">        \n              <div class=\"relative justify-self-end top-4 -right-2\">\n          <button data-no-translation class=\"bg-white text-md font-medium text-center rounded-full h-7 w-7 border-2\" data-analytics-label=\"anchorCloseAnchor\" data-action=\"anchor#closeAnchor\" style=\"z-index: 999999;\">\n            X\n          <\/button>\n        <\/div>\n        <div class=\"justify-self-auto flex flex-col h-32 bg-white border-solid border-2 shadow-md rounded-md\">\n          <div class=\"flex my-0 h-full\">\n            <div class=\"w-2\/5 p-1 ml-2 mt-2 w-full\">\n              <a href=\"https:\/\/www.flytap.com\/\" rel=\"sponsored\" data-analytics-label=\"anchorImage\" data-action=\"analytics#trackCTA\">          \n                <img decoding=\"async\" loading=\"lazy\" alt=\"card\" class=\"w-full object-cover h-24 object-center rounded justify-self-auto border-2 border-gray-100\" src=\"https:\/\/jornalmovimento.com.br\/wp-content\/uploads\/2023\/10\/offer.jpg\">          \n              <\/a>\n            <\/div>\n            <div class=\"w-3\/5 my-2\">\n              <p class=\"px-4 text-center text-xs h-1\/2\">\n                Get the best flights and exclusive prices with the airline\u2026              <\/p>\n              <a href=\"https:\/\/www.flytap.com\/\" rel=\"sponsored\" data-analytics-label=\"anchorButton\" data-action=\"analytics#trackCTA\" >\n                <button class=\"flex w-5\/6 m-auto mt-2 border-0 py-1 px-3 focus:outline-none rounded\">                \n                  <p class=\"text-center w-full\" style=\"font-size: 0.67rem;\">\n                    See promotions!                  <\/p>\n                <\/button>\n              <\/a>\n              <p class=\"text-gray-500 text-center mt-1\" style=\"font-size: 0.50rem;\">\n                You will be redirected to another website              <\/p>\n            <\/div>\n          <\/div>\n        <\/div>\n          <\/div>\n  <\/div>\n<\/section><\/div><!--advertisement--><div class=\"mx-5 sm:mx-0 sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900 text-left\">\n<h2 id=\"h-como-baixar-o-aplicativo-da-tap-air-portugal\">How to download the TAP Air Portugal app?<\/h2>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>First, open the \u201cApp Store\u201d or \u201cGoogle Play Store\u201d on your cell phone and search for \u201cTAP Air Portugal\u201d in the search field.<\/p>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>Then, click on the \u201cGet\u201d or \u201cDownload\u201d button to download. You will need to enter your Apple ID password or use fingerprint authentication or Face ID to confirm<\/p>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>But if you are using your Android device, Google Play Store will ask for some necessary permissions and you have to tap \u201cAccept\u201d to continue.<\/p>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>Finally, the TAP app will be downloaded and installed on your device. So just open the platform and register to take advantage!<\/p>\n<\/div><div class=\"wp-block-lazyblock-credit-card lazyblock-credit-card-1jGB9G\"><section class=\"credit-card mx-5 sm:mx-0 text-gray-600 body-font  my-10 border-gray-200 border-b border-l border-r sm:border-0\">\n  <div class=\"h-1 bg-gray-200 rounded overflow-hidden\">\n    <div class=\"w-24 h-full\"><\/div>\n  <\/div>\n  <div class=\"container px-5 sm:px-0 py-6 mx-auto\" data-anchor-target=\"lazyBlock\">\n    <div class=\"flex flex-wrap mx-auto\">\n      <a class=\"lg:w-2\/5 w-full lg:pl-6 mt-6 lg:mt-0\" href=\"https:\/\/www.flytap.com\/pt-br\/experiencia-tap\/universo-tap\" data-analytics-label=\"creditCardImage\" data-action=\"analytics#trackCTA\" >\n        <img decoding=\"async\" class=\"w-full h-64 object-cover object-center rounded\" loading=\"lazy\" alt=\"card\" style=\"height: 190px;\" src=\"https:\/\/jornalmovimento.com.br\/wp-content\/uploads\/2023\/10\/offer-app.jpg\">\n      <\/a>\n      <div class=\"lg:w-3\/5 w-full lg:pl-6 mt-6 lg:mt-0\">\n        <h2 class=\"text-sm title-font text-gray-500 tracking-widest uppercase\">\n          Application        <\/h2>\n        <h1 class=\"text-gray-900 text-3xl title-font font-medium mb-1\">\n          TAP Air Portugal        <\/h1>\n        <div class=\"flex mb-4 justify-center sm:justify-start\">\n          \n                      <span class=\"inline-block py-1 px-2 rounded text-xs font-medium tracking-widest uppercase mr-2\">\n              android            <\/span>\n                      <span class=\"inline-block py-1 px-2 rounded text-xs font-medium tracking-widest uppercase mr-2\">\n              iOS            <\/span>\n                    \n        <\/div>\n        <p class=\"leading-relaxed\">\n          By downloading the app now you get exclusive discounts on your tickets.        <\/p>\n        <div class=\"flex mt-6 items-center pb-5 border-b-2 border-gray-100 mb-5\">\n          \n        <\/div>\n        <div class=\"flex\">\n          <a data-km2-rewarded=\"true\" style=\"font-size: 13px;\" class=\"hidden animate-fade-in flex m-auto sm:mr-0 sm:ml-auto\" rel=\"sponsored\" href=\"https:\/\/www.flytap.com\/pt-br\/experiencia-tap\/universo-tap\" data-analytics-label=\"creditCardButton\" data-action=\"analytics#trackCTA\"  >\n            <button class=\"uppercase flex m-auto sm:mr-0 sm:ml-auto border-0 py-2 px-4 focus:outline-none rounded  disabled:opacity-50\">\n              Download app!            <\/button>\n          <\/a>\n          <a data-km2-rewarded=\"false\" style=\"font-size: 15px;\" class=\"flex m-auto sm:mr-0 sm:ml-auto\" rel=\"sponsored\" href=\"https:\/\/www.flytap.com\/pt-br\/experiencia-tap\/universo-tap\" data-analytics-label=\"creditCardButton\" data-action=\"analytics#trackCTA\"  >\n            <button id=\"offer-first\" class=\"flex m-auto sm:mr-0 sm:ml-auto border-0 py-2 px-6 focus:outline-none rounded  disabled:opacity-50\">\n              Download app!            <\/button>\n          <\/a>\n        <\/div>\n        <p class=\"text-xs text-gray-500 mt-3 text-center sm:text-right\">\n          You will be redirected to another website        <\/p>\n      <\/div>\n    <\/div>\n  <\/div>\n\n    <script type=\"module\"> function waitFor(conditionFunction) { const poll = resolve => { if(conditionFunction()) resolve(); else setTimeout(_ => poll(resolve), 400); }; return new Promise(poll); } import { Application, Controller } from \"\/wp-content\/themes\/twentytwentyone\/assets\/js\/stimulus.min.js\"; let Stimulus = Application.start(); Stimulus.register(\"anchor\", class extends Controller { static get targets() { return [ \"lazyBlock\", \"lazyBlockAnchor\" ]; } initialize() { this.active = false; this.passed = false; this.closed = false; this.anchorViews = 0; this.boundOnShowAnchor = this.onShowAnchor.bind(this); window.anchorReady = window.anchorReady || false; waitFor(_ => (window.scrollY > this.getHeightBlock() && !this.active)) .then(_ => { !window.anchorReady? this.visible() : ''; window.anchorReady = true; }); if (document.getElementById('landing')) { setTimeout(() => { !window.anchorReady ? this.visible() : ''; window.anchorReady = true; }, 1 * 30000); }; } connect() { this.onShowAnchor(); document.addEventListener(\"scroll\", this.boundOnShowAnchor); } disconnect() { document.removeEventListener(\"scroll\", this.boundOnShowAnchor); } visible() { if (document.getElementById('av-offerwall__wrapper')) { setTimeout(() => this.visible(), 20000); return; } if (document.getElementById('av-fixed__bottomWrapper') && document.getElementById('av-fixed__bottomWrapper').style.display !== 'none' && document.getElementById('av-fixed__bottomWrapper').getBoundingClientRect().height > 100) { setTimeout(() => this.visible(), 1000); return; } if (document.getElementById('av-fixed__bottomWrapper') && document.getElementById('av-fixed__bottomWrapper').style.display !== 'none' && document.getElementById('av-fixed__bottomWrapper').getBoundingClientRect().height > 10) { this.getAnchorElement().style.marginBottom = '60px'; } if (document.querySelector('[data-anchor-shown=\"true\"]') && document.querySelector('[data-anchor-shown=\"true\"]').style.bottom === '0px') { setTimeout(() => this.visible(), 1000); return; } if (!window.km2AnchorReady) { this.active = true; \/*this.getAnchorElement().style.animation = \"none\"; this.getAnchorElement().classList.remove('animate-show-down');*\/ \/*this.getAnchorElement().classList.add('animate-show-up');*\/ \/*setTimeout(() => {*\/ \/*this.getAnchorElement().style.animation = \"\";*\/ this.getAnchorElement().classList.add('animate-show-up'); this.getAnchorElement().classList.remove('hidden'); this.setAnchorViews(this.anchorViews+1); setTimeout(() => this.closeAnchor(), 20000); waitFor(_ => (document.getElementById('av-fixed__bottomWrapper') && document.getElementById('av-fixed__bottomWrapper').style.display !== 'none' && document.getElementById('av-fixed__bottomWrapper').getBoundingClientRect().height > 10 && this.getAnchorElement().style.marginBottom !== '60px')) .then(_ => { this.closeAnchor(); }); this.active = false; \/*}, 10);*\/ } } invisible() { this.active = true; this.getAnchorElement().style.animation = \"none\"; this.getAnchorElement().classList.remove('animate-show-up'); this.getAnchorElement().classList.add('animate-show-down'); setTimeout(() => { this.getAnchorElement().style.animation = \"\"; setTimeout(() => { this.getAnchorElement().classList.add('hidden'); this.active = false; }, 800); }, 10); } onShowAnchor() { let anchorReady = false;  \/*if (!this.active && !anchorReady) { if (this.getAnchorViews() <= 3) { if (window.scrollY > this.getHeightBlock()) { if (!this.passed && !this.closed) { this.visible(); this.passed = true; } } else { if (this.passed) { this.invisible(); this.passed = false; } } } else { if (!this.getAnchorElement().classList.contains('close')) { this.getAnchorElement().classList.add('close'); if (window.scrollY < this.getHeightBlock()) { this.invisible(); } } } }*\/ } closeAnchor() { if (this.closed) return; this.invisible(); this.getAnchorElement().classList.add('close'); this.closed = true; } getAnchorElement() { return this.lazyBlockAnchorTargets[0]; } getAnchorViews() { this.anchorViews = parseInt(sessionStorage.getItem(\"anchorViews\")) >= 1 ? parseInt(sessionStorage.getItem(\"anchorViews\")) : 0; return this.anchorViews; } setAnchorViews(views) { sessionStorage.setItem(\"anchorViews\", views); } getHeightBlock() { return this.lazyBlockTarget.offsetTop + this.lazyBlockTarget.offsetHeight - 110; } }) <\/script>  <div data-anchor-target=\"lazyBlockAnchor\" class=\"fixed w-full sm:w-96 px-3 py-2 bottom-0 left-0 hidden\" style=\"z-index: 999999;\" name=\"lazyBlockAnchor\">\n    <div class=\"grid justify-items-stretch\">        \n              <div class=\"relative justify-self-end top-4 -right-2\">\n          <button data-no-translation class=\"bg-white text-md font-medium text-center rounded-full h-7 w-7 border-2\" data-analytics-label=\"anchorCloseAnchor\" data-action=\"anchor#closeAnchor\" style=\"z-index: 999999;\">\n            X\n          <\/button>\n        <\/div>\n        <div class=\"justify-self-auto flex flex-col h-32 bg-white border-solid border-2 shadow-md rounded-md\">\n          <div class=\"flex my-0 h-full\">\n            <div class=\"w-2\/5 p-1 ml-2 mt-2 w-full\">\n              <a href=\"https:\/\/www.flytap.com\/pt-br\/experiencia-tap\/universo-tap\" rel=\"sponsored\" data-analytics-label=\"anchorImage\" data-action=\"analytics#trackCTA\">          \n                <img decoding=\"async\" loading=\"lazy\" alt=\"card\" class=\"w-full object-cover h-24 object-center rounded justify-self-auto border-2 border-gray-100\" src=\"https:\/\/jornalmovimento.com.br\/wp-content\/uploads\/2023\/10\/offer-app.jpg\">          \n              <\/a>\n            <\/div>\n            <div class=\"w-3\/5 my-2\">\n              <p class=\"px-4 text-center text-xs h-1\/2\">\n                By downloading the app now you get exclusive discounts on your\u2026              <\/p>\n              <a href=\"https:\/\/www.flytap.com\/pt-br\/experiencia-tap\/universo-tap\" rel=\"sponsored\" data-analytics-label=\"anchorButton\" data-action=\"analytics#trackCTA\" >\n                <button class=\"flex w-5\/6 m-auto mt-2 border-0 py-1 px-3 focus:outline-none rounded\">                \n                  <p class=\"text-center w-full\" style=\"font-size: 0.67rem;\">\n                    Download app!                  <\/p>\n                <\/button>\n              <\/a>\n              <p class=\"text-gray-500 text-center mt-1\" style=\"font-size: 0.50rem;\">\n                You will be redirected to another website              <\/p>\n            <\/div>\n          <\/div>\n        <\/div>\n          <\/div>\n  <\/div>\n<\/section><\/div><!--advertisement--><div class=\"mx-5 sm:mx-0 sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900 text-left\">\n<h2 id=\"h-como-encontrar-passagens-com-descontos-na-tap-air-portugal\">How to find discounted tickets on TAP Air Portugal?<\/h2>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>Even though it may seem like a matter of luck, finding discounted tickets on TAP Air Portugal can be much easier than you think. To get these discounts, just keep an eye on the tips we provide below.<\/p>\n<\/div><!--advertisement--><div class=\"mx-5 sm:mx-0 sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900 text-left\">\n<h3 id=\"h-compre-a-passagem-com-antecedencia\">Buy your ticket in advance<\/h3>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>Firstly, buying your ticket in advance is a great way to save, as airline tickets are cheaper when booked weeks or months in advance.&nbsp;<\/p>\n<\/div><!--advertisement--><div class=\"mx-5 sm:mx-0 sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900 text-left\">\n<h3 id=\"h-siga-as-redes-sociais\">Follow social media\u00a0<\/h3>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>Be sure to follow TAP Air Portugal&#039;s social networks, such as Facebook, Twitter and Instagram. The company has a habit of sharing promotions and discount codes for followers.<\/p>\n<\/div><!--advertisement--><div class=\"mx-5 sm:mx-0 sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900 text-left\">\n<h3 id=\"h-voe-com-escalas\">Fly with layovers<\/h3>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>Flying with stopovers is cheaper than flying direct. If you don&#039;t mind a stop during the trip, although it is more tiring, it is much more economical.&nbsp;<\/p>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>And at TAP you have another new feature, \u201cStopover\u201d with which you can make a stop of up to 10 days in the country or city of your choice. And that way, you can enjoy more than one destination with lower prices.<\/p>\n<\/div><!--advertisement--><div class=\"mx-5 sm:mx-0 sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900 text-left\">\n<h3 id=\"h-use-suas-milhas-da-tap-air-portugal\">Use your TAP Air Portugal miles:&nbsp;<\/h3>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>Finally, if you are a member of the TAP Air Portugal miles program or a partner airline, redeem discounted tickets there.<\/p>\n<\/div><!--advertisement--><div class=\"mx-5 sm:mx-0 sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900 text-left\">\n<h2 id=\"h-conheca-o-programa-de-milhas-da-tap-air-portugal\">Discover the TAP Air Portugal miles program<\/h2>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>TAP\u2019s miles program is called \u201cTAP Miles&amp;Go.\u201d Members accumulate miles as they fly with the company and its airline partners, also through some activities such as purchasing from non-airline partners.&nbsp;<\/p>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>Miles can be converted into tickets, class upgrades, travel-related products and services. The program has different membership levels, such as \u201cMiles&amp;Go\u201d and \u201cMiles&amp;Go Silver,\u201d with different benefits.\u00a0<\/p>\n<\/div><!--advertisement--><div class=\"mx-5 sm:mx-0 sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900 text-left\">\n<h3>Membership Levels<\/h3>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>The program offers different membership levels, including TAP Miles&amp;Go, TAP Miles&amp;Go Silver, TAP Miles&amp;Go Gold and TAP Miles&amp;Go Platinum. Each level offers additional unique benefits.<\/p>\n<\/div><!--advertisement--><div class=\"mx-5 sm:mx-0 sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900 text-left\">\n<h3>Rescues<\/h3>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>Members can exchange their miles for airline tickets on TAP or its partner companies, they can also exchange them for class upgrades, additional baggage, luxury products, among others.<\/p>\n<\/div><!--advertisement--><div class=\"mx-5 sm:mx-0 sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900 text-left\">\n<h3>Partners<\/h3>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>TAP Air Portugal has several partner airlines in different alliances, such as Star Alliance. This means that program members can earn and redeem miles on a wide network of routes.<\/p>\n<\/div><!--advertisement--><div class=\"mx-5 sm:mx-0 sm:text-3xl text-2xl font-medium title-font mb-4 text-gray-900 text-left\">\n<h2>Buy discounted flights also on EasyJet<\/h2>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>EasyJet is one of the best low cost on the entire European continent, you can visit several European countries at very low prices. <\/p>\n<\/div><div class=\"mx-5 sm:mx-0 prose leading-relaxed text-lg mb-5 text-left wp-paragraph\">\n<p>Come and check out the best destinations and the best prices for your next trip to Europe with EasyJet!<\/p>\n<\/div><div class=\"wp-block-lazyblock-credit-card lazyblock-credit-card-1wYF1G\"><section class=\"credit-card mx-5 sm:mx-0 text-gray-600 body-font  my-10 border-gray-200 border-b border-l border-r sm:border-0\">\n  <div class=\"h-1 bg-gray-200 rounded overflow-hidden\">\n    <div class=\"w-24 h-full\"><\/div>\n  <\/div>\n  <div class=\"container px-5 sm:px-0 py-6 mx-auto\" data-anchor-target=\"lazyBlock\">\n    <div class=\"flex flex-wrap mx-auto\">\n      <a class=\"lg:w-2\/5 w-full lg:pl-6 mt-6 lg:mt-0\" href=\"https:\/\/jornalmovimento.com.br\/en\/rec-easyjet\/\" data-analytics-label=\"creditCardImage\" data-action=\"analytics#trackCTA\" >\n        <img decoding=\"async\" class=\"w-full h-64 object-cover object-center rounded\" loading=\"lazy\" alt=\"card\" style=\"height: 190px;\" src=\"https:\/\/jornalmovimento.com.br\/wp-content\/uploads\/2023\/08\/1-3.jpg\">\n      <\/a>\n      <div class=\"lg:w-3\/5 w-full lg:pl-6 mt-6 lg:mt-0\">\n        <h2 class=\"text-sm title-font text-gray-500 tracking-widest uppercase\">\n          Airline        <\/h2>\n        <h1 class=\"text-gray-900 text-3xl title-font font-medium mb-1\">\n          EasyJet        <\/h1>\n        <div class=\"flex mb-4 justify-center sm:justify-start\">\n          \n                      <span class=\"inline-block py-1 px-2 rounded text-xs font-medium tracking-widest uppercase mr-2\">\n              Promotion            <\/span>\n                      <span class=\"inline-block py-1 px-2 rounded text-xs font-medium tracking-widest uppercase mr-2\">\n              Discount            <\/span>\n                    \n        <\/div>\n        <p class=\"leading-relaxed\">\n          Buy a ticket with discounts on EasyJet!        <\/p>\n        <div class=\"flex mt-6 items-center pb-5 border-b-2 border-gray-100 mb-5\">\n          \n        <\/div>\n        <div class=\"flex\">\n          <a data-km2-rewarded=\"true\" style=\"font-size: 13px;\" class=\"hidden animate-fade-in flex m-auto sm:mr-0 sm:ml-auto\"  href=\"https:\/\/jornalmovimento.com.br\/en\/rec-easyjet\/\" data-analytics-label=\"creditCardButton\" data-action=\"analytics#trackCTA\"  >\n            <button class=\"uppercase flex m-auto sm:mr-0 sm:ml-auto border-0 py-2 px-4 focus:outline-none rounded  disabled:opacity-50\">\n              Tips to save!            <\/button>\n          <\/a>\n          <a data-km2-rewarded=\"false\" style=\"font-size: 15px;\" class=\"flex m-auto sm:mr-0 sm:ml-auto\"  href=\"https:\/\/jornalmovimento.com.br\/en\/rec-easyjet\/\" data-analytics-label=\"creditCardButton\" data-action=\"analytics#trackCTA\"  >\n            <button id=\"offer-first\" class=\"flex m-auto sm:mr-0 sm:ml-auto border-0 py-2 px-6 focus:outline-none rounded  disabled:opacity-50\">\n              Tips to save!            <\/button>\n          <\/a>\n        <\/div>\n        <p class=\"text-xs text-gray-500 mt-3 text-center sm:text-right\">\n          You will remain on the same website        <\/p>\n      <\/div>\n    <\/div>\n  <\/div>\n\n    <script type=\"module\"> function waitFor(conditionFunction) { const poll = resolve => { if(conditionFunction()) resolve(); else setTimeout(_ => poll(resolve), 400); }; return new Promise(poll); } import { Application, Controller } from \"\/wp-content\/themes\/twentytwentyone\/assets\/js\/stimulus.min.js\"; let Stimulus = Application.start(); Stimulus.register(\"anchor\", class extends Controller { static get targets() { return [ \"lazyBlock\", \"lazyBlockAnchor\" ]; } initialize() { this.active = false; this.passed = false; this.closed = false; this.anchorViews = 0; this.boundOnShowAnchor = this.onShowAnchor.bind(this); window.anchorReady = window.anchorReady || false; waitFor(_ => (window.scrollY > this.getHeightBlock() && !this.active)) .then(_ => { !window.anchorReady? this.visible() : ''; window.anchorReady = true; }); if (document.getElementById('landing')) { setTimeout(() => { !window.anchorReady ? this.visible() : ''; window.anchorReady = true; }, 1 * 30000); }; } connect() { this.onShowAnchor(); document.addEventListener(\"scroll\", this.boundOnShowAnchor); } disconnect() { document.removeEventListener(\"scroll\", this.boundOnShowAnchor); } visible() { if (document.getElementById('av-offerwall__wrapper')) { setTimeout(() => this.visible(), 20000); return; } if (document.getElementById('av-fixed__bottomWrapper') && document.getElementById('av-fixed__bottomWrapper').style.display !== 'none' && document.getElementById('av-fixed__bottomWrapper').getBoundingClientRect().height > 100) { setTimeout(() => this.visible(), 1000); return; } if (document.getElementById('av-fixed__bottomWrapper') && document.getElementById('av-fixed__bottomWrapper').style.display !== 'none' && document.getElementById('av-fixed__bottomWrapper').getBoundingClientRect().height > 10) { this.getAnchorElement().style.marginBottom = '60px'; } if (document.querySelector('[data-anchor-shown=\"true\"]') && document.querySelector('[data-anchor-shown=\"true\"]').style.bottom === '0px') { setTimeout(() => this.visible(), 1000); return; } if (!window.km2AnchorReady) { this.active = true; \/*this.getAnchorElement().style.animation = \"none\"; this.getAnchorElement().classList.remove('animate-show-down');*\/ \/*this.getAnchorElement().classList.add('animate-show-up');*\/ \/*setTimeout(() => {*\/ \/*this.getAnchorElement().style.animation = \"\";*\/ this.getAnchorElement().classList.add('animate-show-up'); this.getAnchorElement().classList.remove('hidden'); this.setAnchorViews(this.anchorViews+1); setTimeout(() => this.closeAnchor(), 20000); waitFor(_ => (document.getElementById('av-fixed__bottomWrapper') && document.getElementById('av-fixed__bottomWrapper').style.display !== 'none' && document.getElementById('av-fixed__bottomWrapper').getBoundingClientRect().height > 10 && this.getAnchorElement().style.marginBottom !== '60px')) .then(_ => { this.closeAnchor(); }); this.active = false; \/*}, 10);*\/ } } invisible() { this.active = true; this.getAnchorElement().style.animation = \"none\"; this.getAnchorElement().classList.remove('animate-show-up'); this.getAnchorElement().classList.add('animate-show-down'); setTimeout(() => { this.getAnchorElement().style.animation = \"\"; setTimeout(() => { this.getAnchorElement().classList.add('hidden'); this.active = false; }, 800); }, 10); } onShowAnchor() { let anchorReady = false;  \/*if (!this.active && !anchorReady) { if (this.getAnchorViews() <= 3) { if (window.scrollY > this.getHeightBlock()) { if (!this.passed && !this.closed) { this.visible(); this.passed = true; } } else { if (this.passed) { this.invisible(); this.passed = false; } } } else { if (!this.getAnchorElement().classList.contains('close')) { this.getAnchorElement().classList.add('close'); if (window.scrollY < this.getHeightBlock()) { this.invisible(); } } } }*\/ } closeAnchor() { if (this.closed) return; this.invisible(); this.getAnchorElement().classList.add('close'); this.closed = true; } getAnchorElement() { return this.lazyBlockAnchorTargets[0]; } getAnchorViews() { this.anchorViews = parseInt(sessionStorage.getItem(\"anchorViews\")) >= 1 ? parseInt(sessionStorage.getItem(\"anchorViews\")) : 0; return this.anchorViews; } setAnchorViews(views) { sessionStorage.setItem(\"anchorViews\", views); } getHeightBlock() { return this.lazyBlockTarget.offsetTop + this.lazyBlockTarget.offsetHeight - 110; } }) <\/script>  <div data-anchor-target=\"lazyBlockAnchor\" class=\"fixed w-full sm:w-96 px-3 py-2 bottom-0 left-0 hidden\" style=\"z-index: 999999;\" name=\"lazyBlockAnchor\">\n    <div class=\"grid justify-items-stretch\">        \n              <div class=\"relative justify-self-end top-4 -right-2\">\n          <button data-no-translation class=\"bg-white text-md font-medium text-center rounded-full h-7 w-7 border-2\" data-analytics-label=\"anchorCloseAnchor\" data-action=\"anchor#closeAnchor\" style=\"z-index: 999999;\">\n            X\n          <\/button>\n        <\/div>\n        <div class=\"justify-self-auto flex flex-col h-32 bg-white border-solid border-2 shadow-md rounded-md\">\n          <div class=\"flex my-0 h-full\">\n            <div class=\"w-2\/5 p-1 ml-2 mt-2 w-full\">\n              <a href=\"https:\/\/jornalmovimento.com.br\/en\/rec-easyjet\/\"  data-analytics-label=\"anchorImage\" data-action=\"analytics#trackCTA\">          \n                <img decoding=\"async\" loading=\"lazy\" alt=\"card\" class=\"w-full object-cover h-24 object-center rounded justify-self-auto border-2 border-gray-100\" src=\"https:\/\/jornalmovimento.com.br\/wp-content\/uploads\/2023\/08\/1-3.jpg\">          \n              <\/a>\n            <\/div>\n            <div class=\"w-3\/5 my-2\">\n              <p class=\"px-4 text-center text-xs h-1\/2\">\n                Buy a ticket with discounts on EasyJet!              <\/p>\n              <a href=\"https:\/\/jornalmovimento.com.br\/en\/rec-easyjet\/\"  data-analytics-label=\"anchorButton\" data-action=\"analytics#trackCTA\" >\n                <button class=\"flex w-5\/6 m-auto mt-2 border-0 py-1 px-3 focus:outline-none rounded\">                \n                  <p class=\"text-center w-full\" style=\"font-size: 0.67rem;\">\n                    Tips for saving\u2026                  <\/p>\n                <\/button>\n              <\/a>\n              <p class=\"text-gray-500 text-center mt-1\" style=\"font-size: 0.50rem;\">\n                You will remain on the same website              <\/p>\n            <\/div>\n          <\/div>\n        <\/div>\n          <\/div>\n  <\/div>\n<\/section><\/div>","protected":false},"excerpt":{"rendered":"<p>Discover the world while spending little with TAP Air Portugal! With the company you can fly across Europe, Africa and the Americas for little money on the ticket. <\/p>","protected":false},"author":3,"featured_media":7736,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[226,37],"tags":[346],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v18.7 (Yoast SEO v19.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Descubra como garantir passagens baratas com a TAP Air Portugal!<\/title>\n<meta name=\"description\" content=\"Com a TAP Air Portugal voc\u00ea tem solu\u00e7\u00f5es inteligentes para sua pr\u00f3xima viagem, com voos baratos e muitas outras exclusividades. Confira!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/jornalmovimento.com.br\/en\/tap-air-portugal\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Como garantir passagens baratas com a TAP Air Portugal!\" \/>\n<meta property=\"og:description\" content=\"Com a TAP Air Portugal voc\u00ea tem solu\u00e7\u00f5es inteligentes para sua pr\u00f3xima viagem, com voos baratos e muitas outras exclusividades. Confira!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jornalmovimento.com.br\/en\/tap-air-portugal\/\" \/>\n<meta property=\"og:site_name\" content=\"Jornal Movimento\" \/>\n<meta property=\"article:published_time\" content=\"2023-10-26T15:42:29+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-10-26T15:42:31+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/jornalmovimento.com.br\/wp-content\/uploads\/2023\/10\/1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1280\" \/>\n\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Pedro Saynovich\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/jornalmovimento.com.br\/#website\",\"url\":\"https:\/\/jornalmovimento.com.br\/\",\"name\":\"Jornal Movimento\",\"description\":\"Noticias e Conte\u00fado\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/jornalmovimento.com.br\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jornalmovimento.com.br\/tap-air-portugal\/#primaryimage\",\"url\":\"https:\/\/jornalmovimento.com.br\/wp-content\/uploads\/2023\/10\/1.jpg\",\"contentUrl\":\"https:\/\/jornalmovimento.com.br\/wp-content\/uploads\/2023\/10\/1.jpg\",\"width\":1280,\"height\":720,\"caption\":\"Fonte: TAP Air Portugal.\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/jornalmovimento.com.br\/tap-air-portugal\/#webpage\",\"url\":\"https:\/\/jornalmovimento.com.br\/tap-air-portugal\/\",\"name\":\"Descubra como garantir passagens baratas com a TAP Air Portugal!\",\"isPartOf\":{\"@id\":\"https:\/\/jornalmovimento.com.br\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/jornalmovimento.com.br\/tap-air-portugal\/#primaryimage\"},\"datePublished\":\"2023-10-26T15:42:29+00:00\",\"dateModified\":\"2023-10-26T15:42:31+00:00\",\"author\":{\"@id\":\"https:\/\/jornalmovimento.com.br\/#\/schema\/person\/15a159f5778977d572af9d0db3d0439f\"},\"description\":\"Com a TAP Air Portugal voc\u00ea tem solu\u00e7\u00f5es inteligentes para sua pr\u00f3xima viagem, com voos baratos e muitas outras exclusividades. Confira!\",\"breadcrumb\":{\"@id\":\"https:\/\/jornalmovimento.com.br\/tap-air-portugal\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/jornalmovimento.com.br\/tap-air-portugal\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/jornalmovimento.com.br\/tap-air-portugal\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/jornalmovimento.com.br\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Como garantir passagens baratas com a TAP Air Portugal!\"}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/jornalmovimento.com.br\/#\/schema\/person\/15a159f5778977d572af9d0db3d0439f\",\"name\":\"Pedro Saynovich\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jornalmovimento.com.br\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/ae24d63a4b296976719eb7b1d4e1c7ca?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/ae24d63a4b296976719eb7b1d4e1c7ca?s=96&d=mm&r=g\",\"caption\":\"Pedro Saynovich\"},\"url\":\"https:\/\/jornalmovimento.com.br\/en\/author\/pedrosaynovich\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Descubra como garantir passagens baratas com a TAP Air Portugal!","description":"Com a TAP Air Portugal voc\u00ea tem solu\u00e7\u00f5es inteligentes para sua pr\u00f3xima viagem, com voos baratos e muitas outras exclusividades. Confira!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/jornalmovimento.com.br\/en\/tap-air-portugal\/","og_locale":"en_US","og_type":"article","og_title":"Como garantir passagens baratas com a TAP Air Portugal!","og_description":"Com a TAP Air Portugal voc\u00ea tem solu\u00e7\u00f5es inteligentes para sua pr\u00f3xima viagem, com voos baratos e muitas outras exclusividades. Confira!","og_url":"https:\/\/jornalmovimento.com.br\/en\/tap-air-portugal\/","og_site_name":"Jornal Movimento","article_published_time":"2023-10-26T15:42:29+00:00","article_modified_time":"2023-10-26T15:42:31+00:00","og_image":[{"width":1280,"height":720,"url":"https:\/\/jornalmovimento.com.br\/wp-content\/uploads\/2023\/10\/1.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Written by":"Pedro Saynovich","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebSite","@id":"https:\/\/jornalmovimento.com.br\/#website","url":"https:\/\/jornalmovimento.com.br\/","name":"Jornal Movimento","description":"Noticias e Conte\u00fado","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jornalmovimento.com.br\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jornalmovimento.com.br\/tap-air-portugal\/#primaryimage","url":"https:\/\/jornalmovimento.com.br\/wp-content\/uploads\/2023\/10\/1.jpg","contentUrl":"https:\/\/jornalmovimento.com.br\/wp-content\/uploads\/2023\/10\/1.jpg","width":1280,"height":720,"caption":"Fonte: TAP Air Portugal."},{"@type":"WebPage","@id":"https:\/\/jornalmovimento.com.br\/tap-air-portugal\/#webpage","url":"https:\/\/jornalmovimento.com.br\/tap-air-portugal\/","name":"Descubra como garantir passagens baratas com a TAP Air Portugal!","isPartOf":{"@id":"https:\/\/jornalmovimento.com.br\/#website"},"primaryImageOfPage":{"@id":"https:\/\/jornalmovimento.com.br\/tap-air-portugal\/#primaryimage"},"datePublished":"2023-10-26T15:42:29+00:00","dateModified":"2023-10-26T15:42:31+00:00","author":{"@id":"https:\/\/jornalmovimento.com.br\/#\/schema\/person\/15a159f5778977d572af9d0db3d0439f"},"description":"Com a TAP Air Portugal voc\u00ea tem solu\u00e7\u00f5es inteligentes para sua pr\u00f3xima viagem, com voos baratos e muitas outras exclusividades. Confira!","breadcrumb":{"@id":"https:\/\/jornalmovimento.com.br\/tap-air-portugal\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jornalmovimento.com.br\/tap-air-portugal\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/jornalmovimento.com.br\/tap-air-portugal\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/jornalmovimento.com.br\/"},{"@type":"ListItem","position":2,"name":"Como garantir passagens baratas com a TAP Air Portugal!"}]},{"@type":"Person","@id":"https:\/\/jornalmovimento.com.br\/#\/schema\/person\/15a159f5778977d572af9d0db3d0439f","name":"Pedro Saynovich","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jornalmovimento.com.br\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/ae24d63a4b296976719eb7b1d4e1c7ca?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ae24d63a4b296976719eb7b1d4e1c7ca?s=96&d=mm&r=g","caption":"Pedro Saynovich"},"url":"https:\/\/jornalmovimento.com.br\/en\/author\/pedrosaynovich\/"}]}},"_links":{"self":[{"href":"https:\/\/jornalmovimento.com.br\/en\/wp-json\/wp\/v2\/posts\/7488"}],"collection":[{"href":"https:\/\/jornalmovimento.com.br\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jornalmovimento.com.br\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jornalmovimento.com.br\/en\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/jornalmovimento.com.br\/en\/wp-json\/wp\/v2\/comments?post=7488"}],"version-history":[{"count":0,"href":"https:\/\/jornalmovimento.com.br\/en\/wp-json\/wp\/v2\/posts\/7488\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jornalmovimento.com.br\/en\/wp-json\/wp\/v2\/media\/7736"}],"wp:attachment":[{"href":"https:\/\/jornalmovimento.com.br\/en\/wp-json\/wp\/v2\/media?parent=7488"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jornalmovimento.com.br\/en\/wp-json\/wp\/v2\/categories?post=7488"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jornalmovimento.com.br\/en\/wp-json\/wp\/v2\/tags?post=7488"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}