Max Potential First Input Delay
190 ms
The maximum potential First Input Delay that your users could experience is the duration of the longest task. Learn more about the Maximum Potential First Input Delay metric.
Words
206
Action candidates
2
Images
8
HTML
72 KB
Primary
ENUSD
Next.js / Tailwind
Simulated mobile · Performance
2026-09-07 · Run warnings: results may be incomplete.
Simulated mobile · Lab data, not field data
2026-09-07T07:54:33.247Z · Lighthouse 13.4.1
This run has warnings; results may be incomplete: The page loaded too slowly to finish within the time limit. Results may be incomplete.
Results vary by server, network and environment, independently of taste/conversion scores. Diagnostics retain Lighthouse wording.
190 ms
The maximum potential First Input Delay that your users could experience is the duration of the longest task. Learn more about the Maximum Potential First Input Delay metric.
Errors logged to the console indicate unresolved problems. They can come from network request failures and other browser concerns. Learn more about this errors in console diagnostic audit
{
"type": "table",
"items": [
{
"source": "network",
"description": "Failed to load resource: net::ERR_CONNECTION_RESET",
"sourceLocation": {
"url": "https://c.go-mpulse.net/api/config.json?key=D4B4D-TPD6V-KDL48-WVXW4-AE7JM&d=en.hopegoo.com&t=5962559&v=1.792.0&if=&sl=0&si=bbed9129-ffda-4fc8-bf28-283aa8a3dffd-tkzhyx&plugins=AK,ConfigOverride,Continuity,PageParams,IFrameDelay,AutoXHR,SPA,History,Angular,Backbone,Ember,RT,CrossDomain,BW,PaintTiming,NavigationTiming,ResourceTiming,Memory,CACHE_RELOAD,Errors,TPAnalytics,UserTiming,Akamai,Early,EventTiming,BFCache,LOGN&acao=&ak.ai=1072689",
"line": 0,
"type": "source-location",
"column": 0,
"urlProvider": "network"
}
},
{
"source": "network",
"description": "Failed to load resource: net::ERR_FAILED",
"sourceLocation": {
"url": "https://sentry.inf.17usoft.com/api/355/envelope/?sentry_version=7&sentry_key=2d409c6f61316c38b29a3a8d8b4d5686&sentry_client=sentry.javascript.nextjs%2F10.67.0",
"line": 0,
"type": "source-location",
"column": 0,
"urlProvider": "network"
}
},
{
"source": "other",
"description": "Manifest: Line: 1, column: 1, Syntax error.",
"sourceLocation": {
"url": "https://en.hopegoo.com/manifest.webmanifest",
"line": 0,
"type": "source-location",
"column": 0,
"urlProvider": "network"
}
},
{
"source": "other",
"description": "Manifest: Line: 1, column: 1, Syntax error.",
"sourceLocation": {
"url": "https://en.hopegoo.com/manifest.webmanifest",
"line": 0,
"type": "source-location",
"column": 0,
"urlProvider": "network"
}
}
],
"headings": [
{
"key": "sourceLocation",
"label": "Source",
"valueType": "source-location"
},
{
"key": "description",
"label": "Description",
"valueType": "code"
}
]
}17.8 s
Time to Interactive is the amount of time it takes for the page to become fully interactive. Learn more about the Time to Interactive metric.
1 warning found
Deprecated APIs will eventually be removed from the browser. Learn more about deprecated APIs.
{
"type": "table",
"items": [
{
"value": "Unload event listeners are deprecated and will be removed.",
"source": {
"url": "https://s.go-mpulse.net/boomerang/D4B4D-TPD6V-KDL48-WVXW4-AE7JM",
"line": 9,
"type": "source-location",
"column": 11355,
"urlProvider": "network"
},
"subItems": {
"type": "subitems",
"items": [
{
"url": "https://chromestatus.com/feature/5579556305502208",
"text": "Check the feature status page for more details.",
"type": "link"
}
]
}
}
],
"headings": [
{
"key": "value",
"label": "Deprecation / Warning",
"valueType": "text"
},
{
"key": "source",
"label": "Source",
"valueType": "source-location"
}
]
}8 cookies found
Third-party cookies may be blocked in some contexts. Learn more about preparing for third-party cookie restrictions.
{
"type": "table",
"items": [
{
"url": "https://www.clarity.ms/tag/xaw1o8r1y9",
"name": "CLID"
},
{
"url": "https://c.clarity.ms/c.gif",
"name": "SM"
},
{
"url": "https://c.clarity.ms/c.gif",
"name": "MUID"
},
{
"url": "https://c.bing.com/c.gif?ctsa=mr&CtsSyncId=99B160231AD6486B9F4DCED1E5B96245&RedC=c.clarity.ms&MXFR=286D6019437E6EDA223F77D4477E60B3",
"name": "MUID"
},
{
"url": "https://c.bing.com/c.gif?ctsa=mr&CtsSyncId=99B160231AD6486B9F4DCED1E5B96245&RedC=c.clarity.ms&MXFR=286D6019437E6EDA223F77D4477E60B3",
"name": "MR"
},
{
"url": "https://c.bing.com/c.gif?ctsa=mr&CtsSyncId=99B160231AD6486B9F4DCED1E5B96245&RedC=c.clarity.ms&MXFR=286D6019437E6EDA223F77D4477E60B3",
"name": "SRM_B"
},
{
"url": "https://c.clarity.ms/c.gif?ctsa=mr&CtsSyncId=99B160231AD6486B9F4DCED1E5B96245&MUID=2FBCDC7C54C7686C27B1CBB155356973",
"name": "MR"
},
{
"url": "https://c.clarity.ms/c.gif?ctsa=mr&CtsSyncId=99B160231AD6486B9F4DCED1E5B96245&MUID=2FBCDC7C54C7686C27B1CBB155356973",
"name": "ANONCHK"
}
],
"headings": [
{
"key": "name",
"label": "Name",
"valueType": "text"
},
{
"key": "url",
"label": "URL",
"valueType": "url"
}
]
}10.8 s
Consider reducing the time spent parsing, compiling and executing JS. You may find delivering smaller JS payloads helps with this. Learn how to minimize main-thread work
{
"type": "table",
"items": [
{
"group": "other",
"duration": 4562.963999999831,
"groupLabel": "Other"
},
{
"group": "scriptEvaluation",
"duration": 2857.023999999958,
"groupLabel": "Script Evaluation"
},
{
"group": "paintCompositeRender",
"duration": 1616.5799999999929,
"groupLabel": "Rendering"
},
{
"group": "styleLayout",
"duration": 1265.3160000000053,
"groupLabel": "Style & Layout"
},
{
"group": "scriptParseCompile",
"duration": 332.71199999999993,
"groupLabel": "Script Parsing & Compilation"
},
{
"group": "garbageCollection",
"duration": 150.1080000000001,
"groupLabel": "Garbage Collection"
},
{
"group": "parseHTML",
"duration": 35.544,
"groupLabel": "Parse HTML & CSS"
}
],
"headings": [
{
"key": "groupLabel",
"label": "Category",
"valueType": "text"
},
{
"key": "duration",
"label": "Time Spent",
"valueType": "ms",
"granularity": 1
}
],
"sortedBy": [
"duration"
]
}3.0 s
Consider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this. Learn how to reduce Javascript execution time.
{
"type": "table",
"items": [
{
"url": "https://en.hopegoo.com/",
"total": 6156.704000000024,
"scripting": 75.05600000000007,
"scriptParseCompile": 10.743999999999996
},
{
"url": "https://en.hopegoo.com/_next/static/chunks/1enxyzjs8vbq_.js",
"total": 2024.687999999976,
"scripting": 1586.2479999999748,
"scriptParseCompile": 40.268
},
{
"url": "Unattributable",
"total": 1023.9039999999643,
"scripting": 20.115999999999985,
"scriptParseCompile": 0
},
{
"url": "https://en.hopegoo.com/_next/static/chunks/3llt0qd2n_y6c.js",
"total": 387.0360000000001,
"scripting": 307.2760000000001,
"scriptParseCompile": 3.66
},
{
"url": "https://www.googletagmanager.com/gtag/js?id=G-PNDDF22TJF",
"total": 218.82000000000048,
"scripting": 174.71200000000047,
"scriptParseCompile": 42.443999999999996
},
{
"url": "https://en.hopegoo.com/_next/static/chunks/0bgpqjavss3nl.js",
"total": 176.60000000000005,
"scripting": 169.08400000000006,
"scriptParseCompile": 7.072
},
{
"url": "https://scripts.clarity.ms/0.8.69/clarity.js",
"total": 157.47600000000008,
"scripting": 142.24800000000008,
"scriptParseCompile": 6.4559999999999995
},
{
"url": "https://en.hopegoo.com/_next/static/chunks/3lnbuv8wcukpu.js",
"total": 152.42000000000013,
"scripting": 125.76400000000014,
"scriptParseCompile": 12.124
},
{
"url": "https://file.reshg.com/hopegoo/track/track-sdk/collect/0.0.34/index.global.js",
"total": 107.14800000000001,
"scripting": 84.95600000000002,
"scriptParseCompile": 9.756
},
{
"url": "https://en.hopegoo.com/_next/static/chunks/3hav_-yiy19t1.js",
"total": 82.27199999999999,
"scripting": 1.3400000000000003,
"scriptParseCompile": 80.39999999999999
},
{
"url": "https://s.go-mpulse.net/boomerang/D4B4D-TPD6V-KDL48-WVXW4-AE7JM",
"total": 51.02799999999998,
"scripting": 29.13599999999998,
"scriptParseCompile": 20
},
{
"url": "https://en.hopegoo.com/_next/static/chunks/322l305bfe8qn.js",
"total": 50.90400000000001,
"scripting": 49.256000000000014,
"scriptParseCompile": 1.284
}
],
"summary": {
"wastedMs": 2999.3999999999755
},
"headings": [
{
"key": "url",
"label": "URL",
"valueType": "url"
},
{
"key": "total",
"label": "Total CPU Time",
"valueType": "ms",
"granularity": 1
},
{
"key": "scripting",
"label": "Script Evaluation",
"valueType": "ms",
"granularity": 1
},
{
"key": "scriptParseCompile",
"label": "Script Parse",
"valueType": "ms",
"granularity": 1
}
],
"sortedBy": [
"total"
]
}Source maps translate minified code to the original source code. This helps developers debug in production. In addition, Lighthouse is able to provide further insights. Consider deploying source maps to take advantage of these benefits. Learn more about source maps.
{
"type": "table",
"items": [
{
"subItems": {
"type": "subitems",
"items": [
{
"error": "Large JavaScript file is missing a source map"
}
]
},
"scriptUrl": "https://en.hopegoo.com/_next/static/chunks/3hav_-yiy19t1.js"
}
],
"headings": [
{
"key": "scriptUrl",
"label": "URL",
"valueType": "url",
"subItemsHeading": {
"key": "error"
}
},
{
"key": "sourceMapUrl",
"label": "Map URL",
"valueType": "url"
}
]
}Low-contrast text is difficult or impossible for many users to read. Learn how to provide sufficient color contrast.
{
"type": "table",
"items": [
{
"node": {
"lhId": "1-0-A",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,0,SECTION,0,DIV,3,DIV,0,A",
"type": "node",
"snippet": "<a data-testid=\"home_hero_start_exploring\" class=\"flex cursor-pointer items-center justify-center rounded-full px-6 py-2.5 t…\" href=\"/vibes\">",
"selector": "section.relative > div.flex > div.flex > a.flex",
"nodeLabel": "Start Exploring",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.21 (foreground color: #ffffff, background color: #00c868, font size: 10.5pt (14px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 286,
"left": 31,
"right": 198,
"width": 167,
"bottom": 328,
"height": 42
}
}
},
{
"node": {
"lhId": "1-1-SPAN",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,1,SECTION,1,DIV,0,DIV,2,DIV,0,SPAN",
"type": "node",
"snippet": "<span class=\"mb-4 flex w-fit items-center gap-1 rounded px-3 py-1 text-[10px] font-bold…\">",
"selector": "div.grid > div.group > div.relative > span.mb-4",
"nodeLabel": "verified\nSPONSORED",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.7 (foreground color: #ffffff, background color: #f57c00, font size: 7.5pt (10px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 1041,
"left": 41,
"right": 157,
"width": 116,
"bottom": 1064,
"height": 23
}
}
},
{
"node": {
"lhId": "1-2-DIV",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,0,DIV,1,DIV,0,DIV",
"type": "node",
"snippet": "<div class=\"flex items-center gap-1 text-[9px] font-extrabold uppercase tracking-wide …\">",
"selector": "div.mt-4 > div.flex > div.min-w-0 > div.flex",
"nodeLabel": "auto_awesome\nAI PICK · BUDGET",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.7 (foreground color: #f57c00, background color: #ffffff, font size: 6.8pt (9px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 1725,
"left": 113,
"right": 304,
"width": 191,
"bottom": 1739,
"height": 14
}
},
"subItems": {
"type": "subitems",
"items": [
{
"relatedNode": {
"lhId": "1-3-DIV",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,0,DIV",
"type": "node",
"snippet": "<div data-testid=\"drops_flight_card\" class=\"flex gap-3 rounded-2xl border border-gray-200 bg-white p-3 shadow-sm md:ga…\">",
"selector": "main.mx-auto > section.mt-4 > div.mt-4 > div.flex",
"nodeLabel": "auto_awesome\nAI PICK · BUDGET\n\nPhiladelphia · Best Value Flights\n\n$38\nLOWFARE\nB…",
"boundingRect": {
"top": 1712,
"left": 16,
"right": 396,
"width": 380,
"bottom": 1810,
"height": 98
}
}
}
]
}
},
{
"node": {
"lhId": "1-4-SPAN",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,0,DIV,1,DIV,2,DIV,0,SPAN",
"type": "node",
"snippet": "<span class=\"text-lg font-black leading-none text-brand-orange md:text-xl\">",
"selector": "div.flex > div.min-w-0 > div.flex > span.text-lg",
"nodeLabel": "$38",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.7 (foreground color: #f57c00, background color: #ffffff, font size: 13.5pt (18px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 1779,
"left": 113,
"right": 151,
"width": 38,
"bottom": 1797,
"height": 18
}
},
"subItems": {
"type": "subitems",
"items": [
{
"relatedNode": {
"lhId": "1-3-DIV",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,0,DIV",
"type": "node",
"snippet": "<div data-testid=\"drops_flight_card\" class=\"flex gap-3 rounded-2xl border border-gray-200 bg-white p-3 shadow-sm md:ga…\">",
"selector": "main.mx-auto > section.mt-4 > div.mt-4 > div.flex",
"nodeLabel": "auto_awesome\nAI PICK · BUDGET\n\nPhiladelphia · Best Value Flights\n\n$38\nLOWFARE\nB…",
"boundingRect": {
"top": 1712,
"left": 16,
"right": 396,
"width": 380,
"bottom": 1810,
"height": 98
}
}
}
]
}
},
{
"node": {
"lhId": "1-5-SPAN",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,0,DIV,1,DIV,2,DIV,1,SPAN",
"type": "node",
"snippet": "<span class=\"rounded bg-orange-100 px-2 py-0.5 text-[9px] font-extrabold uppercase trac…\">",
"selector": "div.flex > div.min-w-0 > div.flex > span.rounded",
"nodeLabel": "LOWFARE",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.35 (foreground color: #f57c00, background color: #ffedd4, font size: 6.8pt (9px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 1779,
"left": 159,
"right": 224,
"width": 66,
"bottom": 1797,
"height": 18
}
}
},
{
"node": {
"lhId": "1-6-DIV",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,1,DIV,1,DIV,0,DIV",
"type": "node",
"snippet": "<div class=\"flex items-center gap-1 text-[9px] font-extrabold uppercase tracking-wide …\">",
"selector": "div.mt-4 > div.flex > div.min-w-0 > div.flex",
"nodeLabel": "auto_awesome\nAI PICK · BUDGET",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.7 (foreground color: #f57c00, background color: #ffffff, font size: 6.8pt (9px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 1835,
"left": 113,
"right": 304,
"width": 191,
"bottom": 1849,
"height": 14
}
},
"subItems": {
"type": "subitems",
"items": [
{
"relatedNode": {
"lhId": "1-7-DIV",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,1,DIV",
"type": "node",
"snippet": "<div data-testid=\"drops_flight_card\" class=\"flex gap-3 rounded-2xl border border-gray-200 bg-white p-3 shadow-sm md:ga…\">",
"selector": "main.mx-auto > section.mt-4 > div.mt-4 > div.flex",
"nodeLabel": "auto_awesome\nAI PICK · BUDGET\n\nMemphis · Flight Deals Ranked\n\n$93\nBIGSAVE\nBook",
"boundingRect": {
"top": 1822,
"left": 16,
"right": 396,
"width": 380,
"bottom": 1920,
"height": 98
}
}
}
]
}
},
{
"node": {
"lhId": "1-8-SPAN",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,1,DIV,1,DIV,2,DIV,0,SPAN",
"type": "node",
"snippet": "<span class=\"text-lg font-black leading-none text-brand-orange md:text-xl\">",
"selector": "div.flex > div.min-w-0 > div.flex > span.text-lg",
"nodeLabel": "$93",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.7 (foreground color: #f57c00, background color: #ffffff, font size: 13.5pt (18px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 1889,
"left": 113,
"right": 151,
"width": 38,
"bottom": 1907,
"height": 18
}
},
"subItems": {
"type": "subitems",
"items": [
{
"relatedNode": {
"lhId": "1-7-DIV",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,1,DIV",
"type": "node",
"snippet": "<div data-testid=\"drops_flight_card\" class=\"flex gap-3 rounded-2xl border border-gray-200 bg-white p-3 shadow-sm md:ga…\">",
"selector": "main.mx-auto > section.mt-4 > div.mt-4 > div.flex",
"nodeLabel": "auto_awesome\nAI PICK · BUDGET\n\nMemphis · Flight Deals Ranked\n\n$93\nBIGSAVE\nBook",
"boundingRect": {
"top": 1822,
"left": 16,
"right": 396,
"width": 380,
"bottom": 1920,
"height": 98
}
}
}
]
}
},
{
"node": {
"lhId": "1-9-SPAN",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,1,DIV,1,DIV,2,DIV,1,SPAN",
"type": "node",
"snippet": "<span class=\"rounded bg-orange-100 px-2 py-0.5 text-[9px] font-extrabold uppercase trac…\">",
"selector": "div.flex > div.min-w-0 > div.flex > span.rounded",
"nodeLabel": "BIGSAVE",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.35 (foreground color: #f57c00, background color: #ffedd4, font size: 6.8pt (9px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 1889,
"left": 159,
"right": 220,
"width": 61,
"bottom": 1907,
"height": 18
}
}
},
{
"node": {
"lhId": "1-10-DIV",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,2,DIV,1,DIV,0,DIV",
"type": "node",
"snippet": "<div class=\"flex items-center gap-1 text-[9px] font-extrabold uppercase tracking-wide …\">",
"selector": "div.mt-4 > div.flex > div.min-w-0 > div.flex",
"nodeLabel": "auto_awesome\nAI PICK · BUDGET",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.7 (foreground color: #f57c00, background color: #ffffff, font size: 6.8pt (9px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 1945,
"left": 113,
"right": 304,
"width": 191,
"bottom": 1959,
"height": 14
}
},
"subItems": {
"type": "subitems",
"items": [
{
"relatedNode": {
"lhId": "1-11-DIV",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,2,DIV",
"type": "node",
"snippet": "<div data-testid=\"drops_flight_card\" class=\"flex gap-3 rounded-2xl border border-gray-200 bg-white p-3 shadow-sm md:ga…\">",
"selector": "main.mx-auto > section.mt-4 > div.mt-4 > div.flex",
"nodeLabel": "auto_awesome\nAI PICK · BUDGET\n\nSan Juan · Lowest Fare Finder\n\n$113\nPRICEDROP\nBo…",
"boundingRect": {
"top": 1932,
"left": 16,
"right": 396,
"width": 380,
"bottom": 2030,
"height": 98
}
}
}
]
}
},
{
"node": {
"lhId": "1-12-SPAN",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,2,DIV,1,DIV,2,DIV,0,SPAN",
"type": "node",
"snippet": "<span class=\"text-lg font-black leading-none text-brand-orange md:text-xl\">",
"selector": "div.flex > div.min-w-0 > div.flex > span.text-lg",
"nodeLabel": "$113",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.7 (foreground color: #f57c00, background color: #ffffff, font size: 13.5pt (18px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 1999,
"left": 113,
"right": 163,
"width": 50,
"bottom": 2017,
"height": 18
}
},
"subItems": {
"type": "subitems",
"items": [
{
"relatedNode": {
"lhId": "1-11-DIV",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,2,DIV",
"type": "node",
"snippet": "<div data-testid=\"drops_flight_card\" class=\"flex gap-3 rounded-2xl border border-gray-200 bg-white p-3 shadow-sm md:ga…\">",
"selector": "main.mx-auto > section.mt-4 > div.mt-4 > div.flex",
"nodeLabel": "auto_awesome\nAI PICK · BUDGET\n\nSan Juan · Lowest Fare Finder\n\n$113\nPRICEDROP\nBo…",
"boundingRect": {
"top": 1932,
"left": 16,
"right": 396,
"width": 380,
"bottom": 2030,
"height": 98
}
}
}
]
}
},
{
"node": {
"lhId": "1-13-SPAN",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,2,DIV,1,DIV,2,DIV,1,SPAN",
"type": "node",
"snippet": "<span class=\"rounded bg-orange-100 px-2 py-0.5 text-[9px] font-extrabold uppercase trac…\">",
"selector": "div.flex > div.min-w-0 > div.flex > span.rounded",
"nodeLabel": "PRICEDROP",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.35 (foreground color: #f57c00, background color: #ffedd4, font size: 6.8pt (9px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 1999,
"left": 171,
"right": 247,
"width": 76,
"bottom": 2017,
"height": 18
}
}
},
{
"node": {
"lhId": "1-14-SPAN",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,3,DIV,1,DIV,2,DIV,0,SPAN",
"type": "node",
"snippet": "<span class=\"text-lg font-black leading-none text-brand-orange md:text-xl\">",
"selector": "div.flex > div.min-w-0 > div.flex > span.text-lg",
"nodeLabel": "$649",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.7 (foreground color: #f57c00, background color: #ffffff, font size: 13.5pt (18px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 2109,
"left": 113,
"right": 163,
"width": 50,
"bottom": 2127,
"height": 18
}
},
"subItems": {
"type": "subitems",
"items": [
{
"relatedNode": {
"lhId": "1-15-DIV",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,3,DIV",
"type": "node",
"snippet": "<div data-testid=\"drops_hotel_card\" class=\"flex gap-3 rounded-2xl border border-gray-200 bg-white p-3 shadow-sm md:ga…\">",
"selector": "main.mx-auto > section.mt-4 > div.mt-4 > div.flex",
"nodeLabel": "holiday_village\nVACATIONS\n\nLaguna Beach, CA vacation from $649.1 p.p with fligh…",
"boundingRect": {
"top": 2042,
"left": 16,
"right": 396,
"width": 380,
"bottom": 2140,
"height": 98
}
}
}
]
}
},
{
"node": {
"lhId": "1-16-SPAN",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,2,SECTION,1,DIV,3,DIV,1,DIV,2,DIV,1,SPAN",
"type": "node",
"snippet": "<span class=\"rounded bg-orange-100 px-2 py-0.5 text-[9px] font-extrabold uppercase trac…\">",
"selector": "div.flex > div.min-w-0 > div.flex > span.rounded",
"nodeLabel": "SAVE 2%",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.35 (foreground color: #f57c00, background color: #ffedd4, font size: 6.8pt (9px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 2109,
"left": 171,
"right": 233,
"width": 62,
"bottom": 2127,
"height": 18
}
}
},
{
"node": {
"lhId": "1-17-DIV",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,3,SECTION,1,DIV,0,A,1,DIV",
"type": "node",
"snippet": "<div class=\"absolute top-4 left-4 flex items-center gap-1 rounded-full bg-brand-orange…\">",
"selector": "section.mt-8 > div.grid > a.group > div.absolute",
"nodeLabel": "star\nEditor's Pick",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.7 (foreground color: #ffffff, background color: #f57c00, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 2293,
"left": 33,
"right": 161,
"width": 128,
"bottom": 2321,
"height": 28
}
}
},
{
"node": {
"lhId": "1-18-SPAN",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,3,SECTION,1,DIV,2,A,0,DIV,1,SPAN",
"type": "node",
"snippet": "<span class=\"rounded bg-brand-orange px-2 py-1 text-[10px] font-bold text-white\">",
"selector": "div.grid > a.group > div.flex > span.rounded",
"nodeLabel": "Pro Tip",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.7 (foreground color: #ffffff, background color: #f57c00, font size: 7.5pt (10px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 2836,
"left": 324,
"right": 380,
"width": 56,
"bottom": 2859,
"height": 23
}
}
},
{
"node": {
"lhId": "1-19-SPAN",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,3,SECTION,1,DIV,3,A,3,DIV,0,DIV,0,DIV,0,SPAN",
"type": "node",
"snippet": "<span class=\"flex items-center gap-1\">",
"selector": "div.mt-5 > div.flex > div.flex > span.flex",
"nodeLabel": "forum\n48 Replies",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.7 (foreground color: #f57c00, background color: #ffffff, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 3310,
"left": 37,
"right": 127,
"width": 90,
"bottom": 3326,
"height": 16
}
},
"subItems": {
"type": "subitems",
"items": [
{
"relatedNode": {
"lhId": "1-20-A",
"path": "1,HTML,1,BODY,4,DIV,1,DIV,2,DIV,0,MAIN,3,SECTION,1,DIV,3,A",
"type": "node",
"snippet": "<a data-testid=\"home_trending_esim\" class=\"group relative flex h-64 flex-col rounded-2xl border border-gray-200 bg-wh…\" href=\"/post/esim\">",
"selector": "main.mx-auto > section.mt-8 > div.grid > a.group",
"nodeLabel": "face_3\n\nTravel Q&A Lounge\n\nActive 2 hrs ago\n\n\"Best eSIM for a Euro trip?\"\n\nNeve…",
"boundingRect": {
"top": 3092,
"left": 16,
"right": 396,
"width": 380,
"bottom": 3348,
"height": 256
}
}
}
]
}
},
{
"node": {
"lhId": "1-21-BUTTON",
"path": "1,HTML,1,BODY,4,DIV,2,FOOTER,0,DIV,2,SECTION,2,FORM,1,BUTTON",
"type": "node",
"snippet": "<button type=\"submit\" class=\"h-11 w-full shrink-0 cursor-pointer whitespace-nowrap rounded-lg px-6 py-3…\">",
"selector": "div.mx-auto > section.w-full > form.mt-4 > button.h-11",
"nodeLabel": "Subscribe",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.21 (foreground color: #ffffff, background color: #00c868, font size: 10.5pt (14px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 4443,
"left": 24,
"right": 388,
"width": 364,
"bottom": 4487,
"height": 44
}
}
},
{
"node": {
"lhId": "1-22-SPAN",
"path": "1,HTML,1,BODY,4,DIV,3,NAV,0,DIV,0,A,1,SPAN",
"type": "node",
"snippet": "<span class=\"mt-1 text-[10px] font-bold\">",
"selector": "nav.fixed > div.mx-auto > a.flex > span.mt-1",
"nodeLabel": "Home",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.21 (foreground color: #00c868, background color: #ffffff, font size: 7.5pt (10px), font weight: bold). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 792,
"left": 31,
"right": 64,
"width": 32,
"bottom": 807,
"height": 15
}
},
"subItems": {
"type": "subitems",
"items": [
{
"relatedNode": {
"lhId": "1-23-NAV",
"path": "1,HTML,1,BODY,4,DIV,3,NAV",
"type": "node",
"snippet": "<nav class=\"fixed bottom-0 left-0 z-50 w-full border-t pb-[env(safe-area-inset-bottom)…\" data-track-id=\"bottom-nav\" data-testid=\"bottom_nav\">",
"selector": "body > div.relative > nav.fixed",
"nodeLabel": "Home\nVibes\nDrops\nDiscover\nAccount",
"boundingRect": {
"top": 751,
"left": 0,
"right": 412,
"width": 412,
"bottom": 823,
"height": 72
}
}
}
]
}
},
{
"node": {
"lhId": "1-24-SPAN",
"path": "1,HTML,1,BODY,4,DIV,3,NAV,0,DIV,1,A,1,SPAN",
"type": "node",
"snippet": "<span class=\"mt-1 text-[10px] font-medium\">",
"selector": "nav.fixed > div.mx-auto > a.flex > span.mt-1",
"nodeLabel": "Vibes",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.6 (foreground color: #99a1af, background color: #ffffff, font size: 7.5pt (10px), font weight: normal). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 792,
"left": 113,
"right": 140,
"width": 27,
"bottom": 807,
"height": 15
}
},
"subItems": {
"type": "subitems",
"items": [
{
"relatedNode": {
"lhId": "1-23-NAV",
"path": "1,HTML,1,BODY,4,DIV,3,NAV",
"type": "node",
"snippet": "<nav class=\"fixed bottom-0 left-0 z-50 w-full border-t pb-[env(safe-area-inset-bottom)…\" data-track-id=\"bottom-nav\" data-testid=\"bottom_nav\">",
"selector": "body > div.relative > nav.fixed",
"nodeLabel": "Home\nVibes\nDrops\nDiscover\nAccount",
"boundingRect": {
"top": 751,
"left": 0,
"right": 412,
"width": 412,
"bottom": 823,
"height": 72
}
}
}
]
}
},
{
"node": {
"lhId": "1-25-SPAN",
"path": "1,HTML,1,BODY,4,DIV,3,NAV,0,DIV,2,A,1,SPAN",
"type": "node",
"snippet": "<span class=\"mt-1 text-[10px] font-medium\">",
"selector": "nav.fixed > div.mx-auto > a.flex > span.mt-1",
"nodeLabel": "Drops",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.6 (foreground color: #99a1af, background color: #ffffff, font size: 7.5pt (10px), font weight: normal). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 792,
"left": 191,
"right": 221,
"width": 29,
"bottom": 807,
"height": 15
}
},
"subItems": {
"type": "subitems",
"items": [
{
"relatedNode": {
"lhId": "1-23-NAV",
"path": "1,HTML,1,BODY,4,DIV,3,NAV",
"type": "node",
"snippet": "<nav class=\"fixed bottom-0 left-0 z-50 w-full border-t pb-[env(safe-area-inset-bottom)…\" data-track-id=\"bottom-nav\" data-testid=\"bottom_nav\">",
"selector": "body > div.relative > nav.fixed",
"nodeLabel": "Home\nVibes\nDrops\nDiscover\nAccount",
"boundingRect": {
"top": 751,
"left": 0,
"right": 412,
"width": 412,
"bottom": 823,
"height": 72
}
}
}
]
}
},
{
"node": {
"lhId": "1-26-SPAN",
"path": "1,HTML,1,BODY,4,DIV,3,NAV,0,DIV,3,A,1,SPAN",
"type": "node",
"snippet": "<span class=\"mt-1 text-[10px] font-medium\">",
"selector": "nav.fixed > div.mx-auto > a.flex > span.mt-1",
"nodeLabel": "Discover",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.6 (foreground color: #99a1af, background color: #ffffff, font size: 7.5pt (10px), font weight: normal). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 792,
"left": 263,
"right": 307,
"width": 44,
"bottom": 807,
"height": 15
}
},
"subItems": {
"type": "subitems",
"items": [
{
"relatedNode": {
"lhId": "1-23-NAV",
"path": "1,HTML,1,BODY,4,DIV,3,NAV",
"type": "node",
"snippet": "<nav class=\"fixed bottom-0 left-0 z-50 w-full border-t pb-[env(safe-area-inset-bottom)…\" data-track-id=\"bottom-nav\" data-testid=\"bottom_nav\">",
"selector": "body > div.relative > nav.fixed",
"nodeLabel": "Home\nVibes\nDrops\nDiscover\nAccount",
"boundingRect": {
"top": 751,
"left": 0,
"right": 412,
"width": 412,
"bottom": 823,
"height": 72
}
}
}
]
}
},
{
"node": {
"lhId": "1-27-SPAN",
"path": "1,HTML,1,BODY,4,DIV,3,NAV,0,DIV,4,A,1,SPAN",
"type": "node",
"snippet": "<span class=\"mt-1 text-[10px] font-medium\">",
"selector": "nav.fixed > div.mx-auto > a.flex > span.mt-1",
"nodeLabel": "Account",
"explanation": "Fix any of the following:\n Element has insufficient color contrast of 2.6 (foreground color: #99a1af, background color: #ffffff, font size: 7.5pt (10px), font weight: normal). Expected contrast ratio of 4.5:1",
"boundingRect": {
"top": 792,
"left": 344,
"right": 385,
"width": 40,
"bottom": 807,
"height": 15
}
},
"subItems": {
"type": "subitems",
"items": [
{
"relatedNode": {
"lhId": "1-23-NAV",
"path": "1,HTML,1,BODY,4,DIV,3,NAV",
"type": "node",
"snippet": "<nav class=\"fixed bottom-0 left-0 z-50 w-full border-t pb-[env(safe-area-inset-bottom)…\" data-track-id=\"bottom-nav\" data-testid=\"bottom_nav\">",
"selector": "body > div.relative > nav.fixed",
"nodeLabel": "Home\nVibes\nDrops\nDiscover\nAccount",
"boundingRect": {
"top": 751,
"left": 0,
"right": 412,
"width": 412,
"bottom": 823,
"height": 72
}
}
}
]
}
}
],
"headings": [
{
"key": "node",
"label": "Failing Elements",
"valueType": "node",
"subItemsHeading": {
"key": "relatedNode",
"valueType": "node"
}
}
],
"debugData": {
"tags": [
"cat.color",
"wcag2aa",
"wcag143",
"TTv5",
"TT13.c",
"EN-301-549",
"EN-9.1.4.3",
"ACT",
"RGAAv4",
"RGAA-3.2.1"
],
"type": "debugdata",
"impact": "serious"
}
}Visible text labels that do not match the accessible name can result in a confusing experience for screen reader users. Learn more about accessible names.
{
"type": "table",
"items": [
{
"node": {
"lhId": "1-28-BUTTON",
"path": "1,HTML,1,BODY,4,DIV,0,DIV,0,HEADER,0,DIV,2,DIV,0,BUTTON",
"type": "node",
"snippet": "<button type=\"button\" tabindex=\"0\" data-base-ui-click-trigger=\"\" id=\"base-ui-_R_dmimtb_\" aria-haspopup=\"dialog\" aria-expanded=\"false\" data-slot=\"popover-trigger\" aria-label=\"Open language and currency menu\" data-testid=\"header_lang_currency\" class=\"flex cursor-pointer items-center gap-1 rounded-md border border-transparen…\">",
"selector": "header.z-50 > div.mx-auto > div.flex > button#base-ui-_R_dmimtb_",
"nodeLabel": "EN\nUSD",
"explanation": "Fix any of the following:\n Text inside the element is not included in the accessible name",
"boundingRect": {
"top": 12,
"left": 269,
"right": 355,
"width": 87,
"bottom": 43,
"height": 31
}
}
}
],
"headings": [
{
"key": "node",
"label": "Failing Elements",
"valueType": "node",
"subItemsHeading": {
"key": "relatedNode",
"valueType": "node"
}
}
],
"debugData": {
"tags": [
"cat.semantics",
"wcag21a",
"wcag253",
"EN-301-549",
"EN-9.2.5.3",
"RGAAv4",
"RGAA-6.1.5",
"experimental"
],
"type": "debugdata",
"impact": "serious"
}
}Link text (and alternate text for images, when used as links) that is discernible, unique, and focusable improves the navigation experience for screen reader users. Learn how to make links accessible.
{
"type": "table",
"items": [
{
"node": {
"lhId": "1-29-A",
"path": "1,HTML,1,BODY,15,A",
"type": "node",
"snippet": "<a class=\"fixed bottom-20 right-4 z-10\" href=\"https://hopegoo.go.link/?adj_t=1xdefhjd\">",
"selector": "body > a.fixed",
"nodeLabel": "body > a.fixed",
"explanation": "Fix all of the following:\n Element is in tab order and does not have accessible text\n\nFix any of the following:\n Element does not have text that is visible to screen readers\n aria-label attribute does not exist or is empty\n aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n Element has no title attribute",
"boundingRect": {
"top": 687,
"left": 340,
"right": 396,
"width": 56,
"bottom": 743,
"height": 56
}
}
}
],
"headings": [
{
"key": "node",
"label": "Failing Elements",
"valueType": "node",
"subItemsHeading": {
"key": "relatedNode",
"valueType": "node"
}
}
],
"debugData": {
"tags": [
"cat.name-role-value",
"wcag2a",
"wcag244",
"wcag412",
"section508",
"section508.22.a",
"TTv5",
"TT6.a",
"EN-301-549",
"EN-9.2.4.4",
"EN-9.4.1.2",
"ACT",
"RGAAv4",
"RGAA-6.2.1"
],
"type": "debugdata",
"impact": "serious"
}
}Disabling zooming is problematic for users with low vision who rely on screen magnification to properly see the contents of a web page. Learn more about the viewport meta tag.
{
"type": "table",
"items": [
{
"node": {
"lhId": "1-30-META",
"path": "1,HTML,0,HEAD,1,META",
"type": "node",
"snippet": "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no\">",
"selector": "head > meta",
"nodeLabel": "head > meta",
"explanation": "Fix any of the following:\n user-scalable=no on <meta> tag disables zooming on mobile devices",
"boundingRect": {
"top": 0,
"left": 0,
"right": 0,
"width": 0,
"bottom": 0,
"height": 0
}
}
}
],
"headings": [
{
"key": "node",
"label": "Failing Elements",
"valueType": "node",
"subItemsHeading": {
"key": "relatedNode",
"valueType": "node"
}
}
],
"debugData": {
"tags": [
"cat.sensory-and-visual-cues",
"wcag2aa",
"wcag144",
"EN-301-549",
"EN-9.1.4.4",
"ACT",
"RGAAv4",
"RGAA-10.4.2"
],
"type": "debugdata",
"impact": "moderate"
}
}{
"finalUrl": "https://en.hopegoo.com/",
"userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/151.0.0.0 Safari/537.36",
"formFactor": "mobile",
"throttlingMethod": "simulate",
"throttling": {
"rttMs": 150,
"throughputKbps": 1638.4,
"requestLatencyMs": 562.5,
"uploadThroughputKbps": 675,
"cpuSlowdownMultiplier": 4,
"downloadThroughputKbps": 1474.5600000000002
},
"metrics": [
{
"id": "largest-contentful-paint",
"unit": "millisecond",
"value": 15981.353500000001
},
{
"id": "cumulative-layout-shift",
"unit": "unitless",
"value": 0.07111616874778999
},
{
"id": "total-blocking-time",
"unit": "millisecond",
"value": 627
},
{
"id": "first-contentful-paint",
"unit": "millisecond",
"value": 1608.835
},
{
"id": "speed-index",
"unit": "millisecond",
"value": 10626.168031948091
}
]
}01 / WHAT WORKS
The signature emerald green (#00c868) and deep pine (#003d22) provide high-contrast anchors on primary action buttons and active navigation states without visual clutter.
The full-radius pill buttons, badge container, and bottom navigation pill targets create a consistent tap-friendly physical rhythm across desktop and mobile screens.
02 / NEXT STEPS
The hero phone frame displays blank grey placeholders and circular wireframe shapes. First-time visitors see dummy UI rather than tangible inventory like the featured Paris villas or Yosemite guides.
Inject concrete card visuals into the hero mobile mockup displaying real imagery, destination names, and price tags. Verify at 1440px and 390px that legible card content renders immediately without grey skeleton bars.
The HTML title promises easy booking for flights, hotels, trains, and attractions, but the hero copy focuses exclusively on swipe-based browsing without booking access.
Add a category quick-filter bar (Flights, Hotels, Trains, Attractions) directly beneath the hero buttons, or clarify the Start Exploring CTA destination. Verify that clicking takes users to booking inventory.
On the 390px mobile viewport, an isolated dark grey circle floats disconnected on the right edge, while the bottom card mockup is clipped halfway down by the viewport fold.
Group the floating badge with the hero card container or hide decorative floating dots on mobile screens under 480px. Verify on 390x844 that the mobile hero forms a self-contained card stack.
03 / DESIGN LANGUAGE
Background
#ffffffText
#00c868Accent
#00c868CLEARER WORDS
Start Exploring
Explore Escapes & Deals
Specifies what visitors will find when they tap, shifting the tone from vague browsing to actionable travel deals.04 / EVIDENCE
Explore each observation, recommendation and captured record.
A blank or generic unfurl on X, Slack, or WeChat wastes the click you already earned. This is distribution, not decoration.
Set og:title, og:description, and a 1200x630 image that matches the live headline.
og:title=no og:image=no
This is the sentence under your link in search and in some chat previews. An empty one wastes that slot.
Write one specific sentence, 70-160 characters, that matches the H1.
(missing)
A stranger landing on an AI-looking site with no maker, no customer, and no contact will not give you an email.
Add a real name, a real face, a real contact method, or one real customer line.
no about, no first-person, no quote
A stranger who wants to buy, ask, or complain has nowhere to go. That is a conversion leak and a trust leak.
Put a mailto, a form that works, or a real social handle in the footer. One is enough.
no mailto / telegram / x / github / email
Missing alt is a screen-reader dead end and a ranking leak. Decorative images can be alt="". Content images cannot be blank.
Write a short alt for product and photo images. Use empty alt only on pure decoration.
5 images without alt
If the tab, the share card, and the hero name different things, the visitor cannot form one memory of the product.
Make title, og:title, and H1 share the same noun.
title="HopeGoo - Easy Booking for Flights, Hotels, Trains and Attractions!" h1="Big Escapes On ASmall Whim"
Without Strict-Transport-Security, a first visit can still be downgraded to http. Browsers will not pin HTTPS.
Set Strict-Transport-Security: max-age=31536000; includeSubDomains at the edge.
strict-transport-security missing
Each extra script is a lottery ticket for layout shift, tracking, and failure. Eighteen is not a stack, it is a pile.
Cut to the scripts that earn their keep. Load the rest after idle, or not at all.
22 external scripts
A CSP is the standard way to limit script sources. Vibe-coded pages often load anything, including injected scripts.
Start with a report-only CSP, then default-src 'self' and an explicit script-src.
content-security-policy missing
Without nosniff, browsers may interpret a file as a different type than you sent. It is a one-line header.
Set X-Content-Type-Options: nosniff.
x-content-type-options missing
The default referrer can leak internal paths and query strings to third parties.
Set Referrer-Policy: strict-origin-when-cross-origin.
referrer-policy missing
05 / MAKE IT HAPPEN
Use the improvement prompt for this page, or the design prompt to borrow its visual language. “Recreate” includes references and implementation steps. Paste either into your coding assistant.
Refactor the hero section on https://en.hopegoo.com/. Replace the skeleton placeholder graphics inside the desktop and mobile phone mockup with actual travel cards showcasing destination photography, headline titles (such as '50% Off Luxury Paris Villas'), and price badges. Preserve the brand color palette (#00c868 primary, #003d22 dark, #ffffff background) and pill button radius (3.35544e+07px). Remove the disconnected floating grey circular element visible on the 390px mobile layout. Add a secondary category navigation row for Flights, Hotels, Trains, and Attractions below the hero CTA group to match the page title intent. Verify visually at 1440x900 and 390x844 viewports.