{"id":7783,"date":"2026-07-03T15:17:51","date_gmt":"2026-07-03T13:17:51","guid":{"rendered":"https:\/\/franceletour.com\/?p=7783"},"modified":"2026-07-04T19:53:19","modified_gmt":"2026-07-04T17:53:19","slug":"tour-de-france-2026-stage-1-results","status":"publish","type":"post","link":"https:\/\/franceletour.com\/fr\/tour-de-france-2026-stage-1-results\/","title":{"rendered":"Tour de France 2026 Stage 1 Results: Team Time Trial Winners in Barcelona"},"content":{"rendered":"\n<style>\n@import url('https:\/\/fonts.cdnfonts.com\/css\/galibier');\n@import url('https:\/\/fonts.googleapis.com\/css2?family=DM+Sans:wght@400;500;600&display=swap');\n#tdf-results-nav-wrap{max-width:680px!important;margin:1.5rem auto!important;font-family:'DM Sans',sans-serif!important}\n#tdf-results-nav-wrap *,#tdf-results-nav-wrap *::before,#tdf-results-nav-wrap *::after{box-sizing:border-box!important}\n#tdf-results-nav-wrap .rn-card{background:#fff!important;border-radius:14px!important;border:1px solid #e8edf2!important;overflow:hidden!important;box-shadow:0 1px 4px rgba(0,0,0,0.04)!important}\n#tdf-results-nav-wrap .rn-row{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:0.85rem 1rem!important;gap:8px!important}\n#tdf-results-nav-wrap .rn-btn{display:flex!important;align-items:center!important;gap:8px!important;padding:10px 14px!important;border-radius:10px!important;font-size:0.82rem!important;font-weight:600!important;text-decoration:none!important;background:#f8faf9!important;border:1px solid #e8edf2!important;color:#374151!important;min-width:110px!important;flex-shrink:0!important;transition:background 0.2s ease,transform 0.2s ease!important}\n#tdf-results-nav-wrap .rn-btn:hover{background:#eef2ed!important;border-color:#d1d9ce!important}\n#tdf-results-nav-wrap .rn-btn-prev:hover{transform:translateX(-2px)!important}\n#tdf-results-nav-wrap .rn-btn-next:hover{transform:translateX(2px)!important}\n#tdf-results-nav-wrap .rn-btn-off{opacity:0.3!important;cursor:not-allowed!important;pointer-events:none!important}\n#tdf-results-nav-wrap .rn-btn-off:hover{background:#f8faf9!important;transform:none!important}\n#tdf-results-nav-wrap .rn-arrow{font-size:0.75rem!important;flex-shrink:0!important}\n#tdf-results-nav-wrap .rn-btn-text{display:flex!important;flex-direction:column!important;min-width:0!important}\n#tdf-results-nav-wrap .rn-label{font-size:0.58rem!important;text-transform:uppercase!important;letter-spacing:0.9px!important;color:#9ca3af!important;font-weight:600!important;line-height:1.3!important}\n#tdf-results-nav-wrap .rn-name{font-size:0.85rem!important;font-weight:700!important;color:#111!important;white-space:nowrap!important;line-height:1.2!important}\n#tdf-results-nav-wrap .rn-route{font-size:0.65rem!important;color:#9ca3af!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:140px!important;display:none!important;line-height:1.2!important}\n@media(min-width:560px){#tdf-results-nav-wrap .rn-route{display:block!important}}\n#tdf-results-nav-wrap .rn-center{text-align:center!important;flex:1!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;min-width:0!important}\n#tdf-results-nav-wrap .rn-center-label{font-size:0.58rem!important;text-transform:uppercase!important;letter-spacing:1px!important;color:#9ca3af!important;font-weight:600!important;white-space:nowrap!important}\n#tdf-results-nav-wrap .rn-center-stage{font-family:'Galibier',sans-serif!important;font-size:1.5rem!important;font-weight:700!important;color:#111!important;line-height:1!important;text-transform:uppercase!important;letter-spacing:1px!important;white-space:nowrap!important}\n#tdf-results-nav-wrap .rn-center-date{font-size:0.68rem!important;color:#9ca3af!important;margin-top:2px!important;white-space:nowrap!important}\n#tdf-results-nav-wrap .rn-badges{display:flex!important;gap:5px!important;margin-top:5px!important;flex-wrap:wrap!important;justify-content:center!important}\n#tdf-results-nav-wrap .rn-pill{display:inline-block!important;font-size:0.58rem!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:0.6px!important;padding:2px 8px!important;border-radius:10px!important}\n#tdf-results-nav-wrap .rn-pill-results{background:#E8F5E9!important;color:#1B5E20!important;border:1px solid #A5D6A7!important}\n\n\/* HIDDEN BY DEFAULT - remove this class to show results *\/\n#tdf-results-nav-wrap .rn-results-hidden{display:none!important}\n\/* To show results: delete the entire class from the HTML, or change to: .rn-results-visible{display:flex!important} *\/\n\n#tdf-results-nav-wrap .rn-winner{font-size:0.65rem!important;color:#1B5E20!important;margin-top:3px!important;font-weight:600!important;white-space:nowrap!important}\n#tdf-results-nav-wrap .rn-toggle-check{display:none!important}\n#tdf-results-nav-wrap .rn-toggle-row{display:flex!important;justify-content:center!important;padding:0.5rem 1rem!important;border-top:1px solid #f0f4f8!important;background:#fafcf9!important}\n#tdf-results-nav-wrap .rn-toggle-label{font-size:0.72rem!important;font-weight:600!important;color:#639922!important;padding:5px 16px!important;border-radius:20px!important;border:1px solid rgba(99,153,34,0.3)!important;cursor:pointer!important;display:inline-flex!important;align-items:center!important;gap:5px!important;transition:background 0.2s ease!important;user-select:none!important}\n#tdf-results-nav-wrap .rn-toggle-label:hover{background:#EAF3DE!important;color:#27500A!important;border-color:rgba(99,153,34,0.5)!important}\n#tdf-results-nav-wrap .rn-icon-show{display:inline!important}\n#tdf-results-nav-wrap .rn-icon-hide{display:none!important}\n#tdf-results-nav-wrap .rn-toggle-check:checked~.rn-toggle-row .rn-icon-show{display:none!important}\n#tdf-results-nav-wrap .rn-toggle-check:checked~.rn-toggle-row .rn-icon-hide{display:inline!important}\n#tdf-results-nav-wrap .rn-grid-wrapper{display:none!important;padding:0.8rem 1rem!important;border-top:1px solid #eef2f6!important;background:#fdfdfd!important}\n#tdf-results-nav-wrap .rn-toggle-check:checked~.rn-grid-wrapper{display:block!important}\n#tdf-results-nav-wrap .rn-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(44px,1fr))!important;gap:5px!important}\n#tdf-results-nav-wrap .rn-grid-item{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;padding:6px 2px!important;border-radius:7px!important;font-size:0.72rem!important;font-weight:600!important;text-decoration:none!important;color:#374151!important;background:#f8faf9!important;border:1px solid #eef2f6!important;min-height:38px!important;transition:background 0.15s ease!important;position:relative!important}\n#tdf-results-nav-wrap .rn-grid-item:hover{background:#EAF3DE!important;border-color:#c5d9b0!important;color:#27500A!important;text-decoration:none!important}\n#tdf-results-nav-wrap .rn-grid-num{font-size:0.82rem!important;font-weight:700!important;line-height:1!important}\n#tdf-results-nav-wrap .rn-grid-type{font-size:0.48rem!important;text-transform:uppercase!important;color:#ccc!important;line-height:1!important;margin-top:2px!important}\n#tdf-results-nav-wrap .rn-grid-item:hover .rn-grid-type{color:#639922!important}\n#tdf-results-nav-wrap .rn-grid-item.rn-current{background:#C8E6C9!important;border-color:#81C784!important;color:#1B5E20!important;pointer-events:none!important;cursor:default!important;box-shadow:0 0 0 2px rgba(76,175,80,0.25)!important}\n#tdf-results-nav-wrap .rn-grid-item.rn-current .rn-grid-type{color:rgba(27,94,32,0.5)!important}\n#tdf-results-nav-wrap .rn-grid-item.rn-has-results .rn-check{position:absolute!important;top:1px!important;right:3px!important;font-size:0.5rem!important;color:#4CAF50!important;line-height:1!important}\n#tdf-results-nav-wrap .rn-grid-item.rn-rest{background:#f5f5f3!important;color:#ccc!important;pointer-events:none!important;cursor:default!important;border-style:dashed!important}\n@media(max-width:520px){#tdf-results-nav-wrap .rn-row{padding:0.6rem!important;gap:4px!important}#tdf-results-nav-wrap .rn-btn{padding:8px 8px!important;min-width:80px!important;gap:4px!important}#tdf-results-nav-wrap .rn-route{display:none!important}#tdf-results-nav-wrap .rn-center-stage{font-size:1.1rem!important}}\n<\/style>\n\n<div id=\"tdf-results-nav-wrap\">\n  <div class=\"rn-card\">\n    \n    <div class=\"rn-row\">\n      \n      <!-- Previous Button - Stage 1 has no previous -->\n      <a class=\"rn-btn rn-btn-prev rn-btn-off\" href=\"#\">\n        <span class=\"rn-arrow\">&#9664;<\/span>\n        <span class=\"rn-btn-text\">\n          <span class=\"rn-label\">Previous Result<\/span>\n          <span class=\"rn-name\">Start<\/span>\n          <span class=\"rn-route\"><\/span>\n        <\/span>\n      <\/a>\n\n      <!-- Center - Stage 1 Info -->\n      <div class=\"rn-center\">\n        <span class=\"rn-center-label\">Results for<\/span>\n        <div class=\"rn-center-stage\">Stage 1<\/div>\n        <div class=\"rn-center-date\">Jul 4<\/div>\n        <div class=\"rn-badges\">\n          <span class=\"rn-pill\" style=\"background:#BBDEFB;color:#0D47A1;\">TTT<\/span>\n          <!-- \n            RESULTS BADGE - hidden until stage finishes\n            TO SHOW: delete the entire class=\"rn-results-hidden\"\n          -->\n          <span class=\"rn-pill rn-pill-results rn-results-hidden\">&#10003; Results<\/span>\n        <\/div>\n        <!-- \n          WINNER LINE - hidden until stage finishes\n          TO SHOW: delete class=\"rn-results-hidden\"\n          Also update the winner name!\n        -->\n        <div class=\"rn-winner rn-results-hidden\">&#127942; Winner: Team Visma-Lease a Bike<\/div>\n      <\/div>\n\n      <!-- Next Button - Links to Stage 2 Results -->\n      <a class=\"rn-btn rn-btn-next\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-2-results\/\">\n        <span class=\"rn-btn-text\">\n          <span class=\"rn-label\">Next Result<\/span>\n          <span class=\"rn-name\">Stage 2<\/span>\n          <span class=\"rn-route\">Tarragona &#8594; Barcelona<\/span>\n        <\/span>\n        <span class=\"rn-arrow\">&#9654;<\/span>\n      <\/a>\n\n    <\/div>\n\n    <!-- Toggle -->\n    <input type=\"checkbox\" id=\"rn-toggle-1\" class=\"rn-toggle-check\">\n    <div class=\"rn-toggle-row\">\n      <label for=\"rn-toggle-1\" class=\"rn-toggle-label\">\n        <span class=\"rn-icon-show\">&#9660;<\/span>\n        <span class=\"rn-icon-hide\">&#9650;<\/span>\n        All 21 Stages\n      <\/label>\n    <\/div>\n\n    <!-- Grid -->\n    <div class=\"rn-grid-wrapper\">\n      <div class=\"rn-grid\">\n        \n        <!-- \n          Stage 1 - CURRENT\n          Checkmark hidden until results are ready\n          TO SHOW CHECKMARK: add class=\"rn-has-results\" and add the checkmark span\n        -->\n        <span class=\"rn-grid-item rn-current\" title=\"Stage 1 - currently viewing\">\n          <span class=\"rn-grid-num\">1<\/span><span class=\"rn-grid-type\">TTT<\/span>\n          <!-- CHECKMARK: add this when results are published -->\n          <!-- <span class=\"rn-check\">&#10003;<\/span> -->\n        <\/span>\n        \n        <!-- Stage 2 - No results yet -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-2-results\/\" title=\"Stage 2: Tarragona to Barcelona\">\n          <span class=\"rn-grid-num\">2<\/span><span class=\"rn-grid-type\">Hilly<\/span>\n        <\/a>\n        \n        <!-- Stage 3 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-3-results\/\" title=\"Stage 3: Granollers to Les Angles\">\n          <span class=\"rn-grid-num\">3<\/span><span class=\"rn-grid-type\">Mountain<\/span>\n        <\/a>\n        \n        <!-- Stage 4 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-4-results\/\" title=\"Stage 4: Carcassonne to Foix\">\n          <span class=\"rn-grid-num\">4<\/span><span class=\"rn-grid-type\">Hilly<\/span>\n        <\/a>\n        \n        <!-- Stage 5 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-5-results\/\" title=\"Stage 5: Lannemezan to Pau\">\n          <span class=\"rn-grid-num\">5<\/span><span class=\"rn-grid-type\">Flat<\/span>\n        <\/a>\n        \n        <!-- Stage 6 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-6-results\/\" title=\"Stage 6: Pau to Gavarnie-Gedre\">\n          <span class=\"rn-grid-num\">6<\/span><span class=\"rn-grid-type\">Summit<\/span>\n        <\/a>\n        \n        <!-- Stage 7 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-7-results\/\" title=\"Stage 7: Hagetmau to Bordeaux\">\n          <span class=\"rn-grid-num\">7<\/span><span class=\"rn-grid-type\">Flat<\/span>\n        <\/a>\n        \n        <!-- Stage 8 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-8-results\/\" title=\"Stage 8: Perigueux to Bergerac\">\n          <span class=\"rn-grid-num\">8<\/span><span class=\"rn-grid-type\">Flat<\/span>\n        <\/a>\n        \n        <!-- Stage 9 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-9-results\/\" title=\"Stage 9: Malemort to Ussel\">\n          <span class=\"rn-grid-num\">9<\/span><span class=\"rn-grid-type\">Hilly<\/span>\n        <\/a>\n        \n        <!-- Rest Day 1 -->\n        <span class=\"rn-grid-item rn-rest\" title=\"Rest Day 1 - July 13\">\n          <span class=\"rn-grid-num\">R<\/span><span class=\"rn-grid-type\">Jul 13<\/span>\n        <\/span>\n        \n        <!-- Stage 10 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-10-results\/\" title=\"Stage 10: Aurillac to Le Lioran\">\n          <span class=\"rn-grid-num\">10<\/span><span class=\"rn-grid-type\">Summit<\/span>\n        <\/a>\n        \n        <!-- Stage 11 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-11-results\/\" title=\"Stage 11: Vichy to Nevers\">\n          <span class=\"rn-grid-num\">11<\/span><span class=\"rn-grid-type\">Flat<\/span>\n        <\/a>\n        \n        <!-- Stage 12 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-12-results\/\" title=\"Stage 12: Magny-Cours to Chalon-sur-Saone\">\n          <span class=\"rn-grid-num\">12<\/span><span class=\"rn-grid-type\">Flat<\/span>\n        <\/a>\n        \n        <!-- Stage 13 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-13-results\/\" title=\"Stage 13: Dole to Belfort\">\n          <span class=\"rn-grid-num\">13<\/span><span class=\"rn-grid-type\">Hilly<\/span>\n        <\/a>\n        \n        <!-- Stage 14 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-14-results\/\" title=\"Stage 14: Mulhouse to Le Markstein\">\n          <span class=\"rn-grid-num\">14<\/span><span class=\"rn-grid-type\">Mountain<\/span>\n        <\/a>\n        \n        <!-- Stage 15 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-15-results\/\" title=\"Stage 15: Champagnole to Plateau de Solaison\">\n          <span class=\"rn-grid-num\">15<\/span><span class=\"rn-grid-type\">Summit<\/span>\n        <\/a>\n        \n        <!-- Rest Day 2 -->\n        <span class=\"rn-grid-item rn-rest\" title=\"Rest Day 2 - July 20\">\n          <span class=\"rn-grid-num\">R<\/span><span class=\"rn-grid-type\">Jul 20<\/span>\n        <\/span>\n        \n        <!-- Stage 16 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-16-results\/\" title=\"Stage 16: Evian to Thonon-les-Bains\">\n          <span class=\"rn-grid-num\">16<\/span><span class=\"rn-grid-type\">ITT<\/span>\n        <\/a>\n        \n        <!-- Stage 17 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-17-results\/\" title=\"Stage 17: Chambery to Voiron\">\n          <span class=\"rn-grid-num\">17<\/span><span class=\"rn-grid-type\">Flat<\/span>\n        <\/a>\n        \n        <!-- Stage 18 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-18-results\/\" title=\"Stage 18: Voiron to Orcieres-Merlette\">\n          <span class=\"rn-grid-num\">18<\/span><span class=\"rn-grid-type\">Summit<\/span>\n        <\/a>\n        \n        <!-- Stage 19 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-19-results\/\" title=\"Stage 19: Gap to Alpe d'Huez\">\n          <span class=\"rn-grid-num\">19<\/span><span class=\"rn-grid-type\">Summit<\/span>\n        <\/a>\n        \n        <!-- Stage 20 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-20-results\/\" title=\"Stage 20: Le Bourg-d'Oisans to Alpe d'Huez\">\n          <span class=\"rn-grid-num\">20<\/span><span class=\"rn-grid-type\">Queen<\/span>\n        <\/a>\n        \n        <!-- Stage 21 -->\n        <a class=\"rn-grid-item\" href=\"https:\/\/franceletour.com\/tour-de-france-2026-stage-21-results\/\" title=\"Stage 21: Thoiry to Paris Champs-Elysees\">\n          <span class=\"rn-grid-num\">21<\/span><span class=\"rn-grid-type\">Finale<\/span>\n        <\/a>\n        \n      <\/div>\n    <\/div>\n\n  <\/div>\n<\/div>\n\n\n<style>.wp-block-kadence-advancedheading.kt-adv-heading7783_348e86-2e, .wp-block-kadence-advancedheading.kt-adv-heading7783_348e86-2e[data-kb-block=\"kb-adv-heading7783_348e86-2e\"]{text-align:center;font-size:28px;font-style:normal;text-transform:uppercase;}.wp-block-kadence-advancedheading.kt-adv-heading7783_348e86-2e mark.kt-highlight, .wp-block-kadence-advancedheading.kt-adv-heading7783_348e86-2e[data-kb-block=\"kb-adv-heading7783_348e86-2e\"] mark.kt-highlight{font-style:normal;color:#f76a0c;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}.wp-block-kadence-advancedheading.kt-adv-heading7783_348e86-2e img.kb-inline-image, .wp-block-kadence-advancedheading.kt-adv-heading7783_348e86-2e[data-kb-block=\"kb-adv-heading7783_348e86-2e\"] img.kb-inline-image{width:150px;vertical-align:baseline;}<\/style>\n<h1 class=\"kt-adv-heading7783_348e86-2e wp-block-kadence-advancedheading\" data-kb-block=\"kb-adv-heading7783_348e86-2e\">Tour de France 2026 Stage 1 Results: Team Time Trial Winners in Barcelona<\/h1>\n\n\n\n<p class=\"has-text-align-center wp-block-paragraph\">All ranks updated.<\/p>\n\n\n    <div class=\"lct-full-results-page live-commentary-timeline\">\n\n\n        <!-- Podium -->\n                        <h2 class=\"lct-section-heading lct-fr-main-heading\">Tour de France 2026 Stage 1 Podium<\/h2>\n        <div class=\"lct-fr-podium-wrap\">\n            <div class=\"lct-podium\">\n                <!-- 2nd -->\n                <div class=\"lct-podium-step lct-podium-2\">\n                    <div class=\"lct-podium-rank\">2nd<\/div>\n                                        <img decoding=\"async\" src=\"https:\/\/franceletour.com\/wp-content\/uploads\/2026\/07\/filippo-ganna.png\" class=\"lct-podium-photo\" alt=\"\" title=\"\">                    <div class=\"lct-podium-gap\">+ 00h 00&#039; 08&#039;&#039;<\/div>\n                    <div class=\"lct-podium-name\">Filippo Ganna<\/div>\n                    <div class=\"lct-podium-team lct-dynamic-team\" data-rider=\"Filippo Ganna\" style=\"font-size:13px;color:#6b7280;line-height:1.2;\"><\/div>\n                <\/div>\n                <!-- 1st -->\n                <div class=\"lct-podium-step lct-podium-1\">\n                    <div class=\"lct-podium-rank\">\ud83c\udfc6 Winner<\/div>\n                                        <img decoding=\"async\" src=\"https:\/\/franceletour.com\/wp-content\/uploads\/2026\/07\/jonas-vingegaard-hansen.webp\" class=\"lct-podium-photo\" alt=\"\" title=\"\">                    <div class=\"lct-podium-gap\">00h 21&#039; 47&#039;&#039;<\/div>\n                    <div class=\"lct-podium-name\">Jonas Vingegaard<\/div>\n                    <div class=\"lct-podium-team lct-dynamic-team\" data-rider=\"Jonas Vingegaard\" style=\"font-size:14px;color:#6b7280;line-height:1.2;font-weight:500;\"><\/div>\n                <\/div>\n                <!-- 3rd -->\n                <div class=\"lct-podium-step lct-podium-3\">\n                    <div class=\"lct-podium-rank\">3rd<\/div>\n                                        <img decoding=\"async\" src=\"https:\/\/franceletour.com\/wp-content\/uploads\/2026\/07\/tadej-pogacar.png\" class=\"lct-podium-photo\" alt=\"\" title=\"\">                    <div class=\"lct-podium-gap\">+ 00h 00&#039; 12&#039;&#039;<\/div>\n                    <div class=\"lct-podium-name\">Tadej Poga\u010dar<\/div>\n                    <div class=\"lct-podium-team lct-dynamic-team\" data-rider=\"Tadej Poga\u010dar\" style=\"font-size:13px;color:#6b7280;line-height:1.2;\"><\/div>\n                <\/div>\n            <\/div>\n        <\/div>\n        <script>\n        document.addEventListener('lctRidersLoaded', function() {\n            if (typeof _lctRiderCache === 'undefined' || !Array.isArray(_lctRiderCache)) return;\n            \n            function normalizeForSearch(str) {\n                var s = str.toLowerCase().trim();\n                return s.normalize(\"NFD\").replace(\/[\\u0300-\\u036f]\/g, \"\").replace(\/[^a-z0-9]\/g, '');\n            }\n            \n            document.querySelectorAll('.lct-dynamic-team').forEach(function(el) {\n                var targetName = el.dataset.rider || '';\n                if (!targetName) return;\n                \n                var targetNorm = normalizeForSearch(targetName);\n                if (!targetNorm) return;\n                \n                var matched = null;\n                for (var i = 0; i < _lctRiderCache.length; i++) {\n                    var r = _lctRiderCache[i];\n                    if (!r.name) continue;\n                    var rowNorm = normalizeForSearch(r.name);\n                    \n                    \/\/ Simple partial\/word match\n                    var tWords = targetNorm.match(\/[a-z]+\/g) || [];\n                    var rWords = rowNorm.match(\/[a-z]+\/g) || [];\n                    var matchCount = 0;\n                    for (var j = 0; j < tWords.length; j++) {\n                        if (rWords.indexOf(tWords[j]) !== -1) matchCount++;\n                    }\n                    if (matchCount >= tWords.length || matchCount >= rWords.length) {\n                        matched = r;\n                        break;\n                    }\n                }\n                if (matched && matched.team) {\n                    el.innerHTML = '(' + matched.team + ')';\n                }\n            });\n        });\n        <\/script>\n        \n        \n        <!-- SEO H2 Heading (in place of old search bar) -->\n        <h2 class=\"lct-section-heading\" style=\"margin-top:20px; margin-bottom:10px; border-bottom:none; padding-bottom:0; font-size:24px;\">\n            Tour de France 2026 Stage 1 Classifications &amp; Results\n        <\/h2>\n\n                <div class=\"lct-master-tabs-container\" style=\"display:flex; justify-content:space-between; align-items:flex-end; border-bottom: 2px solid #e9ecef; margin-top: 10px; margin-bottom: 20px; flex-wrap:wrap; gap:10px;\">\n            <div class=\"lct-master-tabs\" role=\"tablist\" style=\"border-bottom:none; margin:0; padding:0; display:flex; gap:16px;\">\n                <button class=\"lct-master-tab lct-master-tab-active\" data-target=\"lct-fr-wrapper\" role=\"tab\">\n                    <h3 style=\"margin:0; font-size:inherit; font-weight:inherit; font-family:inherit; color:inherit; text-transform:inherit; line-height:inherit;\">Main Classifications<\/h3>\n                <\/button>\n                <button class=\"lct-master-tab\" data-target=\"lct-cr-wrapper\" role=\"tab\">\n                    <h3 style=\"margin:0; font-size:inherit; font-weight:inherit; font-family:inherit; color:inherit; text-transform:inherit; line-height:inherit;\">Complementary Results<\/h3>\n                <\/button>\n            <\/div>\n            <!-- Live Search -->\n            <div class=\"lct-fr-search-wrap\" style=\"flex:1; max-width:300px; min-width:200px; margin-bottom: 6px;\">\n                <input type=\"text\" id=\"lct-fr-search-input\" placeholder=\"Search rider or team...\" style=\"width:100%; padding:10px; border:1px solid var(--pcs-border); border-radius:4px; font-family: var(--pcs-font); font-size: 14px;\">\n            <\/div>\n        <\/div>\n        \n        <!-- Main Classifications Wrapper -->\n        <div id=\"lct-fr-wrapper\" class=\"lct-master-panel\" style=\"display:block;\">\n        \n        <!-- Main Ranking Tabs -->\n        <section id=\"lct-fr-rankings\" class=\"lct-rankings-tabs-section\" style=\"display:block;margin-top:16px;\">\n            <div class=\"lct-rank-tabs-nav\" role=\"tablist\">\n                                <button class=\"lct-rank-tab lct-rank-tab-active\"\n                    data-tab=\"fr-stage_ranking\" role=\"tab\">\n                    <svg class=\"lct-jersey-svg\" viewBox=\"0 0 32 28\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                        <path d=\"M11,3 Q16,7 21,3 L29,7 L27,12 L22,10 L22,25 L10,25 L10,10 L5,12 L3,7 Z\"\n                            fill=\"#e8001c\"\n                            stroke=\"#b50016\" stroke-width=\"0.5\"\/>\n                                                <path d=\"M12,3 Q16,6 20,3 Q18,8 16,8 Q14,8 12,3Z\" fill=\"rgba(255,255,255,0.25)\"\/>\n                    <\/svg>\n                    <span class=\"lct-rank-tab-label\">Stage<\/span>\n                <\/button>\n                                <button class=\"lct-rank-tab \"\n                    data-tab=\"fr-general_ranking\" role=\"tab\">\n                    <svg class=\"lct-jersey-svg\" viewBox=\"0 0 32 28\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                        <path d=\"M11,3 Q16,7 21,3 L29,7 L27,12 L22,10 L22,25 L10,25 L10,10 L5,12 L3,7 Z\"\n                            fill=\"#FFD700\"\n                            stroke=\"#e6c200\" stroke-width=\"0.5\"\/>\n                                                <path d=\"M12,3 Q16,6 20,3 Q18,8 16,8 Q14,8 12,3Z\" fill=\"rgba(255,255,255,0.25)\"\/>\n                    <\/svg>\n                    <span class=\"lct-rank-tab-label\">GC<\/span>\n                <\/button>\n                                <button class=\"lct-rank-tab \"\n                    data-tab=\"fr-points_ranking\" role=\"tab\">\n                    <svg class=\"lct-jersey-svg\" viewBox=\"0 0 32 28\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                        <path d=\"M11,3 Q16,7 21,3 L29,7 L27,12 L22,10 L22,25 L10,25 L10,10 L5,12 L3,7 Z\"\n                            fill=\"#00A651\"\n                            stroke=\"#008040\" stroke-width=\"0.5\"\/>\n                                                <path d=\"M12,3 Q16,6 20,3 Q18,8 16,8 Q14,8 12,3Z\" fill=\"rgba(255,255,255,0.25)\"\/>\n                    <\/svg>\n                    <span class=\"lct-rank-tab-label\">Points<\/span>\n                <\/button>\n                                <button class=\"lct-rank-tab \"\n                    data-tab=\"fr-kom_ranking\" role=\"tab\">\n                    <svg class=\"lct-jersey-svg\" viewBox=\"0 0 32 28\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                        <path d=\"M11,3 Q16,7 21,3 L29,7 L27,12 L22,10 L22,25 L10,25 L10,10 L5,12 L3,7 Z\"\n                            fill=\"white\"\n                            stroke=\"#ddd\" stroke-width=\"0.5\"\/>\n                                                <circle cx=\"13\" cy=\"13\" r=\"1.8\" fill=\"#e8001c\"\/>\n                        <circle cx=\"19\" cy=\"13\" r=\"1.8\" fill=\"#e8001c\"\/>\n                        <circle cx=\"16\" cy=\"19\" r=\"1.8\" fill=\"#e8001c\"\/>\n                                                <path d=\"M12,3 Q16,6 20,3 Q18,8 16,8 Q14,8 12,3Z\" fill=\"rgba(255,255,255,0.25)\"\/>\n                    <\/svg>\n                    <span class=\"lct-rank-tab-label\">KOM<\/span>\n                <\/button>\n                                <button class=\"lct-rank-tab \"\n                    data-tab=\"fr-youth_ranking\" role=\"tab\">\n                    <svg class=\"lct-jersey-svg\" viewBox=\"0 0 32 28\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                        <path d=\"M11,3 Q16,7 21,3 L29,7 L27,12 L22,10 L22,25 L10,25 L10,10 L5,12 L3,7 Z\"\n                            fill=\"white\"\n                            stroke=\"#1971c2\" stroke-width=\"0.5\"\/>\n                                                <path d=\"M12,3 Q16,6 20,3 Q18,8 16,8 Q14,8 12,3Z\" fill=\"rgba(255,255,255,0.25)\"\/>\n                    <\/svg>\n                    <span class=\"lct-rank-tab-label\">Youth<\/span>\n                <\/button>\n                                <button class=\"lct-rank-tab \"\n                    data-tab=\"fr-teams_ranking\" role=\"tab\">\n                    <svg class=\"lct-jersey-svg\" viewBox=\"0 0 32 28\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                        <path d=\"M11,3 Q16,7 21,3 L29,7 L27,12 L22,10 L22,25 L10,25 L10,10 L5,12 L3,7 Z\"\n                            fill=\"#1a1a2e\"\n                            stroke=\"#2d3a5e\" stroke-width=\"0.5\"\/>\n                                                <path d=\"M12,3 Q16,6 20,3 Q18,8 16,8 Q14,8 12,3Z\" fill=\"rgba(255,255,255,0.25)\"\/>\n                    <\/svg>\n                    <span class=\"lct-rank-tab-label\">Teams<\/span>\n                <\/button>\n                            <\/div>\n\n            <div class=\"lct-rank-panels\">\n                                <div id=\"lct-fr-stage_ranking\"\n                    class=\"lct-ranking-container lct-rank-panel lct-fr-panel\"\n                    style=\"\"\n                    role=\"tabpanel\">\n                    <div id=\"lct-fr-table-wrap-stage_ranking\" class=\"lct-fr-table-wrap\">\n                        <script>\n                        document.addEventListener('DOMContentLoaded', function() {\n                            const rawData = \"#TeamTime+TimeSpeedPCS PntUCI Pnt\\r\\n1 Team Visma | Lease a Bike21:47.8700:00\\r\\nVingegaard Jonas\\t\\t\\r\\nJorgenson Matteo\\t\\t\\r\\nArmirail Bruno\\t\\t\\r\\nCampenaerts Victor\\t\\t\\r\\nKuss Sepp\\t\\t\\r\\nAffini Edoardo\\t\\t\\r\\nHagenes Per Strand\\t\\t\\r\\nPiganzoli Davide\\t\\t\\r\\n2 Netcompany INEOS21:55.2000:08\\r\\nGanna Filippo\\t\\t\\r\\nKwiatkowski Micha\\u0142\\t\\t\\r\\nVauquelin K\\u00e9vin\\t\\t\\r\\nGodon Dorian\\t\\t\\r\\nArensman Thymen\\t\\t\\r\\nBernal Egan\\t\\t\\r\\nFoss Tobias\\t\\t\\r\\nTarling Joshua\\t\\t\\r\\n3 UAE Team Emirates - XRG21:59.1500:12\\r\\nPoga\\u010dar Tadej\\t\\t\\r\\ndel Toro Isaac\\t\\t\\r\\nWellens Tim\\t\\t\\r\\nMcNulty Brandon\\t\\t\\r\\nYates Adam\\t\\t\\r\\nVermeersch Florian\\t\\t\\r\\nPolitt Nils\\t\\t\\r\\nGro\\u00dfschartner Felix\\t\\t\\r\\n4 Lidl - Trek22:03.1400:16\\r\\nAyuso Juan\\t\\t\\r\\nPedersen Mads\\t\\t\\r\\nVacek Mathias\\t\\t\\r\\nSkjelmose Mattias\\t\\t\\r\\nSimmons Quinn\\t\\t\\r\\nGee-West Derek\\t\\t\\r\\nVerona Carlos\\t\\t\\r\\nSkuji\\u0146\\u0161 Toms\\t\\t\\r\\n5 Red Bull - BORA - hansgrohe22:06.0200:19\\r\\nEvenepoel Remco\\t\\t\\r\\nLipowitz Florian\\t\\t\\r\\nCattaneo Mattia\\t\\t\\r\\nVan Gils Maxim\\t\\t\\r\\nDenz Nico\\t\\t\\r\\nHindley Jai\\t\\t\\r\\nTratnik Jan\\t\\t\\r\\nvan Dijke Tim\\t\\t\\r\\n6 Decathlon CMA CGM Team22:26.1900:39\\r\\nKooij Olav\\t\\t\\r\\nBenoot Tiesj\\t\\t\\r\\nHoole Daan\\t\\t\\r\\nSeixas Paul\\t\\t\\r\\nRiccitello Matthew\\t\\t\\r\\nProdhomme Nicolas\\t\\t\\r\\nParet-Peintre Aur\\u00e9lien\\t\\t\\r\\nBol Cees\\t\\t\\r\\n7 Alpecin - Premier Tech22:26.2300:39\\r\\nPhilipsen Jasper\\t\\t\\r\\nvan der Poel Mathieu\\t\\t\\r\\nVerstrynge Emiel\\t\\t\\r\\nRickaert Jonas\\t\\t\\r\\nMarsman Tim\\t\\t\\r\\nDebruyne Ramses\\t\\t\\r\\nPlanckaert Edward\\t\\t\\r\\nDillier Silvan\\t\\t\\r\\n8 Groupama - FDJ United22:28.8200:41\\r\\nMartin Guillaume\\t\\t\\r\\nGr\\u00e9goire Romain\\t\\t\\r\\nBerthet Cl\\u00e9ment\\t\\t\\r\\nBraz Afonso Cl\\u00e9ment\\t\\t\\r\\nGermani Lorenzo\\t\\t\\r\\nPacher Quentin\\t\\t\\r\\nRusso Cl\\u00e9ment\\t\\t\\r\\nCostiou Ewen\\t\\t\\r\\n9 Bahrain - Victorious22:34.8100:47\\r\\nTiberi Antonio\\t\\t\\r\\nMartinez Lenny\\t\\t\\r\\nMohori\\u010d Matej\\t\\t\\r\\nVan Mechelen Vlad\\t\\t\\r\\nBauhaus Phil\\t\\t\\r\\nCaruso Damiano\\t\\t\\r\\nGradek Kamil\\t\\t\\r\\nStannard Robert\\t\\t\\r\\n10 Team Jayco AlUla22:38.0300:51\\r\\nMatthews Michael\\t\\t\\r\\nPlapp Luke\\t\\t\\r\\nAckermann Pascal\\t\\t\\r\\nO'Connor Ben\\t\\t\\r\\nSchmid Mauro\\t\\t\\r\\nO'Brien Kelland\\t\\t\\r\\nEngelhardt Felix\\t\\t\\r\\nDurbridge Luke\\t\\t\\r\\n11 EF Education - EasyPost22:44.1100:57\\r\\nHealy Ben\\t\\t\\r\\nAsgreen Kasper\\t\\t\\r\\nCarapaz Richard\\t\\t\\r\\nBaudin Alex\\t\\t\\r\\nQuinn Sean\\t\\t\\r\\nSteinhauser Georg\\t\\t\\r\\nWalker Max\\t\\t\\r\\nValgren Michael\\t\\t\\r\\n12 Pinarello Q36.5 Pro Cycling Team22:44.6500:57\\r\\nPidcock Tom\\t\\t\\r\\nWright Fred\\t\\t\\r\\nHermans Quinten\\t\\t\\r\\nMeurisse Xandro\\t\\t\\r\\nAzparren Xabier Mikel\\t\\t\\r\\nHarper Chris\\t\\t\\r\\nHowson Damien\\t\\t\\r\\nVan Moer Brent\\t\\t\\r\\n13 Soudal Quick-Step22:45.7900:58\\r\\nParet-Peintre Valentin\\t\\t\\r\\nMerlier Tim\\t\\t\\r\\nStuyven Jasper\\t\\t\\r\\nVan Wilder Ilan\\t\\t\\r\\nVervaeke Louis\\t\\t\\r\\nvan Baarle Dylan\\t\\t\\r\\nVan Lerberghe Bert\\t\\t\\r\\nEenkhoorn Pascal\\t\\t\\r\\n14 Uno-X Mobility22:47.0101:00\\r\\nCort Magnus\\t\\t\\r\\nJohannessen Tobias Halland\\t\\t\\r\\nSkaarseth Anders\\t\\t\\r\\nW\\u00e6renskjold S\\u00f8ren\\t\\t\\r\\nCharmig Anthon\\t\\t\\r\\nAbrahamsen Jonas\\t\\t\\r\\nTr\\u00e6en Torstein\\t\\t\\r\\nJohannessen Anders Halland\\t\\t\\r\\n15 TotalEnergies22:49.4901:02\\r\\nJegat Jordan\\t\\t\\r\\nDelettre Alexandre\\t\\t\\r\\nTurgis Anthony\\t\\t\\r\\nVercher Matt\\u00e9o\\t\\t\\r\\nLe Berre Mathis\\t\\t\\r\\nBreuillard Nicolas\\t\\t\\r\\nDelbove Joris\\t\\t\\r\\nGuernalec Thibault\\t\\t\\r\\n16 Caja Rural - Seguros RGA22:59.9301:12\\r\\nMolenaar Alex\\t\\t\\r\\nNicolau Joel\\t\\t\\r\\nBalderstone Abel\\t\\t\\r\\nBerwick Sebastian\\t\\t\\r\\nGaviria Fernando\\t\\t\\r\\nOldani Stefano\\t\\t\\r\\nOtruba Jakub\\t\\t\\r\\nParra Jos\\u00e9 F\\u00e9lix\\t\\t\\r\\n17 Tudor Pro Cycling Team23:01.6501:14\\r\\nAlaphilippe Julian\\t\\t\\r\\nStorer Michael\\t\\t\\r\\nTrentin Matteo\\t\\t\\r\\nPluimers Rick\\t\\t\\r\\nde Kleijn Arvid\\t\\t\\r\\nHaller Marco\\t\\t\\r\\nHirschi Marc\\t\\t\\r\\nVoisard Yannis\\t\\t\\r\\n18 NSN Cycling Team23:03.7501:16\\r\\nGirmay Biniam\\t\\t\\r\\nStewart Jake\\t\\t\\r\\nAskey Lewis\\t\\t\\r\\nNeilands Krists\\t\\t\\r\\nFrigo Marco\\t\\t\\r\\nLouvel Matis\\t\\t\\r\\nBennett George\\t\\t\\r\\nVan Asbroeck Tom\\t\\t\\r\\n19 Cofidis23:04.5501:17\\r\\nKirsch Alex\\t\\t\\r\\nFretin Milan\\t\\t\\r\\nPage Hugo\\t\\t\\r\\nAranburu Alex\\t\\t\\r\\nIzagirre Ion\\t\\t\\r\\nAllegaert Piet\\t\\t\\r\\nBiermans Jenthe\\t\\t\\r\\nThomas Benjamin\\t\\t\\r\\n20 Movistar Team23:05.9301:18\\r\\nUijtdebroeks Cian\\t\\t\\r\\nRubio Einer\\t\\t\\r\\nCastrillo Pablo\\t\\t\\r\\nGarc\\u00eda Pierna Ra\\u00fal\\t\\t\\r\\nRomo Javier\\t\\t\\r\\nOliveira Nelson\\t\\t\\r\\nCepeda Jefferson Alveiro\\t\\t\\r\\nHessmann Michel\\t\\t\\r\\n21 Lotto Intermarch\\u00e923:23.0701:36\\r\\nDe Lie Arnaud\\t\\t\\r\\nVan Eetvelt Lennert\\t\\t\\r\\nZimmermann Georg\\t\\t\\r\\nArtz Huub\\t\\t\\r\\nBerckmoes Jenno\\t\\t\\r\\nSlock Liam\\t\\t\\r\\nCraps Lars\\t\\t\\r\\nVeistroffer Baptiste\\t\\t\\r\\n22 Team Picnic PostNL23:42.9001:55\\r\\nBittner Pavel\\t\\t\\r\\nBarguil Warren\\t\\t\\r\\nvan den Broek Frank\\t\\t\\r\\nDhondt Robbe\\t\\t\\r\\nvan den Berg Julius\\t\\t\\r\\nM\\u00e4rkl Niklas\\t\\t\\r\\nBiesterbos Frits\\t\\t\\r\\nDegenkolb John\\t\\t\\r\\n23 XDS Astana Team24:05.9502:18\\r\\nTeunissen Mike\\t\\t\\r\\nHiguita Sergio\\t\\t\\r\\nTejada Harold\\t\\t\\r\\nKanter Max\\t\\t\\r\\nVinokurov Nicolas\\t\\t\\r\\nBallerini Davide\\t\\t\\r\\nGate Aaron\\t\\t\\r\\nVelasco Simone\";\n                            const container = document.getElementById('lct-fr-table-wrap-stage_ranking');\n                            const title = 'Stage';\n                            function doRender() {\n                                if (typeof lctRenderRankingIntoEl === 'function' && container) {\n                                    lctRenderRankingIntoEl(container, rawData, title);\n                                }\n                            }\n                            doRender(); \/\/ initial\n                            document.addEventListener('lctRidersLoaded', doRender); \/\/ update with flags\n                        });\n                        <\/script>\n                    <\/div><!-- .lct-fr-table-wrap -->\n                <\/div><!-- .lct-fr-panel -->\n                                <div id=\"lct-fr-general_ranking\"\n                    class=\"lct-ranking-container lct-rank-panel lct-fr-panel\"\n                    style=\"display:none;\"\n                    role=\"tabpanel\">\n                    <div id=\"lct-fr-table-wrap-general_ranking\" class=\"lct-fr-table-wrap\">\n                        <script>\n                        document.addEventListener('DOMContentLoaded', function() {\n                            const rawData = \"Rnk\\tRider\\tTeam\\tUCI\\t\\tTime\\r\\n1\\t Vingegaard Jonas\\r\\nTeam Visma | Lease a Bike\\t25\\t\\t21:47\\r\\n2\\t Ganna Filippo\\r\\nNetcompany INEOS\\t\\t\\t0:08\\r\\n3\\t Yates Adam\\r\\nUAE Team Emirates - XRG\\t\\t\\t0:12\\r\\n4\\t Wellens Tim\\r\\nUAE Team Emirates - XRG\\t\\t\\t,,\\r\\n5\\t Gro\\u00dfschartner Felix\\r\\nUAE Team Emirates - XRG\\t\\t\\t,,\\r\\n6\\t Vermeersch Florian\\r\\nUAE Team Emirates - XRG\\t\\t\\t,,\\r\\n7\\t McNulty Brandon\\r\\nUAE Team Emirates - XRG\\t\\t\\t,,\\r\\n8\\t Politt Nils\\r\\nUAE Team Emirates - XRG\\t\\t\\t,,\\r\\n9\\t Ayuso Juan\\r\\nUAE Team Emirates - XRG\\t\\t\\t,,\\r\\n10\\t Poga\\u010dar Tadej\\r\\nLidl - Trek\\t\\t\\t0:16\\r\\n11\\t Evenepoel Remco\\r\\nRed Bull - BORA - hansgrohe\\t\\t\\t0:19\\r\\n12\\t del Toro Isaac\\r\\nUAE Team Emirates - XRG\\t\\t\\t0:26\\r\\n13\\t Piganzoli Davide\\r\\nTeam Visma | Lease a Bike\\t\\t\\t0:28\\r\\n14\\t Lipowitz Florian\\r\\nRed Bull - BORA - hansgrohe\\t\\t\\t0:35\\r\\n15\\t Foss Tobias\\r\\nNetcompany INEOS\\t\\t\\t0:38\\r\\n16\\t Seixas Paul\\r\\nDecathlon CMA CGM Team\\t\\t\\t0:39\\r\\n17\\t van der Poel Mathieu\\r\\nAlpecin - Premier Tech\\t\\t\\t,,\\r\\n18\\t Gr\\u00e9goire Romain\\r\\nGroupama - FDJ United\\t\\t\\t0:41\\r\\n19\\t Tiberi Antonio\\r\\nBahrain - Victorious\\t\\t\\t0:47\\r\\n20\\t Riccitello Matthew\\r\\nDecathlon CMA CGM Team\\t\\t\\t0:50\\r\\n21\\t Martinez Lenny\\r\\nBahrain - Victorious\\t\\t\\t,,\\r\\n22\\t Matthews Michael\\r\\nTeam Jayco AlUla\\t\\t\\t0:51\\r\\n23\\t Baudin Alex\\r\\nEF Education - EasyPost\\t\\t\\t0:57\\r\\n24\\t Pidcock Tom\\r\\nPinarello Q36.5 Pro Cycling Team\\t\\t\\t,,\\r\\n25\\t Van Wilder Ilan\\r\\nSoudal Quick-Step\\t\\t\\t0:58\\r\\n26\\t Johannessen Tobias Halland\\r\\nUno-X Mobility\\t\\t\\t1:00\\r\\n27\\t Arensman Thymen\\r\\nNetcompany INEOS\\t\\t\\t1:01\\r\\n28\\t Jegat Jordan\\r\\nTotalEnergies\\t\\t\\t1:02\\r\\n29\\t Vacek Mathias\\r\\nLidl - Trek\\t\\t\\t1:12\\r\\n30\\t Molenaar Alex\\r\\nCaja Rural - Seguros RGA\\t\\t\\t,,\\r\\n31\\t Voisard Yannis\\r\\nTudor Pro Cycling Team\\t\\t\\t1:14\\r\\n32\\t Vauquelin K\\u00e9vin\\r\\nNetcompany INEOS\\t\\t\\t,,\\r\\n33\\t Bennett George\\r\\nNSN Cycling Team\\t\\t\\t1:16\\r\\n34\\t Izagirre Ion\\r\\nCofidis\\t\\t\\t1:17\\r\\n35\\t Garc\\u00eda Pierna Ra\\u00fal\\r\\nMovistar Team\\t\\t\\t1:18\\r\\n36\\t Alaphilippe Julian\\r\\nTudor Pro Cycling Team\\t\\t\\t1:25\\r\\n37\\t Tr\\u00e6en Torstein\\r\\nUno-X Mobility\\t\\t\\t1:29\\r\\n38\\t Steinhauser Georg\\r\\nEF Education - EasyPost\\t\\t\\t1:30\\r\\n39\\t Skjelmose Mattias\\r\\nLidl - Trek\\t\\t\\t1:33\\r\\n40\\t Van Eetvelt Lennert\\r\\nLotto Intermarch\\u00e9\\t\\t\\t1:36\\r\\n41\\t Carapaz Richard\\r\\nEF Education - EasyPost\\t\\t\\t,,\\r\\n42\\t Parra Jos\\u00e9 F\\u00e9lix\\r\\nCaja Rural - Seguros RGA\\t\\t\\t1:38\\r\\n43\\t Castrillo Pablo\\r\\nMovistar Team\\t\\t\\t1:51\\r\\n44\\t Cepeda Jefferson Alveiro\\r\\nMovistar Team\\t\\t\\t,,\\r\\n45\\t Balderstone Abel\\r\\nCaja Rural - Seguros RGA\\t\\t\\t1:52\\r\\n46\\t Uijtdebroeks Cian\\r\\nMovistar Team\\t\\t\\t1:53\\r\\n47\\t Dhondt Robbe\\r\\nTeam Picnic PostNL\\t\\t\\t1:55\\r\\n48\\t Plapp Luke\\r\\nTeam Jayco AlUla\\t\\t\\t1:57\\r\\n49\\t Kuss Sepp\\r\\nTeam Visma | Lease a Bike\\t\\t\\t1:58\\r\\n50\\t Paret-Peintre Aur\\u00e9lien\\r\\nDecathlon CMA CGM Team\\t\\t\\t2:02\\r\\n51\\t Gee-West Derek\\r\\nLidl - Trek\\t\\t\\t2:03\\r\\n52\\t Van Gils Maxim\\r\\nRed Bull - BORA - hansgrohe\\t\\t\\t2:04\\r\\n53\\t van Baarle Dylan\\r\\nSoudal Quick-Step\\t\\t\\t2:06\\r\\n54\\t Le Berre Mathis\\r\\nTotalEnergies\\t\\t\\t,,\\r\\n55\\t Quinn Sean\\r\\nEF Education - EasyPost\\t\\t\\t2:08\\r\\n56\\t Godon Dorian\\r\\nNetcompany INEOS\\t\\t\\t2:10\\r\\n57\\t Berckmoes Jenno\\r\\nLotto Intermarch\\u00e9\\t\\t\\t,,\\r\\n58\\t Verstrynge Emiel\\r\\nAlpecin - Premier Tech\\t\\t\\t2:11\\r\\n59\\t Tarling Joshua\\r\\nNetcompany INEOS\\t\\t\\t2:14\\r\\n60\\t Higuita Sergio\\r\\nXDS Astana Team\\t\\t\\t2:18\\r\\n61\\t Hindley Jai\\r\\nRed Bull - BORA - hansgrohe\\t\\t\\t2:24\\r\\n62\\t Hirschi Marc\\r\\nTudor Pro Cycling Team\\t\\t\\t2:25\\r\\n63\\t Braz Afonso Cl\\u00e9ment\\r\\nGroupama - FDJ United\\t\\t\\t2:30\\r\\n64\\t Jorgenson Matteo\\r\\nTeam Visma | Lease a Bike\\t\\t\\t,,\\r\\n65\\t van den Broek Frank\\r\\nTeam Picnic PostNL\\t\\t\\t2:33\\r\\n66\\t Hessmann Michel\\r\\nMovistar Team\\t\\t\\t2:36\\r\\n67\\t Oliveira Nelson\\r\\nMovistar Team\\t\\t\\t,,\\r\\n68\\t Vercher Matt\\u00e9o\\r\\nTotalEnergies\\t\\t\\t2:37\\r\\n69\\t Breuillard Nicolas\\r\\nTotalEnergies\\t\\t\\t,,\\r\\n70\\t Kirsch Alex\\r\\nCofidis\\t\\t\\t2:38\\r\\n71\\t Debruyne Ramses\\r\\nAlpecin - Premier Tech\\t\\t\\t2:40\\r\\n72\\t Hermans Quinten\\r\\nPinarello Q36.5 Pro Cycling Team\\t\\t\\t2:43\\r\\n73\\t Tejada Harold\\r\\nXDS Astana Team\\t\\t\\t2:46\\r\\n74\\t Stuyven Jasper\\r\\nSoudal Quick-Step\\t\\t\\t,,\\r\\n75\\t Paret-Peintre Valentin\\r\\nSoudal Quick-Step\\t\\t\\t,,\\r\\n76\\t Romo Javier\\r\\nMovistar Team\\t\\t\\t,,\\r\\n77\\t Kwiatkowski Micha\\u0142\\r\\nNetcompany INEOS\\t\\t\\t3:00\\r\\n78\\t Biesterbos Frits\\r\\nTeam Picnic PostNL\\t\\t\\t3:05\\r\\n79\\t Bittner Pavel\\r\\nTeam Picnic PostNL\\t\\t\\t,,\\r\\n80\\t Barguil Warren\\r\\nTeam Picnic PostNL\\t\\t\\t,,\\r\\n81\\t Degenkolb John\\r\\nTeam Picnic PostNL\\t\\t\\t,,\\r\\n82\\t van den Berg Julius\\r\\nTeam Picnic PostNL\\t\\t\\t,,\\r\\n83\\t Bernal Egan\\r\\nNetcompany INEOS\\t\\t\\t3:06\\r\\n84\\t Girmay Biniam\\r\\nNSN Cycling Team\\t\\t\\t3:10\\r\\n85\\t Marsman Tim\\r\\nAlpecin - Premier Tech\\t\\t\\t,,\\r\\n86\\t Kanter Max\\r\\nXDS Astana Team\\t\\t\\t,,\\r\\n87\\t Healy Ben\\r\\nEF Education - EasyPost\\t\\t\\t3:11\\r\\n88\\t Asgreen Kasper\\r\\nEF Education - EasyPost\\t\\t\\t,,\\r\\n89\\t Caruso Damiano\\r\\nBahrain - Victorious\\t\\t\\t3:12\\r\\n90\\t Charmig Anthon\\r\\nUno-X Mobility\\t\\t\\t,,\\r\\n91\\t Van Mechelen Vlad\\r\\nBahrain - Victorious\\t\\t\\t3:13\\r\\n92\\t Frigo Marco\\r\\nNSN Cycling Team\\t\\t\\t3:14\\r\\n93\\t Neilands Krists\\r\\nNSN Cycling Team\\t\\t\\t,,\\r\\n94\\t Van Asbroeck Tom\\r\\nNSN Cycling Team\\t\\t\\t,,\\r\\n95\\t Askey Lewis\\r\\nNSN Cycling Team\\t\\t\\t,,\\r\\n96\\t Thomas Benjamin\\r\\nCofidis\\t\\t\\t3:15\\r\\n97\\t Russo Cl\\u00e9ment\\r\\nGroupama - FDJ United\\t\\t\\t,,\\r\\n98\\t Germani Lorenzo\\r\\nGroupama - FDJ United\\t\\t\\t,,\\r\\n99\\t Costiou Ewen\\r\\nGroupama - FDJ United\\t\\t\\t,,\\r\\n100\\t M\\u00e4rkl Niklas\\r\\nTeam Picnic PostNL\\t\\t\\t3:16\\r\\n101\\t Pacher Quentin\\r\\nGroupama - FDJ United\\t\\t\\t3:18\\r\\n102\\t Benoot Tiesj\\r\\nDecathlon CMA CGM Team\\t\\t\\t3:19\\r\\n103\\t Howson Damien\\r\\nPinarello Q36.5 Pro Cycling Team\\t\\t\\t3:21\\r\\n104\\t Wright Fred\\r\\nPinarello Q36.5 Pro Cycling Team\\t\\t\\t3:22\\r\\n105\\t Rubio Einer\\r\\nMovistar Team\\t\\t\\t3:25\\r\\n106\\t Storer Michael\\r\\nTudor Pro Cycling Team\\t\\t\\t3:27\\r\\n107\\t Vervaeke Louis\\r\\nSoudal Quick-Step\\t\\t\\t3:28\\r\\n108\\t Armirail Bruno\\r\\nTeam Visma | Lease a Bike\\t\\t\\t,,\\r\\n109\\t Campenaerts Victor\\r\\nTeam Visma | Lease a Bike\\t\\t\\t,,\\r\\n110\\t Artz Huub\\r\\nLotto Intermarch\\u00e9\\t\\t\\t3:29\\r\\n111\\t Meurisse Xandro\\r\\nPinarello Q36.5 Pro Cycling Team\\t\\t\\t3:30\\r\\n112\\t Azparren Xabier Mikel\\r\\nPinarello Q36.5 Pro Cycling Team\\t\\t\\t,,\\r\\n113\\t Berthet Cl\\u00e9ment\\r\\nGroupama - FDJ United\\t\\t\\t3:34\\r\\n114\\t Martin Guillaume\\r\\nGroupama - FDJ United\\t\\t\\t,,\\r\\n115\\t Stewart Jake\\r\\nNSN Cycling Team\\t\\t\\t3:36\\r\\n116\\t Oldani Stefano\\r\\nCaja Rural - Seguros RGA\\t\\t\\t3:38\\r\\n117\\t Berwick Sebastian\\r\\nCaja Rural - Seguros RGA\\t\\t\\t,,\\r\\n118\\t Delettre Alexandre\\r\\nTotalEnergies\\t\\t\\t3:41\\r\\n119\\t Walker Max\\r\\nEF Education - EasyPost\\t\\t\\t3:43\\r\\n120\\t Pluimers Rick\\r\\nTudor Pro Cycling Team\\t\\t\\t3:45\\r\\n121\\t de Kleijn Arvid\\r\\nTudor Pro Cycling Team\\t\\t\\t,,\\r\\n122\\t Johannessen Anders Halland\\r\\nUno-X Mobility\\t\\t\\t3:50\\r\\n123\\t Aranburu Alex\\r\\nCofidis\\t\\t\\t3:54\\r\\n124\\t Abrahamsen Jonas\\r\\nUno-X Mobility\\t\\t\\t3:55\\r\\n125\\t Cort Magnus\\r\\nUno-X Mobility\\t\\t\\t,,\\r\\n126\\t Louvel Matis\\r\\nNSN Cycling Team\\t\\t\\t,,\\r\\n127\\t Mohori\\u010d Matej\\r\\nBahrain - Victorious\\t\\t\\t3:56\\r\\n128\\t Planckaert Edward\\r\\nAlpecin - Premier Tech\\t\\t\\t3:58\\r\\n129\\t Skaarseth Anders\\r\\nUno-X Mobility\\t\\t\\t3:59\\r\\n130\\t Prodhomme Nicolas\\r\\nDecathlon CMA CGM Team\\t\\t\\t4:01\\r\\n131\\t Turgis Anthony\\r\\nTotalEnergies\\t\\t\\t4:03\\r\\n132\\t Gaviria Fernando\\r\\nCaja Rural - Seguros RGA\\t\\t\\t4:05\\r\\n133\\t Cattaneo Mattia\\r\\nRed Bull - BORA - hansgrohe\\t\\t\\t4:06\\r\\n134\\t Tratnik Jan\\r\\nRed Bull - BORA - hansgrohe\\t\\t\\t,,\\r\\n135\\t Zimmermann Georg\\r\\nLotto Intermarch\\u00e9\\t\\t\\t,,\\r\\n136\\t Craps Lars\\r\\nLotto Intermarch\\u00e9\\t\\t\\t4:08\\r\\n137\\t Slock Liam\\r\\nLotto Intermarch\\u00e9\\t\\t\\t,,\\r\\n138\\t Veistroffer Baptiste\\r\\nLotto Intermarch\\u00e9\\t\\t\\t,,\\r\\n139\\t De Lie Arnaud\\r\\nLotto Intermarch\\u00e9\\t\\t\\t4:09\\r\\n140\\t Biermans Jenthe\\r\\nCofidis\\t\\t\\t4:10\\r\\n141\\t Page Hugo\\r\\nCofidis\\t\\t\\t,,\\r\\n142\\t Kooij Olav\\r\\nDecathlon CMA CGM Team\\t\\t\\t4:12\\r\\n143\\t Hoole Daan\\r\\nDecathlon CMA CGM Team\\t\\t\\t,,\\r\\n144\\t Otruba Jakub\\r\\nCaja Rural - Seguros RGA\\t\\t\\t,,\\r\\n145\\t Stannard Robert\\r\\nBahrain - Victorious\\t\\t\\t4:15\\r\\n146\\t W\\u00e6renskjold S\\u00f8ren\\r\\nUno-X Mobility\\t\\t\\t,,\\r\\n147\\t Skuji\\u0146\\u0161 Toms\\r\\nLidl - Trek\\t\\t\\t4:16\\r\\n148\\t Harper Chris\\r\\nPinarello Q36.5 Pro Cycling Team\\t\\t\\t4:21\\r\\n149\\t Verona Carlos\\r\\nLidl - Trek\\t\\t\\t4:22\\r\\n150\\t Pedersen Mads\\r\\nLidl - Trek\\t\\t\\t,,\\r\\n151\\t Hagenes Per Strand\\r\\nTeam Visma | Lease a Bike\\t\\t\\t4:23\\r\\n152\\t Affini Edoardo\\r\\nTeam Visma | Lease a Bike\\t\\t\\t,,\\r\\n153\\t Simmons Quinn\\r\\nLidl - Trek\\t\\t\\t,,\\r\\n154\\t Eenkhoorn Pascal\\r\\nSoudal Quick-Step\\t\\t\\t4:26\\r\\n155\\t Van Moer Brent\\r\\nPinarello Q36.5 Pro Cycling Team\\t\\t\\t4:27\\r\\n156\\t Nicolau Joel\\r\\nCaja Rural - Seguros RGA\\t\\t\\t4:28\\r\\n157\\t Bol Cees\\r\\nDecathlon CMA CGM Team\\t\\t\\t4:31\\r\\n158\\t Fretin Milan\\r\\nCofidis\\t\\t\\t4:32\\r\\n159\\t O'Connor Ben\\r\\nTeam Jayco AlUla\\t\\t\\t4:33\\r\\n160\\t O'Brien Kelland\\r\\nTeam Jayco AlUla\\t\\t\\t,,\\r\\n161\\t Engelhardt Felix\\r\\nTeam Jayco AlUla\\t\\t\\t,,\\r\\n162\\t Delbove Joris\\r\\nTotalEnergies\\t\\t\\t4:34\\r\\n163\\t Schmid Mauro\\r\\nTeam Jayco AlUla\\t\\t\\t4:35\\r\\n164\\t Gradek Kamil\\r\\nBahrain - Victorious\\t\\t\\t4:37\\r\\n165\\t Bauhaus Phil\\r\\nBahrain - Victorious\\t\\t\\t,,\\r\\n166\\t Gate Aaron\\r\\nXDS Astana Team\\t\\t\\t,,\\r\\n167\\t Teunissen Mike\\r\\nXDS Astana Team\\t\\t\\t4:46\\r\\n168\\t Ballerini Davide\\r\\nXDS Astana Team\\t\\t\\t,,\\r\\n169\\t Van Lerberghe Bert\\r\\nSoudal Quick-Step\\t\\t\\t4:49\\r\\n170\\t Merlier Tim\\r\\nSoudal Quick-Step\\t\\t\\t,,\\r\\n171\\t Ackermann Pascal\\r\\nTeam Jayco AlUla\\t\\t\\t4:51\\r\\n172\\t Durbridge Luke\\r\\nTeam Jayco AlUla\\t\\t\\t,,\\r\\n173\\t Guernalec Thibault\\r\\nTotalEnergies\\t\\t\\t4:52\\r\\n174\\t Vinokurov Nicolas\\r\\nXDS Astana Team\\t\\t\\t4:54\\r\\n175\\t Trentin Matteo\\r\\nTudor Pro Cycling Team\\t\\t\\t5:06\\r\\n176\\t Haller Marco\\r\\nTudor Pro Cycling Team\\t\\t\\t,,\\r\\n177\\t Philipsen Jasper\\r\\nAlpecin - Premier Tech\\t\\t\\t5:07\\r\\n178\\t Dillier Silvan\\r\\nAlpecin - Premier Tech\\t\\t\\t,,\\r\\n179\\t Rickaert Jonas\\r\\nAlpecin - Premier Tech\\t\\t\\t5:08\\r\\n180\\t Valgren Michael\\r\\nEF Education - EasyPost\\t\\t\\t,,\\r\\n181\\t Denz Nico\\r\\nRed Bull - BORA - hansgrohe\\t\\t\\t5:13\\r\\n182\\t van Dijke Tim\\r\\nRed Bull - BORA - hansgrohe\\t\\t\\t5:17\\r\\n183\\t Allegaert Piet\\r\\nCofidis\\t\\t\\t5:33\\r\\n184\\t Velasco Simone\\r\\nXDS Astana Team\\t\\t\\t5:58\";\n                            const container = document.getElementById('lct-fr-table-wrap-general_ranking');\n                            const title = 'GC';\n                            function doRender() {\n                                if (typeof lctRenderRankingIntoEl === 'function' && container) {\n                                    lctRenderRankingIntoEl(container, rawData, title);\n                                }\n                            }\n                            doRender(); \/\/ initial\n                            document.addEventListener('lctRidersLoaded', doRender); \/\/ update with flags\n                        });\n                        <\/script>\n                    <\/div><!-- .lct-fr-table-wrap -->\n                <\/div><!-- .lct-fr-panel -->\n                                <div id=\"lct-fr-points_ranking\"\n                    class=\"lct-ranking-container lct-rank-panel lct-fr-panel\"\n                    style=\"display:none;\"\n                    role=\"tabpanel\">\n                    <div id=\"lct-fr-table-wrap-points_ranking\" class=\"lct-fr-table-wrap\">\n                        <script>\n                        document.addEventListener('DOMContentLoaded', function() {\n                            const rawData = \"Rnk\\tRider\\tTeam\\r\\n1\\t Bernal Egan\\r\\nNetcompany INEOS\";\n                            const container = document.getElementById('lct-fr-table-wrap-points_ranking');\n                            const title = 'Points';\n                            function doRender() {\n                                if (typeof lctRenderRankingIntoEl === 'function' && container) {\n                                    lctRenderRankingIntoEl(container, rawData, title);\n                                }\n                            }\n                            doRender(); \/\/ initial\n                            document.addEventListener('lctRidersLoaded', doRender); \/\/ update with flags\n                        });\n                        <\/script>\n                    <\/div><!-- .lct-fr-table-wrap -->\n                <\/div><!-- .lct-fr-panel -->\n                                <div id=\"lct-fr-kom_ranking\"\n                    class=\"lct-ranking-container lct-rank-panel lct-fr-panel\"\n                    style=\"display:none;\"\n                    role=\"tabpanel\">\n                    <div id=\"lct-fr-table-wrap-kom_ranking\" class=\"lct-fr-table-wrap\">\n                        <script>\n                        document.addEventListener('DOMContentLoaded', function() {\n                            const rawData = \"Rnk\\tRider\\tTeam\\r\\n1\\t Poga\\u010dar Tadej\\r\\nUAE Team Emirates - XRG\";\n                            const container = document.getElementById('lct-fr-table-wrap-kom_ranking');\n                            const title = 'KOM';\n                            function doRender() {\n                                if (typeof lctRenderRankingIntoEl === 'function' && container) {\n                                    lctRenderRankingIntoEl(container, rawData, title);\n                                }\n                            }\n                            doRender(); \/\/ initial\n                            document.addEventListener('lctRidersLoaded', doRender); \/\/ update with flags\n                        });\n                        <\/script>\n                    <\/div><!-- .lct-fr-table-wrap -->\n                <\/div><!-- .lct-fr-panel -->\n                                <div id=\"lct-fr-youth_ranking\"\n                    class=\"lct-ranking-container lct-rank-panel lct-fr-panel\"\n                    style=\"display:none;\"\n                    role=\"tabpanel\">\n                    <div id=\"lct-fr-table-wrap-youth_ranking\" class=\"lct-fr-table-wrap\">\n                        <script>\n                        document.addEventListener('DOMContentLoaded', function() {\n                            const rawData = \"Rnk\\tRider\\tTeam\\tTime\\r\\n1\\t Ayuso Juan\\r\\nLidl - Trek\\t22:03\\r\\n2\\t del Toro Isaac\\r\\nUAE Team Emirates - XRG\\t0:10\\r\\n3\\t Piganzoli Davide\\r\\nTeam Visma | Lease a Bike\\t0:12\\r\\n4\\t Seixas Paul\\r\\nDecathlon CMA CGM Team\\t0:23\\r\\n5\\t Gr\\u00e9goire Romain\\r\\nGroupama - FDJ United\\t0:25\\r\\n6\\t Tiberi Antonio\\r\\nBahrain - Victorious\\t0:31\\r\\n7\\t Riccitello Matthew\\r\\nDecathlon CMA CGM Team\\t0:34\\r\\n8\\t Baudin Alex\\r\\nBahrain - Victorious\\t,,\\r\\n9\\t Martinez Lenny\\r\\nEF Education - EasyPost\\t0:41\\r\\n10\\t Vacek Mathias\\r\\nLidl - Trek\\t0:56\\r\\n11\\t Vauquelin K\\u00e9vin\\r\\nNetcompany INEOS\\t0:58\\r\\n12\\t Garc\\u00eda Pierna Ra\\u00fal\\r\\nMovistar Team\\t1:02\\r\\n13\\t Steinhauser Georg\\r\\nEF Education - EasyPost\\t1:14\\r\\n14\\t Van Eetvelt Lennert\\r\\nLotto Intermarch\\u00e9\\t1:20\\r\\n15\\t Uijtdebroeks Cian\\r\\nMovistar Team\\t1:35\\r\\n16\\t Castrillo Pablo\\r\\nMovistar Team\\t1:37\\r\\n17\\t Dhondt Robbe\\r\\nTeam Picnic PostNL\\t1:39\\r\\n18\\t Le Berre Mathis\\r\\nTotalEnergies\\t1:50\\r\\n19\\t Berckmoes Jenno\\r\\nLotto Intermarch\\u00e9\\t1:54\\r\\n20\\t Verstrynge Emiel\\r\\nAlpecin - Premier Tech\\t1:55\\r\\n21\\t Tarling Joshua\\r\\nNetcompany INEOS\\t1:58\\r\\n22\\t Hessmann Michel\\r\\nMovistar Team\\t2:20\\r\\n23\\t Vercher Matt\\u00e9o\\r\\nTotalEnergies\\t2:21\\r\\n24\\t Debruyne Ramses\\r\\nAlpecin - Premier Tech\\t2:24\\r\\n25\\t Paret-Peintre Valentin\\r\\nSoudal Quick-Step\\t2:30\\r\\n26\\t Biesterbos Frits\\r\\nTeam Picnic PostNL\\t2:49\\r\\n27\\t Bittner Pavel\\r\\nTeam Picnic PostNL\\t,,\\r\\n28\\t Van Mechelen Vlad\\r\\nBahrain - Victorious\\t2:57\\r\\n29\\t Askey Lewis\\r\\nNSN Cycling Team\\t2:58\\r\\n30\\t Germani Lorenzo\\r\\nGroupama - FDJ United\\t2:59\\r\\n31\\t Costiou Ewen\\r\\nGroupama - FDJ United\\t,,\\r\\n32\\t Artz Huub\\r\\nLotto Intermarch\\u00e9\\t3:13\\r\\n33\\t Walker Max\\r\\nEF Education - EasyPost\\t3:27\\r\\n34\\t Craps Lars\\r\\nLotto Intermarch\\u00e9\\t3:52\\r\\n35\\t De Lie Arnaud\\r\\nLotto Intermarch\\u00e9\\t3:53\\r\\n36\\t Page Hugo\\r\\nCofidis\\t3:54\\r\\n37\\t Kooij Olav\\r\\nDecathlon CMA CGM Team\\t3:56\\r\\n38\\t Hagenes Per Strand\\r\\nTeam Visma | Lease a Bike\\t4:07\\r\\n39\\t Simmons Quinn\\r\\nLidl - Trek\\t,,\\r\\n40\\t Fretin Milan\\r\\nCofidis\\t4:16\\r\\n41\\t Vinokurov Nicolas\\r\\nXDS Astana Team\\t4:38\";\n                            const container = document.getElementById('lct-fr-table-wrap-youth_ranking');\n                            const title = 'Youth';\n                            function doRender() {\n                                if (typeof lctRenderRankingIntoEl === 'function' && container) {\n                                    lctRenderRankingIntoEl(container, rawData, title);\n                                }\n                            }\n                            doRender(); \/\/ initial\n                            document.addEventListener('lctRidersLoaded', doRender); \/\/ update with flags\n                        });\n                        <\/script>\n                    <\/div><!-- .lct-fr-table-wrap -->\n                <\/div><!-- .lct-fr-panel -->\n                                <div id=\"lct-fr-teams_ranking\"\n                    class=\"lct-ranking-container lct-rank-panel lct-fr-panel\"\n                    style=\"display:none;\"\n                    role=\"tabpanel\">\n                    <div id=\"lct-fr-table-wrap-teams_ranking\" class=\"lct-fr-table-wrap\">\n                        <script>\n                        document.addEventListener('DOMContentLoaded', function() {\n                            const rawData = \"Rnk\\tRider\\tTeam\\tTime\\r\\n1\\t Ayuso Juan\\r\\nLidl - Trek\\t22:03\\r\\n2\\t del Toro Isaac\\r\\nUAE Team Emirates - XRG\\t0:10\\r\\n3\\t Piganzoli Davide\\r\\nTeam Visma | Lease a Bike\\t0:12\\r\\n4\\t Seixas Paul\\r\\nDecathlon CMA CGM Team\\t0:23\\r\\n5\\t Gr\\u00e9goire Romain\\r\\nGroupama - FDJ United\\t0:25\\r\\n6\\t Tiberi Antonio\\r\\nBahrain - Victorious\\t0:31\\r\\n7\\t Riccitello Matthew\\r\\nDecathlon CMA CGM Team\\t0:34\\r\\n8\\t Baudin Alex\\r\\nBahrain - Victorious\\t,,\\r\\n9\\t Martinez Lenny\\r\\nEF Education - EasyPost\\t0:41\\r\\n10\\t Vacek Mathias\\r\\nLidl - Trek\\t0:56\\r\\n11\\t Vauquelin K\\u00e9vin\\r\\nNetcompany INEOS\\t0:58\\r\\n12\\t Garc\\u00eda Pierna Ra\\u00fal\\r\\nMovistar Team\\t1:02\\r\\n13\\t Steinhauser Georg\\r\\nEF Education - EasyPost\\t1:14\\r\\n14\\t Van Eetvelt Lennert\\r\\nLotto Intermarch\\u00e9\\t1:20\\r\\n15\\t Uijtdebroeks Cian\\r\\nMovistar Team\\t1:35\\r\\n16\\t Castrillo Pablo\\r\\nMovistar Team\\t1:37\\r\\n17\\t Dhondt Robbe\\r\\nTeam Picnic PostNL\\t1:39\\r\\n18\\t Le Berre Mathis\\r\\nTotalEnergies\\t1:50\\r\\n19\\t Berckmoes Jenno\\r\\nLotto Intermarch\\u00e9\\t1:54\\r\\n20\\t Verstrynge Emiel\\r\\nAlpecin - Premier Tech\\t1:55\\r\\n21\\t Tarling Joshua\\r\\nNetcompany INEOS\\t1:58\\r\\n22\\t Hessmann Michel\\r\\nMovistar Team\\t2:20\\r\\n23\\t Vercher Matt\\u00e9o\\r\\nTotalEnergies\\t2:21\\r\\n24\\t Debruyne Ramses\\r\\nAlpecin - Premier Tech\\t2:24\\r\\n25\\t Paret-Peintre Valentin\\r\\nSoudal Quick-Step\\t2:30\\r\\n26\\t Biesterbos Frits\\r\\nTeam Picnic PostNL\\t2:49\\r\\n27\\t Bittner Pavel\\r\\nTeam Picnic PostNL\\t,,\\r\\n28\\t Van Mechelen Vlad\\r\\nBahrain - Victorious\\t2:57\\r\\n29\\t Askey Lewis\\r\\nNSN Cycling Team\\t2:58\\r\\n30\\t Germani Lorenzo\\r\\nGroupama - FDJ United\\t2:59\\r\\n31\\t Costiou Ewen\\r\\nGroupama - FDJ United\\t,,\\r\\n32\\t Artz Huub\\r\\nLotto Intermarch\\u00e9\\t3:13\\r\\n33\\t Walker Max\\r\\nEF Education - EasyPost\\t3:27\\r\\n34\\t Craps Lars\\r\\nLotto Intermarch\\u00e9\\t3:52\\r\\n35\\t De Lie Arnaud\\r\\nLotto Intermarch\\u00e9\\t3:53\\r\\n36\\t Page Hugo\\r\\nCofidis\\t3:54\\r\\n37\\t Kooij Olav\\r\\nDecathlon CMA CGM Team\\t3:56\\r\\n38\\t Hagenes Per Strand\\r\\nTeam Visma | Lease a Bike\\t4:07\\r\\n39\\t Simmons Quinn\\r\\nLidl - Trek\\t,,\\r\\n40\\t Fretin Milan\\r\\nCofidis\\t4:16\\r\\n41\\t Vinokurov Nicolas\\r\\nXDS Astana Team\\t4:38\";\n                            const container = document.getElementById('lct-fr-table-wrap-teams_ranking');\n                            const title = 'Teams';\n                            function doRender() {\n                                if (typeof lctRenderRankingIntoEl === 'function' && container) {\n                                    lctRenderRankingIntoEl(container, rawData, title);\n                                }\n                            }\n                            doRender(); \/\/ initial\n                            document.addEventListener('lctRidersLoaded', doRender); \/\/ update with flags\n                        });\n                        <\/script>\n                    <\/div><!-- .lct-fr-table-wrap -->\n                <\/div><!-- .lct-fr-panel -->\n                            <\/div>\n        <\/section>\n\n        <\/div> <!-- close lct-fr-wrapper -->\n\n                <!-- Complementary Results Wrapper -->\n        <div id=\"lct-cr-wrapper\" class=\"lct-master-panel\" style=\"display:none;\">\n        \n        <section id=\"lct-cr-rankings\" class=\"lct-rankings-tabs-section\" style=\"display:block;margin-top:16px;\">\n            <div class=\"lct-rank-tabs-nav lct-cr-tabs-nav\" role=\"tablist\">\n                                <button class=\"lct-cr-tab lct-cr-tab-active\"\n                    data-tab=\"cr-0\" role=\"tab\">\n                    <span class=\"lct-cr-tab-label\">Youth day classification<\/span>\n                <\/button>\n                                <button class=\"lct-cr-tab \"\n                    data-tab=\"cr-1\" role=\"tab\">\n                    <span class=\"lct-cr-tab-label\">Team day classification<\/span>\n                <\/button>\n                            <\/div>\n\n            <div class=\"lct-rank-panels\">\n                                <div id=\"lct-cr-0\"\n                    class=\"lct-ranking-container lct-rank-panel lct-cr-panel\"\n                    style=\"\"\n                    role=\"tabpanel\">\n                    <div id=\"lct-cr-table-wrap-0\" class=\"lct-fr-table-wrap\">\n                        <script>\n                        document.addEventListener('DOMContentLoaded', function() {\n                            const rawData = \"Rnk\\tRider\\tTeam\\tTime\\n1\\t AYUSO Juan\\tLidl - Trek\\t22:03\\n2\\t DEL TORO Isaac\\tUAE Team Emirates - XRG\\t0:10\\n3\\t PIGANZOLI Davide\\tTeam Visma | Lease a Bike\\t0:12\\n4\\t SEIXAS Paul\\tDecathlon CMA CGM Team\\t0:23\\n5\\t GR\\u00c9GOIRE Romain\\tGroupama - FDJ United\\t0:25\\n6\\t TIBERI Antonio\\tBahrain - Victorious\\t0:31\\n7\\t RICCITELLO Matthew\\tDecathlon CMA CGM Team\\t0:34\\n8\\t MARTINEZ Lenny\\tBahrain - Victorious\\t,,\\n9\\t BAUDIN Alex\\tEF Education - EasyPost\\t0:41\\n10\\t VACEK Mathias\\tLidl - Trek\\t0:56\\n11\\t VAUQUELIN K\\u00e9vin\\tNetcompany INEOS\\t0:58\\n12\\t GARC\\u00cdA PIERNA Ra\\u00fal\\tMovistar Team\\t1:02\\n13\\t STEINHAUSER Georg\\tEF Education - EasyPost\\t1:14\\n14\\t VAN EETVELT Lennert\\tLotto Intermarch\\u00e9\\t1:20\\n15\\t CASTRILLO Pablo\\tMovistar Team\\t1:35\\n16\\t UIJTDEBROEKS Cian\\tMovistar Team\\t1:37\\n17\\t DHONDT Robbe\\tTeam Picnic PostNL\\t1:39\\n18\\t LE BERRE Mathis\\tTotalEnergies\\t1:50\\n19\\t BERCKMOES Jenno\\tLotto Intermarch\\u00e9\\t1:54\\n20\\t VERSTRYNGE Emiel\\tAlpecin - Premier Tech\\t1:55\\n21\\t TARLING Joshua\\tNetcompany INEOS\\t1:58\\n22\\t HESSMANN Michel\\tMovistar Team\\t2:20\\n23\\t VERCHER Matt\\u00e9o\\tTotalEnergies\\t2:21\\n24\\t DEBRUYNE Ramses\\tAlpecin - Premier Tech\\t2:24\\n25\\t PARET-PEINTRE Valentin\\tSoudal Quick-Step\\t2:30\\n26\\t BIESTERBOS Frits\\tTeam Picnic PostNL\\t2:49\\n27\\t BITTNER Pavel\\tTeam Picnic PostNL\\t,,\\n28\\t VAN MECHELEN Vlad\\tBahrain - Victorious\\t2:57\\n29\\t ASKEY Lewis\\tNSN Cycling Team\\t2:58\\n30\\t GERMANI Lorenzo\\tGroupama - FDJ United\\t2:59\\n31\\t COSTIOU Ewen\\tGroupama - FDJ United\\t,,\\n32\\t ARTZ Huub\\tLotto Intermarch\\u00e9\\t3:13\\n33\\t WALKER Max\\tEF Education - EasyPost\\t3:27\\n34\\t CRAPS Lars\\tLotto Intermarch\\u00e9\\t3:52\\n35\\t DE LIE Arnaud\\tLotto Intermarch\\u00e9\\t3:53\\n36\\t PAGE Hugo\\tCofidis\\t3:54\\n37\\t KOOIJ Olav\\tDecathlon CMA CGM Team\\t3:56\\n38\\t HAGENES Per Strand\\tTeam Visma | Lease a Bike\\t4:07\\n39\\t SIMMONS Quinn\\tLidl - Trek\\t,,\\n40\\t FRETIN Milan\\tCofidis\\t4:16\\n41\\t VINOKUROV Nicolas\\tXDS Astana Team\\t4:38\";\n                            const container = document.getElementById('lct-cr-table-wrap-0');\n                            const title = 'Youth day classification';\n                            function doRender() {\n                                if (typeof lctRenderRankingIntoEl === 'function' && container) {\n                                    lctRenderRankingIntoEl(container, rawData, title);\n                                }\n                            }\n                            doRender(); \/\/ initial\n                            document.addEventListener('lctRidersLoaded', doRender); \/\/ update with flags\n                        });\n                        <\/script>\n                    <\/div>\n                <\/div>\n                                <div id=\"lct-cr-1\"\n                    class=\"lct-ranking-container lct-rank-panel lct-cr-panel\"\n                    style=\"display:none;\"\n                    role=\"tabpanel\">\n                    <div id=\"lct-cr-table-wrap-1\" class=\"lct-fr-table-wrap\">\n                        <script>\n                        document.addEventListener('DOMContentLoaded', function() {\n                            const rawData = \"Rnk\\tTeam\\tTime\\tTime\\n1\\t Netcompany INEOS\\t01:07:08\\t1:07:08\\n2\\t Team Visma | Lease a Bike\\t01:07:47\\t0:39\\n3\\t Red Bull - BORA - hansgrohe\\t01:08:19\\t1:11\\n4\\t Lidl - Trek\\t01:08:22\\t1:14\\n5\\t UAE Team Emirates - XRG\\t01:08:25\\t1:17\\n6\\t Decathlon CMA CGM Team\\t01:08:52\\t1:44\\n7\\t EF Education - EasyPost\\t01:09:24\\t2:16\\n8\\t Caja Rural - Seguros RGA\\t01:10:03\\t2:55\\n9\\t Bahrain - Victorious\\t01:10:10\\t3:02\\n10\\t Movistar Team\\t01:10:21\\t3:13\\n11\\t Tudor Pro Cycling Team\\t01:10:25\\t3:17\\n12\\t Alpecin - Premier Tech\\t01:10:51\\t3:43\\n13\\t Uno-X Mobility\\t01:11:02\\t3:54\\n14\\t TotalEnergies\\t01:11:06\\t3:58\\n15\\t Soudal Quick-Step\\t01:11:11\\t4:03\\n16\\t Groupama - FDJ United\\t01:11:47\\t4:39\\n17\\t Pinarello Q36.5 Pro Cycling Team\\t01:12:22\\t5:14\\n18\\t Cofidis\\t01:12:31\\t5:23\\n19\\t Lotto Intermarch\\u00e9\\t01:12:36\\t5:28\\n20\\t Team Jayco AlUla\\t01:12:42\\t5:34\\n21\\t Team Picnic PostNL\\t01:12:54\\t5:46\\n22\\t NSN Cycling Team\\t01:13:01\\t5:53\\n23\\t XDS Astana Team\\t01:13:35\\t6:27\\n\";\n                            const container = document.getElementById('lct-cr-table-wrap-1');\n                            const title = 'Team day classification';\n                            function doRender() {\n                                if (typeof lctRenderRankingIntoEl === 'function' && container) {\n                                    lctRenderRankingIntoEl(container, rawData, title);\n                                }\n                            }\n                            doRender(); \/\/ initial\n                            document.addEventListener('lctRidersLoaded', doRender); \/\/ update with flags\n                        });\n                        <\/script>\n                    <\/div>\n                <\/div>\n                            <\/div>\n        <\/section>\n        <\/div> <!-- close lct-cr-wrapper -->\n                \n        <\/div><!-- close .lct-full-results-page -->\n    <script>\n    (function() {\n        \/\/ Tab switching for Main Classifications\n        document.querySelectorAll('#lct-fr-rankings .lct-rank-tab').forEach(function(btn) {\n            btn.addEventListener('click', function() {\n                var tab = this.dataset.tab;\n                document.querySelectorAll('#lct-fr-rankings .lct-rank-tab').forEach(function(b) {\n                    b.classList.toggle('lct-rank-tab-active', b.dataset.tab === tab);\n                });\n                document.querySelectorAll('#lct-fr-rankings .lct-rank-panel').forEach(function(p) {\n                    p.style.display = p.id === 'lct-' + tab ? 'block' : 'none';\n                });\n            });\n        });\n\n        \/\/ Tab switching for Complementary Results\n        document.querySelectorAll('#lct-cr-rankings .lct-cr-tab').forEach(function(btn) {\n            btn.addEventListener('click', function() {\n                var tab = this.dataset.tab;\n                document.querySelectorAll('#lct-cr-rankings .lct-cr-tab').forEach(function(b) {\n                    b.classList.toggle('lct-cr-tab-active', b.dataset.tab === tab);\n                });\n                document.querySelectorAll('#lct-cr-rankings .lct-rank-panel').forEach(function(p) {\n                    p.style.display = p.id === 'lct-' + tab ? 'block' : 'none';\n                });\n            });\n        });\n\n        \/\/ Master Tab switching\n        document.querySelectorAll('.lct-master-tab').forEach(function(btn) {\n            btn.addEventListener('click', function() {\n                var targetId = this.dataset.target;\n                document.querySelectorAll('.lct-master-tab').forEach(function(b) {\n                    b.classList.toggle('lct-master-tab-active', b === btn);\n                });\n                document.querySelectorAll('.lct-master-panel').forEach(function(p) {\n                    p.style.display = p.id === targetId ? 'block' : 'none';\n                });\n            });\n        });\n\n        \/\/ Live Search \/ Filter\n        var searchInput = document.getElementById('lct-fr-search-input');\n        if (searchInput) {\n            searchInput.addEventListener('input', function() {\n                var term = this.value.toLowerCase();\n                var activePanel = document.querySelector('.lct-rank-panel[style*=\"display: block\"]') || document.querySelector('.lct-rank-panel:not([style*=\"display: none\"])');\n                \n                if (!activePanel) {\n                    var allPanels = document.querySelectorAll('.lct-rank-panel');\n                    for (var i=0; i<allPanels.length; i++) {\n                        if (window.getComputedStyle(allPanels[i]).display === 'block') {\n                            activePanel = allPanels[i];\n                            break;\n                        }\n                    }\n                }\n\n                if (activePanel) {\n                    var rows = activePanel.querySelectorAll('tbody tr');\n                    rows.forEach(function(row) {\n                        var text = row.innerText.toLowerCase();\n                        row.style.display = text.indexOf(term) > -1 ? '' : 'none';\n                    });\n                }\n            });\n\n            \/\/ Re-apply filter when changing tabs\n            document.querySelectorAll('.lct-rank-tab').forEach(function(btn) {\n                btn.addEventListener('click', function() {\n                    setTimeout(function() {\n                        var event = new Event('input');\n                        searchInput.dispatchEvent(event);\n                    }, 50);\n                });\n            });\n        }\n    })();\n    <\/script>\n    \n","protected":false},"excerpt":{"rendered":"<p>&#9664; Previous Result Start Results for Stage 1 Jul 4 TTT &#10003; Results &#127942; Winner: Team Visma-Lease a Bike Next Result Stage 2 Tarragona &#8594; Barcelona &#9654; &#9660; &#9650; All 21 Stages 1TTT 2Hilly 3Mountain 4Hilly 5Flat 6Summit 7Flat 8Flat 9Hilly RJul 13 10Summit 11Flat 12Flat 13Hilly 14Mountain 15Summit RJul 20 16ITT 17Flat 18Summit 19Summit&#8230;<\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[28],"tags":[],"class_list":["post-7783","post","type-post","status-publish","format-standard","hentry","category-tour-de-france"],"taxonomy_info":{"category":[{"value":28,"label":"Tour de France"}]},"featured_image_src_large":false,"author_info":{"display_name":"Gautier Durfort","author_link":"https:\/\/franceletour.com\/fr\/author\/gautier-durfort\/"},"comment_info":2,"category_info":[{"term_id":28,"name":"Tour de France","slug":"tour-de-france","term_group":0,"term_taxonomy_id":28,"taxonomy":"category","description":"Live the Tour de France cycling race. Get stage results, route maps, team insights, and historical highlights from every edition of Le Grand Boucle.","parent":0,"count":75,"filter":"raw","cat_ID":28,"category_count":75,"category_description":"Live the Tour de France cycling race. Get stage results, route maps, team insights, and historical highlights from every edition of Le Grand Boucle.","cat_name":"Tour de France","category_nicename":"tour-de-france","category_parent":0}],"tag_info":false,"_links":{"self":[{"href":"https:\/\/franceletour.com\/fr\/wp-json\/wp\/v2\/posts\/7783","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/franceletour.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/franceletour.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/franceletour.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/franceletour.com\/fr\/wp-json\/wp\/v2\/comments?post=7783"}],"version-history":[{"count":6,"href":"https:\/\/franceletour.com\/fr\/wp-json\/wp\/v2\/posts\/7783\/revisions"}],"predecessor-version":[{"id":8144,"href":"https:\/\/franceletour.com\/fr\/wp-json\/wp\/v2\/posts\/7783\/revisions\/8144"}],"wp:attachment":[{"href":"https:\/\/franceletour.com\/fr\/wp-json\/wp\/v2\/media?parent=7783"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/franceletour.com\/fr\/wp-json\/wp\/v2\/categories?post=7783"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/franceletour.com\/fr\/wp-json\/wp\/v2\/tags?post=7783"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}