{"id":2349,"date":"2026-09-18T08:18:56","date_gmt":"2026-09-18T08:18:56","guid":{"rendered":"https:\/\/actifftransport.com\/?page_id=2349"},"modified":"2026-09-18T08:18:56","modified_gmt":"2026-09-18T08:18:56","slug":"estimation","status":"publish","type":"page","link":"https:\/\/actifftransport.com\/en\/estimation\/","title":{"rendered":"Estimate"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"2350\" class=\"elementor elementor-2350\" data-elementor-settings=\"{&quot;ha_cmc_init_switcher&quot;:&quot;no&quot;}\" data-elementor-post-type=\"elementor_library\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-n1v2c31 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"n1v2c31\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-n1v2c32\" data-id=\"n1v2c32\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-n1v2b33 elementor-widget elementor-widget-shortcode\" data-id=\"n1v2b33\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\t<div id='actiff-preview-nav'>\n\t  <div class='actiff-preview-nav__inner'>\n\t    <a href='https:\/\/actifftransport.com\/en\/' class='actiff-preview-nav__logo'><img src='https:\/\/actifftransport.com\/wp-content\/uploads\/2023\/01\/logotransparent.png' alt='Actiff Transport'><span>ACTIFF TRANSPORT<\/span><\/a>\n\t    <button type='button' id='actiff-preview-nav__toggle' class='actiff-preview-nav__toggle' aria-label='Ouvrir le menu' aria-expanded='false' aria-controls='actiff-preview-nav__menu'>\n\t      <span><\/span><span><\/span><span><\/span>\n\t    <\/button>\n\t    <div class='actiff-preview-nav__menu' id='actiff-preview-nav__menu'>\n\t      <nav class='actiff-preview-nav__links'>\n\t        \t        <a href='https:\/\/actifftransport.com\/en\/' class=''>Accueil<\/a>\n\t        \t        <a href='https:\/\/actifftransport.com\/?page_id=2349' class='is-active'>Estimation<\/a>\n\t        \t        <a href='https:\/\/actifftransport.com\/?page_id=2355' class=''>Services<\/a>\n\t        \t        <a href='https:\/\/actifftransport.com\/?page_id=2356' class=''>Autres prestations<\/a>\n\t        \t        <a href='https:\/\/actifftransport.com\/?page_id=2357' class=''>Contact<\/a>\n\t        \t        <a href='https:\/\/wa.me\/33783160783' target='_blank' rel='noopener' aria-label='WhatsApp' class='actiff-preview-nav__whatsapp'><svg viewBox='0 0 24 24' width='18' height='18' aria-hidden='true'><path d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347zM12.001 0C5.373 0 0 5.373 0 12c0 2.126.554 4.203 1.606 6.036L.057 24l6.064-1.588A11.94 11.94 0 0012 24c6.628 0 12-5.373 12-12S18.628 0 12.001 0zm0 21.816c-1.902 0-3.756-.512-5.379-1.478l-.386-.229-3.601.943.961-3.507-.251-.36A9.804 9.804 0 012.192 12C2.192 6.577 6.577 2.192 12 2.192S21.808 6.577 21.808 12 17.423 21.816 12 21.816z'\/><\/svg><span class='actiff-preview-nav__whatsapp-text'>WhatsApp<\/span><\/a>\n\t      <\/nav>\n\t      <div class='actiff-preview-nav__lang' data-no-translation><div class=\"trp-shortcode-switcher__wrapper\"\r\n     style=\"--bg:#ffffff00;--bg-hover:#00000000;--text:#f7f7f7;--text-hover:#1d2327;--border:1px solid #1438521a;--border-width:1px;--border-color:#1438521a;--border-radius:1px;--flag-radius:2px;--flag-size:18px;--aspect-ratio:4\/3;--font-size:14px;--transition-duration:0.2s\"\r\n     role=\"group\"\r\n     data-open-mode=\"hover\">\r\n\r\n    \r\n        <!-- ANCHOR (in-flow only; sizing\/borders; inert) -->\r\n        <div class=\"trp-language-switcher trp-ls-dropdown trp-shortcode-switcher trp-shortcode-anchor trp-open-on-hover\"\r\n             aria-hidden=\"true\"\r\n             inert\r\n             data-no-translation>\r\n                <div class=\"trp-current-language-item__wrapper\">\r\n        <a class=\"trp-language-item trp-language-item__default trp-language-item__current\" data-no-translation href=\"https:\/\/actifftransport.com\/en\/wp-json\/wp\/v2\/pages\/2349#TRPLINKPROCESSED\" title=\"EN\"><img decoding=\"async\" src=\"https:\/\/actifftransport.com\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/en_US.svg\" class=\"trp-flag-image\" alt=\"\" role=\"presentation\" loading=\"lazy\" \/><span class=\"trp-language-item-name\">EN<\/span><\/a>                    <svg class=\"trp-shortcode-arrow\" width=\"20\" height=\"20\" viewBox=\"0 0 20 21\" fill=\"none\" aria-hidden=\"true\" focusable=\"false\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                <path d=\"M5 8L10 13L15 8\" stroke=\"var(--text)\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n            <\/svg>\r\n            <\/div>\r\n            <\/div>\r\n\r\n        <!-- OVERLAY (positioned; interactive surface) -->\r\n        <div class=\"trp-language-switcher trp-ls-dropdown trp-shortcode-switcher trp-shortcode-overlay trp-open-on-hover\"\r\n             role=\"navigation\"\r\n             aria-label=\"Website language selector\"\r\n             data-no-translation\r\n        >\r\n                <div class=\"trp-current-language-item__wrapper\">\r\n        <div class=\"trp-language-item trp-language-item__default trp-language-item__current\" data-no-translation role=\"button\" aria-expanded=\"false\" tabindex=\"0\" aria-label=\"Change language\" aria-controls=\"trp-shortcode-dropdown-6acbc737137b0\"><img decoding=\"async\" src=\"https:\/\/actifftransport.com\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/en_US.svg\" class=\"trp-flag-image\" alt=\"\" role=\"presentation\" loading=\"lazy\" \/><span class=\"trp-language-item-name\">EN<\/span><\/div>                    <svg class=\"trp-shortcode-arrow\" width=\"20\" height=\"20\" viewBox=\"0 0 20 21\" fill=\"none\" aria-hidden=\"true\" focusable=\"false\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                <path d=\"M5 8L10 13L15 8\" stroke=\"var(--text)\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n            <\/svg>\r\n            <\/div>\r\n    \r\n            <div class=\"trp-switcher-dropdown-list\"\r\n                 id=\"trp-shortcode-dropdown-6acbc737137b0\"\r\n                 role=\"group\"\r\n                 aria-label=\"Available languages\"\r\n                 hidden\r\n                 inert\r\n            >\r\n                                                            <a class=\"trp-language-item\" href=\"https:\/\/actifftransport.com\/en\/wp-json\/wp\/v2\/pages\/2349#TRPLINKPROCESSED\" title=\"FR\">\r\n                            <img decoding=\"async\" src=\"https:\/\/actifftransport.com\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/4x3\/fr_FR.svg\" class=\"trp-flag-image\" alt=\"\" role=\"presentation\" loading=\"lazy\" \/>                                                            <span class=\"trp-language-item-name\" data-no-translation>FR<\/span>\r\n                                                                                <\/a>\r\n                                                <\/div>\r\n        <\/div>\r\n\r\n    <\/div>\r\n<\/div>\n\t      <a href='https:\/\/actifftransport.com\/?page_id=2349' class='actiff-preview-nav__cta'>Estimer mon prix<\/a>\n\t    <\/div>\n\t  <\/div>\n\t<\/div>\n\t<style>\n\thtml, body { background: #0b0c13 !important; margin: 0; padding: 0; }\n\t#actiff-preview-nav { font-family: 'Khula', sans-serif; position: fixed; top: 0; left: 0; right: 0; z-index: 1000; background: transparent; border-bottom: 1px solid transparent; transition: background-color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease; }\n\t#actiff-preview-nav.is-solid { background: #0b0c13; border-bottom-color: rgba(255,255,255,0.08); box-shadow: 0 4px 20px rgba(0,0,0,0.25); }\n\thtml.admin-bar #actiff-preview-nav { top: 32px; }\n\t@media screen and (max-width: 782px) { html.admin-bar #actiff-preview-nav { top: 46px; } }\n\t.actiff-preview-nav__inner { max-width: 1150px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; padding: 14px 20px; gap: 20px; position: relative; }\n\t.actiff-preview-nav__logo { display: flex; align-items: center; gap: 12px; text-decoration: none !important; }\n\t.actiff-preview-nav__logo img { height: 40px; display: block; }\n\t.actiff-preview-nav__logo span { color: #f2f2f4 !important; font-weight: 700; font-size: 18px; letter-spacing: 0.5px; white-space: nowrap; }\n\t.actiff-preview-nav__menu { display: flex; align-items: center; gap: 20px; }\n\t.actiff-preview-nav__links { display: flex; align-items: center; gap: 24px; }\n\t.actiff-preview-nav__links a { color: #c7c7d1 !important; text-decoration: none !important; font-size: 14px; font-weight: 600; white-space: nowrap; }\n\t.actiff-preview-nav__links a.is-active { color: #a5b4fc !important; }\n\t.actiff-preview-nav__links a:hover { color: #fff !important; }\n\t.actiff-preview-nav__lang { display: flex; align-items: center; flex-shrink: 0; }\n\t.actiff-preview-nav__cta, a.actiff-preview-nav__cta { background-color: #6366f1 !important; color: #ffffff !important; padding: 10px 18px; border-radius: 8px; font-size: 14px; font-weight: 600; text-decoration: none !important; white-space: nowrap; display: inline-block; border: none; }\n\t.actiff-preview-nav__cta:hover { background-color: #4f46e5 !important; }\n\t.actiff-preview-nav__whatsapp { display: inline-flex !important; align-items: center !important; justify-content: center; align-self: center; gap: 0; opacity: 1; width: 18px; height: 18px; overflow: hidden; margin: 0; padding: 0; transition: opacity 0.2s ease; }\n\t.actiff-preview-nav__whatsapp svg { fill: #25D366; display: block; flex-shrink: 0; }\n\t.actiff-preview-nav__whatsapp:hover { opacity: 0.8; }\n\t.actiff-preview-nav__whatsapp-text { display: none !important; width: 0; height: 0; overflow: hidden; position: absolute; }\n\t#actiff-preview-nav__toggle { all: unset; display: none; flex-direction: column; align-items: center; justify-content: center; gap: 5px; width: 44px; height: 44px; cursor: pointer; flex-shrink: 0; position: relative; z-index: 1101; background: transparent !important; background-color: transparent !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; margin: 0 !important; border-radius: 0 !important; min-width: 0 !important; min-height: 0 !important; }\n\t#actiff-preview-nav__toggle:focus-visible { outline: 2px solid #a5b4fc; outline-offset: 2px; }\n\t#actiff-preview-nav__toggle span { display: block; width: 24px; height: 2px; background: #ffffff !important; border-radius: 2px; transition: transform 0.2s ease, opacity 0.2s ease; }\n\t#actiff-preview-nav__toggle.is-active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }\n\t#actiff-preview-nav__toggle.is-active span:nth-child(2) { opacity: 0; }\n\t#actiff-preview-nav__toggle.is-active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }\n\t@media (max-width: 980px) {\n\t  #actiff-preview-nav__toggle { display: flex !important; }\n\t  .actiff-preview-nav__menu { display: none; position: fixed; inset: 0; background: #0b0c13; border: none; border-radius: 0; padding: 110px 28px 40px; flex-direction: column; align-items: center; justify-content: center; gap: 36px; box-shadow: none; z-index: 1090; }\n\t  .actiff-preview-nav__menu.is-open { display: flex; }\n\t  .actiff-preview-nav__links { flex-direction: column; align-items: center; gap: 20px; }\n\t  .actiff-preview-nav__links a { font-size: 21px; padding: 14px 26px; }\n\t  .actiff-preview-nav__links a:hover, .actiff-preview-nav__links a.is-active { background: rgba(129,140,248,0.12); border-radius: 10px; }\n\t  .actiff-preview-nav__lang { margin: 4px 0; }\n\t  .actiff-preview-nav__cta { margin-top: 12px; padding: 16px 40px; font-size: 17px; }\n\t  .actiff-preview-nav__whatsapp { order: -1; opacity: 1 !important; width: auto; height: auto; overflow: visible; gap: 8px; }\n\t  .actiff-preview-nav__whatsapp svg { fill: #25D366; width: 22px; height: 22px; }\n\t  .actiff-preview-nav__whatsapp-text { display: inline !important; width: auto; height: auto; overflow: visible; position: static; font-size: 21px; font-weight: 600; color: #c7c7d1 !important; }\n\t}\n\t@media (max-width: 560px) {\n\t  .actiff-preview-nav__logo img { height: 32px; }\n\t  .actiff-preview-nav__logo span { font-size: 15px; }\n\t}\n\t.actiff-pg-wrap { max-width: 1150px; margin: 0 auto; padding: 60px 20px; font-family: 'Khula', sans-serif; color: #e8e8ee !important; box-sizing: border-box; }\n\t.actiff-pg-wrap *, .actiff-pg-wrap *:before, .actiff-pg-wrap *:after { box-sizing: border-box; }\n\t.actiff-pg-wrap p, .actiff-pg-wrap span, .actiff-pg-wrap div, .actiff-pg-wrap li { color: inherit; }\n\t.actiff-pg-eyebrow { color: #a5b4fc !important; font-size: 13px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; margin-bottom: 10px; }\n\t.actiff-pg-title, h1.actiff-pg-title, .actiff-pg-wrap h1 { font-size: 38px; font-weight: 700; color: #f2f2f4 !important; margin: 0 0 14px; line-height: 1.15; }\n\t.actiff-pg-title--lg { font-size: 46px; }\n\t.actiff-pg-subtitle, .actiff-pg-wrap p.actiff-pg-subtitle { color: #9a9aa8 !important; font-size: 16px; max-width: 680px; margin: 0 0 32px; line-height: 1.6; }\n\t.actiff-pg-section { margin-bottom: 56px; }\n\t.actiff-pg-section-title { font-size: 26px; font-weight: 700; color: #f2f2f4 !important; margin: 0 0 24px; }\n\t.actiff-pg-card { background: #14151d; border: 1px solid rgba(255,255,255,0.08); border-radius: 16px; padding: 28px; }\n\t.actiff-pg-card h3 { color: #f2f2f4 !important; font-size: 17px; margin: 0 0 8px; }\n\t.actiff-pg-card p { color: #9a9aa8 !important; font-size: 14px; line-height: 1.6; margin: 0; }\n\t.actiff-pg-grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }\n\t.actiff-pg-grid-3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 20px; }\n\t.actiff-pg-grid-4 { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; gap: 20px; }\n\t@media (max-width: 900px) { .actiff-pg-grid-3, .actiff-pg-grid-4 { grid-template-columns: 1fr 1fr; } }\n\t@media (max-width: 600px) { .actiff-pg-grid-2, .actiff-pg-grid-3, .actiff-pg-grid-4 { grid-template-columns: 1fr; } }\n\t.actiff-pg-btn, a.actiff-pg-btn { display: inline-block; background-color: #6366f1 !important; color: #ffffff !important; padding: 13px 24px; border-radius: 8px; font-weight: 600; font-size: 14px; text-decoration: none !important; border: none; cursor: pointer; font-family: 'Khula', sans-serif; }\n\t.actiff-pg-btn:hover { background-color: #4f46e5 !important; }\n\t.actiff-pg-btn-outline, a.actiff-pg-btn-outline { display: inline-block; background: transparent !important; color: #a5b4fc !important; padding: 12px 23px; border-radius: 8px; font-weight: 600; font-size: 14px; text-decoration: none !important; border: 1px solid #818cf8; font-family: 'Khula', sans-serif; }\n\t.actiff-pg-btn-outline:hover { background: rgba(129,140,248,0.1) !important; }\n\t.actiff-pg-field { display: flex; flex-direction: column; margin-bottom: 20px; }\n\t.actiff-pg-label { color: #9a9aa8 !important; font-size: 13px; margin-bottom: 8px; }\n\t.actiff-pg-input, .actiff-pg-textarea { width: 100%; background: #1d1e28; border: 1px solid rgba(255,255,255,0.1); border-radius: 8px; padding: 12px 14px; color: #e8e8ee !important; font-family: 'Khula', sans-serif; font-size: 15px; cursor: pointer; }\n\t.actiff-pg-textarea { cursor: text; resize: vertical; min-height: 100px; }\n\t.actiff-pg-input:focus, .actiff-pg-textarea:focus { outline: none; border-color: #818cf8; }\n\t.actiff-pg-chip { background: #1d1e28; border: 1px solid rgba(255,255,255,0.1); color: #c7c7d1 !important; padding: 8px 16px; border-radius: 999px; font-size: 13px; display: inline-block; }\n\t.actiff-pg-img { width: 100%; height: 220px; object-fit: cover; border-radius: 12px; display: block; }\n\t.actiff-pg-stat-num { font-size: 32px; font-weight: 700; color: #f2f2f4 !important; }\n\t.actiff-pg-stat-label { color: #9a9aa8 !important; font-size: 12px; text-transform: uppercase; letter-spacing: 1px; margin-top: 4px; }\n\t<\/style>\n\t<script>\n\t(function(){\n\t  var nav = document.getElementById('actiff-preview-nav');\n\t  if (!nav) { return; }\n\t  function apply(heroEl){\n\t    var navHeight = nav.offsetHeight;\n\t    if (heroEl) {\n\t      var threshold = Math.max(heroEl.offsetHeight - navHeight, 10);\n\t      function onScroll(){\n\t        if (window.scrollY > threshold) { nav.classList.add('is-solid'); } else { nav.classList.remove('is-solid'); }\n\t      }\n\t      window.addEventListener('scroll', onScroll, { passive: true });\n\t      onScroll();\n\t    } else {\n\t      nav.classList.add('is-solid');\n\t      document.body.style.paddingTop = navHeight + 'px';\n\t    }\n\t  }\n\t  function setup(){\n\t    var heroEl = document.querySelector('.av2-hero');\n\t    if (heroEl) { apply(heroEl); return; }\n\t    var attempts = 0;\n\t    var timer = setInterval(function(){\n\t      attempts++;\n\t      var el = document.querySelector('.av2-hero');\n\t      if (el || attempts >= 15) {\n\t        clearInterval(timer);\n\t        apply(el);\n\t      }\n\t    }, 200);\n\t  }\n\t  if (document.readyState === 'complete') { setup(); } else { window.addEventListener('load', setup); }\n\t})();\n\t(function(){\n\t  var navEl = document.getElementById('actiff-preview-nav');\n\t  var toggleBtn = document.getElementById('actiff-preview-nav__toggle');\n\t  var menu = document.getElementById('actiff-preview-nav__menu');\n\t  if (!navEl || !toggleBtn || !menu) { return; }\n\t  function closeMenu(){\n\t    menu.classList.remove('is-open');\n\t    toggleBtn.classList.remove('is-active');\n\t    toggleBtn.setAttribute('aria-expanded', 'false');\n\t  }\n\t  toggleBtn.addEventListener('click', function(e){\n\t    e.stopPropagation();\n\t    var isOpen = menu.classList.toggle('is-open');\n\t    toggleBtn.classList.toggle('is-active', isOpen);\n\t    toggleBtn.setAttribute('aria-expanded', isOpen ? 'true' : 'false');\n\t  });\n\t  menu.querySelectorAll('a').forEach(function(a){\n\t    a.addEventListener('click', closeMenu);\n\t  });\n\t  document.addEventListener('click', function(e){\n\t    if (!navEl.contains(e.target)) { closeMenu(); }\n\t  });\n\t  window.addEventListener('resize', function(){\n\t    if (window.innerWidth > 980) { closeMenu(); }\n\t  });\n\t})();\n\t<\/script>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-a1b2c31 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"a1b2c31\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-a1b2c32\" data-id=\"a1b2c32\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-a1b2c34 elementor-widget elementor-widget-shortcode\" data-id=\"a1b2c34\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\t<div id=\"actiff-estim\" class=\"actiff-estim\">\n\t  <div class=\"actiff-estim__intro\">\n\t    <div class=\"actiff-estim__eyebrow\">ESTIMATION<\/div>\n\t    <h2 class=\"actiff-estim__title\">Estimez votre trajet<\/h2>\n\t    <p class=\"actiff-estim__subtitle\">Tarif indicatif \u2014 le montant d\u00e9finitif est confirm\u00e9 par le chauffeur selon l\u2019itin\u00e9raire r\u00e9el.<\/p>\n\t  <\/div>\n\t  <div class=\"actiff-estim__grid\">\n\t    <div class=\"actiff-estim__card actiff-estim__form-card\">\n\t      <form id=\"actiff-estim-form\" autocomplete=\"off\">\n\t        <div class=\"actiff-estim__row\">\n\t          <div class=\"actiff-estim__field\"><label>D\u00e9part<\/label><div id=\"actiff-pickup-slot\" class=\"actiff-estim__autocomplete\" data-placeholder=\"Adresse de d\u00e9part\"><\/div><\/div>\n\t          <div class=\"actiff-estim__field\"><label>Arriv\u00e9e<\/label><div id=\"actiff-dropoff-slot\" class=\"actiff-estim__autocomplete\" data-placeholder=\"Adresse d\u2019arriv\u00e9e\"><\/div><\/div>\n\t        <\/div>\n\t        <div class=\"actiff-estim__row\">\n\t          <div class=\"actiff-estim__field\"><label for=\"actiff-date\">Date<\/label><input type=\"date\" id=\"actiff-date\" required><\/div>\n\t          <div class=\"actiff-estim__field\"><label for=\"actiff-time\">Heure<\/label><input type=\"time\" id=\"actiff-time\" required><\/div>\n\t        <\/div>\n\t        <div class=\"actiff-estim__row\" id=\"actiff-return-row\" style=\"display:none;\">\n\t          <div class=\"actiff-estim__field\"><label for=\"actiff-return-date\">Date de retour<\/label><input type=\"date\" id=\"actiff-return-date\"><\/div>\n\t          <div class=\"actiff-estim__field\"><label for=\"actiff-return-time\">Heure de retour<\/label><input type=\"time\" id=\"actiff-return-time\"><\/div>\n\t        <\/div>\n\t        <div class=\"actiff-estim__row\">\n\t          <div class=\"actiff-estim__field\"><label for=\"actiff-passengers\">Passagers<\/label><input type=\"number\" id=\"actiff-passengers\" min=\"1\" max=\"8\" value=\"2\"><\/div>\n\t          <div class=\"actiff-estim__field\"><label for=\"actiff-children\">Dont enfants<\/label><input type=\"number\" id=\"actiff-children\" min=\"0\" max=\"8\" value=\"0\"><\/div>\n\t        <\/div>\n\t        <div class=\"actiff-estim__row\">\n\t          <div class=\"actiff-estim__field actiff-estim__field--full\"><label>Type de trajet<\/label><div class=\"actiff-estim__toggle\" role=\"group\"><button type=\"button\" class=\"actiff-estim__toggle-btn is-active\" data-triptype=\"one-way\">Aller simple<\/button><button type=\"button\" class=\"actiff-estim__toggle-btn\" data-triptype=\"round-trip\">Aller-retour<\/button><\/div><\/div>\n\t        <\/div>\n\t        <div class=\"actiff-estim__distance-hint\" id=\"actiff-distance-hint\">La distance et la dur\u00e9e sont calcul\u00e9es automatiquement une fois les deux adresses choisies.<\/div>\n\t        <div class=\"actiff-estim__field actiff-estim__options-field\">\n\t          <label>\u00c9quipements en option<\/label>\n\t          <div class=\"actiff-estim__chips\">\n\t            <button type=\"button\" class=\"actiff-estim__chip\" data-extra=\"trailer\">Remorque bagage \u00b7 +40,00 \u20ac<\/button>\n\t            <button type=\"button\" class=\"actiff-estim__chip\" data-extra=\"bike\">Remorque v\u00e9lo \u00b7 +40,00 \u20ac<\/button>\n\t          <\/div>\n\t          <div class=\"actiff-estim__qty-options\">\n\t            <div class=\"actiff-estim__qty-row\">\n\t              <span class=\"actiff-estim__qty-label\">R\u00e9hausseur <span class=\"actiff-estim__qty-price\">+5,00 \u20ac \/ unit\u00e9<\/span><\/span>\n\t              <div class=\"actiff-estim__stepper\">\n\t                <button type=\"button\" class=\"actiff-estim__step-btn\" data-qty=\"booster\" data-dir=\"-1\" aria-label=\"Retirer un r\u00e9hausseur\">\u2212<\/button>\n\t                <span class=\"actiff-estim__qty-value\" id=\"actiff-qty-booster\">0<\/span>\n\t                <button type=\"button\" class=\"actiff-estim__step-btn\" data-qty=\"booster\" data-dir=\"1\" aria-label=\"Ajouter un r\u00e9hausseur\">+<\/button>\n\t              <\/div>\n\t            <\/div>\n\t            <div class=\"actiff-estim__qty-row\">\n\t              <span class=\"actiff-estim__qty-label\">Si\u00e8ge b\u00e9b\u00e9 <span class=\"actiff-estim__qty-price\">+5,00 \u20ac \/ unit\u00e9<\/span><\/span>\n\t              <div class=\"actiff-estim__stepper\">\n\t                <button type=\"button\" class=\"actiff-estim__step-btn\" data-qty=\"babyseat\" data-dir=\"-1\" aria-label=\"Retirer un si\u00e8ge b\u00e9b\u00e9\">\u2212<\/button>\n\t                <span class=\"actiff-estim__qty-value\" id=\"actiff-qty-babyseat\">0<\/span>\n\t                <button type=\"button\" class=\"actiff-estim__step-btn\" data-qty=\"babyseat\" data-dir=\"1\" aria-label=\"Ajouter un si\u00e8ge b\u00e9b\u00e9\">+<\/button>\n\t              <\/div>\n\t            <\/div>\n\t          <\/div>\n\t        <\/div>\n\t        <div class=\"actiff-estim__field actiff-estim__options-field\" id=\"actiff-stop-field\"><label>Arr\u00eat en cours de route<\/label><div class=\"actiff-estim__qty-options\" style=\"margin-top:0;\"><div class=\"actiff-estim__qty-row\"><span class=\"actiff-estim__qty-label\">Repas au restaurant, courses, pause caf\u00e9\u2026 <span class=\"actiff-estim__qty-price\">Le chauffeur reste \u00e0 votre disposition \u00b7 +40,00 \u20ac \/ heure<\/span><\/span><div class=\"actiff-estim__stepper\"><button type=\"button\" class=\"actiff-stop-btn\" data-dir=\"-1\" aria-label=\"Retirer une heure d\u2019arr\u00eat\">\u2212<\/button><span class=\"actiff-estim__qty-value\" id=\"actiff-stop-hours\">0 h<\/span><button type=\"button\" class=\"actiff-stop-btn\" data-dir=\"1\" aria-label=\"Ajouter une heure d\u2019arr\u00eat\">+<\/button><\/div><\/div><div id=\"actiff-stop-type-row\" style=\"display:none;\"><select id=\"actiff-stop-type\" class=\"actiff-stop-select\" aria-label=\"Nature de l\u2019arr\u00eat\"><option value=\"\">Nature de l\u2019arr\u00eat (facultatif)<\/option><option value=\"repas\">Repas au restaurant<\/option><option value=\"courses\">Courses<\/option><option value=\"cafe\">Pause caf\u00e9<\/option><option value=\"autre\">Autre<\/option><\/select><\/div><\/div><\/div><style>#actiff-estim .actiff-stop-btn { width: 28px; height: 28px; border-radius: 6px; border: 1px solid rgba(255,255,255,0.15); background: #14151d; color: #e8e8ee; font-size: 16px; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; font-family: 'Khula', sans-serif; padding: 0; }#actiff-estim .actiff-stop-btn:hover { border-color: #818cf8; color: #a5b4fc; }#actiff-estim #actiff-stop-hours { min-width: 32px; }#actiff-estim .actiff-stop-select { background: #1d1e28; border: 1px solid rgba(255,255,255,0.1); border-radius: 8px; padding: 11px 14px; color: #e8e8ee; font-family: 'Khula', sans-serif; font-size: 14px; width: 100%; cursor: pointer; }#actiff-estim .actiff-stop-select:focus { outline: none; border-color: #818cf8; }<\/style><button type=\"submit\" class=\"actiff-estim__submit\">Estimer mon trajet<\/button>\n\t      <\/form>\n\t    <\/div>\n\t    <div class=\"actiff-estim__side\">\n\t      <div class=\"actiff-estim__card actiff-estim__map-card\">\n\t        <div class=\"actiff-estim__eyebrow\">ITIN\u00c9RAIRE<\/div>\n\t        <h3 class=\"actiff-estim__result-title\">D\u00e9part &amp; arriv\u00e9e<\/h3>\n\t        <div id=\"actiff-estim-map\" class=\"actiff-estim__map\"><\/div>\n\t        <p class=\"actiff-estim__map-hint\" id=\"actiff-map-hint\">La carte s\u2019affiche une fois les deux adresses choisies.<\/p>\n\t      <\/div>\n\t      <div class=\"actiff-estim__card actiff-estim__result-card\">\n\t        <div class=\"actiff-estim__eyebrow\">ESTIMATION<\/div>\n\t        <h3 class=\"actiff-estim__result-title\">D\u00e9tail du tarif<\/h3>\n\t        <div id=\"actiff-estim-result\"><p class=\"actiff-estim__placeholder\">Renseignez un d\u00e9part, une arriv\u00e9e et une date pour voir votre tarif estim\u00e9.<\/p><\/div>\n\t      <\/div>\n\t    <\/div>\n\t  <\/div>\n\t  <div class=\"actiff-estim__card actiff-estim__contact-card\">\n\t    <div class=\"actiff-estim__eyebrow\">VOS COORDONN\u00c9ES<\/div>\n\t    <h3 class=\"actiff-estim__result-title\">Vos informations<\/h3>\n\t    <div class=\"actiff-estim__row\">\n\t      <div class=\"actiff-estim__field\"><label for=\"actiff-lastname\">Nom<\/label><input type=\"text\" id=\"actiff-lastname\" placeholder=\"Nom\" required><\/div>\n\t      <div class=\"actiff-estim__field\"><label for=\"actiff-firstname\">Pr\u00e9nom<\/label><input type=\"text\" id=\"actiff-firstname\" placeholder=\"Pr\u00e9nom\" required><\/div>\n\t    <\/div>\n\t    <div class=\"actiff-estim__row\">\n\t      <div class=\"actiff-estim__field\"><label for=\"actiff-phone\">T\u00e9l\u00e9phone<\/label><input type=\"tel\" id=\"actiff-phone\" placeholder=\"06 12 34 56 78\" required><\/div>\n\t      <div class=\"actiff-estim__field\"><label for=\"actiff-email\">E-mail<\/label><input type=\"email\" id=\"actiff-email\" placeholder=\"vous@exemple.fr\" required><\/div>\n\t    <\/div>\n\t    <div class=\"actiff-estim__field\">\n\t      <label for=\"actiff-flight\">Informations compl\u00e9mentaires (n\u00b0 de vol \/ train\u2026)<\/label>\n\t      <textarea id=\"actiff-flight\" class=\"actiff-estim__textarea\" rows=\"3\" placeholder=\"Ex : vol AF1234, train SNCF 8642\u2026\"><\/textarea>\n\t    <\/div>\n\t    <div class=\"actiff-estim__field\" style=\"margin-top:4px;\">\n\t      <div style=\"display:flex;align-items:flex-start;gap:10px;\">\n\t        <input type=\"checkbox\" id=\"actiff-consent\" style=\"margin-top:3px;width:16px;height:16px;flex-shrink:0;accent-color:#6366f1;cursor:pointer;\">\n\t        <label for=\"actiff-consent\" style=\"color:#9a9aa8;font-size:13px;line-height:1.5;cursor:pointer;\">J'accepte que les informations transmises soient utilis\u00e9es pour traiter ma demande, conform\u00e9ment \u00e0 la <a href=\"https:\/\/actifftransport.com\/?page_id=2379\" style=\"color:#a5b4fc;\">politique de confidentialit\u00e9<\/a>.<\/label>\n\t      <\/div>\n\t    <\/div>\n\t    <div class=\"actiff-estim__book-row\"><button type=\"button\" class=\"actiff-estim__book-btn\" id=\"actiff-book-btn-mail\">Book by email<\/button><button type=\"button\" class=\"actiff-estim__book-btn actiff-estim__book-btn--wa\" id=\"actiff-book-btn\">Book via WhatsApp<\/button><\/div>\n\t    <div class=\"actiff-estim__call-alt\">Ou appelez-nous au <a href=\"tel:0783160783\">07 83 16 07 83<\/a><\/div>\n\t    <p class=\"actiff-estim__contact-status\" id=\"actiff-contact-status\"><\/p>\n\t  <\/div>\n\t<\/div>\n\t<style>\n\t#actiff-estim { max-width: 1100px; margin: 60px auto; padding: 0 20px; font-family: 'Khula', sans-serif; color: #e8e8ee; box-sizing: border-box; }\n\t#actiff-estim *, #actiff-estim *:before, #actiff-estim *:after { box-sizing: border-box; }\n\t#actiff-estim .actiff-estim__eyebrow { color: #a5b4fc; font-size: 13px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; margin-bottom: 10px; }\n\t#actiff-estim .actiff-estim__title { font-size: 42px; font-weight: 700; margin: 0 0 14px; line-height: 1.15; color: #f2f2f4; }\n\t#actiff-estim .actiff-estim__subtitle { color: #9a9aa8; font-size: 16px; max-width: 620px; margin: 0 0 40px; line-height: 1.5; }\n\t#actiff-estim .actiff-estim__grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: 24px; align-items: start; }\n\t@media (max-width: 900px) { #actiff-estim .actiff-estim__grid { grid-template-columns: 1fr; } #actiff-estim .actiff-estim__side { position: static; top: auto; } }\n\t#actiff-estim .actiff-estim__card { background: #14151d; border: 1px solid rgba(255,255,255,0.08); border-radius: 16px; padding: 32px; }\n\t#actiff-estim .actiff-estim__side { display: flex; flex-direction: column; gap: 24px; position: sticky; top: 24px; }\n\t#actiff-estim .actiff-estim__contact-card { margin-top: 24px; }\n\t#actiff-estim .actiff-estim__contact-card .actiff-estim__book-btn { margin-top: 24px; }\n\t#actiff-estim .actiff-estim__contact-status { color: #f5c563; font-size: 13px; margin: 10px 0 0; min-height: 4px; }\n\t#actiff-estim .actiff-estim__row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 22px; }\n\t@media (max-width: 560px) { #actiff-estim .actiff-estim__row { grid-template-columns: 1fr; } }\n\t#actiff-estim .actiff-estim__field { display: flex; flex-direction: column; min-width: 0; }\n\t#actiff-estim .actiff-estim__field--full { grid-column: 1 \/ -1; }\n\t#actiff-estim .actiff-estim__field label { color: #9a9aa8; font-size: 13px; margin-bottom: 8px; }\n\t#actiff-estim input[type=date], #actiff-estim input[type=time], #actiff-estim input[type=number], #actiff-estim input[type=text], #actiff-estim input[type=tel], #actiff-estim input[type=email] { background: #1d1e28; border: 1px solid rgba(255,255,255,0.1); border-radius: 8px; padding: 12px 14px; color: #e8e8ee; font-family: 'Khula', sans-serif; font-size: 15px; width: 100%; cursor: pointer; }\n\t#actiff-estim input[type=text], #actiff-estim input[type=tel], #actiff-estim input[type=email] { cursor: text; }\n\t#actiff-estim input:focus, #actiff-estim textarea:focus { outline: none; border-color: #818cf8; }\n\t#actiff-estim .actiff-estim__textarea { background: #1d1e28; border: 1px solid rgba(255,255,255,0.1); border-radius: 8px; padding: 12px 14px; color: #e8e8ee; font-family: 'Khula', sans-serif; font-size: 14px; width: 100%; resize: vertical; }\n\t#actiff-estim .actiff-estim__autocomplete { width: 100%; }\n\t#actiff-estim .actiff-estim__autocomplete gmp-place-autocomplete { width: 100%; --gmpx-color-surface: #1d1e28; --gmpx-color-on-surface: #e8e8ee; --gmpx-color-on-surface-variant: #9a9aa8; border-radius: 8px; }\n\t#actiff-estim .actiff-estim__toggle { display: flex; gap: 8px; background: #1d1e28; border-radius: 8px; padding: 4px; }\n\t#actiff-estim .actiff-estim__toggle-btn { flex: 1; background: transparent; border: 1px solid transparent; color: #9a9aa8; padding: 9px 12px; border-radius: 6px; font-family: 'Khula', sans-serif; font-weight: 600; font-size: 14px; cursor: pointer; }\n\t#actiff-estim .actiff-estim__toggle-btn.is-active { background: rgba(129,140,248,0.12); border-color: #818cf8; color: #a5b4fc; }\n\t#actiff-estim .actiff-estim__distance-hint { color: #6d6d78; font-size: 13px; margin: -8px 0 22px; font-style: italic; }\n\t#actiff-estim .actiff-estim__options-field { margin-bottom: 26px; }\n\t#actiff-estim .actiff-estim__chips { display: flex; flex-wrap: wrap; gap: 10px; }\n\t#actiff-estim .actiff-estim__chip { background: #1d1e28; border: 1px solid rgba(255,255,255,0.1); color: #c7c7d1; padding: 9px 14px; border-radius: 999px; font-family: 'Khula', sans-serif; font-size: 13px; cursor: pointer; }\n\t#actiff-estim .actiff-estim__chip.is-active { background: rgba(129,140,248,0.12); border-color: #818cf8; color: #a5b4fc; }\n\t#actiff-estim .actiff-estim__qty-options { display: flex; flex-direction: column; gap: 10px; margin-top: 14px; }\n\t#actiff-estim .actiff-estim__qty-row { display: flex; align-items: center; justify-content: space-between; background: #1d1e28; border: 1px solid rgba(255,255,255,0.1); border-radius: 10px; padding: 10px 14px; gap: 12px; }\n\t#actiff-estim .actiff-estim__qty-label { color: #c7c7d1; font-size: 13px; display: flex; flex-direction: column; gap: 3px; }\n\t#actiff-estim .actiff-estim__qty-price { color: #6d6d78; font-size: 11px; font-weight: 400; }\n\t#actiff-estim .actiff-estim__stepper { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }\n\t#actiff-estim .actiff-estim__step-btn { width: 28px; height: 28px; border-radius: 6px; border: 1px solid rgba(255,255,255,0.15); background: #14151d; color: #e8e8ee; font-size: 16px; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; font-family: 'Khula', sans-serif; }\n\t#actiff-estim .actiff-estim__step-btn:hover { border-color: #818cf8; color: #a5b4fc; }\n\t#actiff-estim .actiff-estim__qty-value { min-width: 16px; text-align: center; font-weight: 700; color: #f2f2f4; font-size: 14px; }\n\t#actiff-estim .actiff-estim__submit { width: 100%; background: #6366f1; border: 1px solid #6366f1; color: #fff; padding: 15px 24px; border-radius: 8px; font-family: 'Khula', sans-serif; font-weight: 600; font-size: 15px; letter-spacing: 0.5px; cursor: pointer; transition: background 0.2s ease; margin-top: 4px; }\n\t#actiff-estim .actiff-estim__submit:hover { background: #4f46e5; }\n\t#actiff-estim .actiff-estim__submit:disabled { opacity: 0.5; cursor: default; }\n\t#actiff-estim .actiff-estim__result-title { font-size: 20px; font-weight: 700; margin: 0 0 20px; color: #f2f2f4; }\n\t#actiff-estim .actiff-estim__placeholder, #actiff-estim .actiff-estim__loading { color: #9a9aa8; font-size: 14px; line-height: 1.6; }\n\t#actiff-estim .actiff-estim__placeholder a, #actiff-estim .actiff-estim__loading a { color: #a5b4fc; }\n\t#actiff-estim .actiff-estim__error { color: #f38ba8; font-size: 15px; }\n\t#actiff-estim .actiff-estim__line { display: flex; justify-content: space-between; color: #c7c7d1; font-size: 14px; padding: 8px 0; }\n\t#actiff-estim .actiff-estim__line--muted { color: #9a9aa8; font-size: 13px; }\n\t#actiff-estim .actiff-estim__divider { height: 1px; background: rgba(255,255,255,0.08); margin: 12px 0; }\n\t#actiff-estim .actiff-estim__total-row { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 24px; }\n\t#actiff-estim .actiff-estim__total-row span:first-child { color: #9a9aa8; font-size: 14px; }\n\t#actiff-estim .actiff-estim__total-value { font-size: 34px; font-weight: 700; color: #f2f2f4; }\n\t#actiff-estim .actiff-estim__book-btn { display: block; text-align: center; width: 100%; background: #6366f1; color: #fff; text-decoration: none; border: none; cursor: pointer; padding: 14px 20px; border-radius: 8px; font-weight: 600; font-size: 15px; font-family: 'Khula', sans-serif; margin-bottom: 4px; }\n\t#actiff-estim .actiff-estim__book-btn:hover { background: #4f46e5; }\n\t#actiff-estim .actiff-estim__call-alt { text-align: center; font-size: 13px; color: #9a9aa8; margin-bottom: 18px; }\n\t#actiff-estim .actiff-estim__call-alt a { color: #a5b4fc; }\n\t#actiff-estim .actiff-estim__disclaimer { font-size: 12px; color: #6d6d78; line-height: 1.5; }\n\t#actiff-estim .actiff-estim__demo-note { font-size: 12px; color: #f5c563; line-height: 1.5; margin-bottom: 10px; }\n\t#actiff-estim .actiff-estim__map { width: 100%; height: 220px; border-radius: 12px; overflow: hidden; background: #1d1e28; }\n\t#actiff-estim .actiff-estim__map-hint { color: #6d6d78; font-size: 12px; margin: 10px 0 0; font-style: italic; }\n\t<\/style>\n\t<script>\n\t(function(){\n\t  var ACTIFF_RESA = {\"ajax\":\"https:\\\/\\\/actifftransport.com\\\/wp-admin\\\/admin-ajax.php\",\"btn_mail\":\"Book by email\",\"btn_wa\":\"Book via WhatsApp\",\"sending\":\"Sending\\u2026\",\"sent\":\"Thank you! Your booking request has been sent by email. We will get back to you within 24 hours.\",\"failed\":\"Sending failed. Please try again, use WhatsApp or call us on +33 7 83 16 07 83.\"};\n\t  var ACTIFF_MAPS_KEY = \"AIzaSyCzkBwnimQm9-XTAHqKq0TqqKOrsxfocbA\";\n\t  var ACTIFF_WHATSAPP = \"33783160783\";\n\t  var BASE_FEE = 15;\n\t  var RATE_PER_KM = 2.5;\n\t  var MINIMUM_FARE = 30;\n\t  var NIGHT_SURCHARGE_PCT = 25;\n\t  var DEMO_DISTANCE_FACTOR = 1.35;\n\t  var DEMO_AVG_SPEED = 65;\n\t  var HOLIDAYS = [\"2026-01-01\",\"2026-05-01\",\"2026-05-08\",\"2026-07-14\",\"2026-08-15\",\"2026-11-01\",\"2026-11-11\",\"2026-12-25\",\"2026-04-06\",\"2026-05-14\",\"2026-05-25\",\"2027-01-01\",\"2027-05-01\",\"2027-05-08\",\"2027-07-14\",\"2027-08-15\",\"2027-11-01\",\"2027-11-11\",\"2027-12-25\",\"2027-03-29\",\"2027-05-06\",\"2027-05-17\"];\n\t  var I18N = {\"extra_trailer_label\":\"Luggage trailer\",\"extra_bike_label\":\"Bike rack trailer\",\"extra_booster_label\":\"Booster seat\",\"extra_babyseat_label\":\"Baby seat\",\"trip_one_way\":\"One way\",\"trip_round_trip\":\"Round trip\",\"fallback_note\":\"Approximate estimate (straight-line distance adjusted) \\u2014 the exact fare will be confirmed by the driver.\",\"pickup_fee\":\"Pickup fee\",\"night_surcharge\":\"Night \\\/ Sunday \\\/ holiday surcharge\",\"minimum_adjustment\":\"Minimum fare adjustment\",\"total_estimated\":\"Estimated total\",\"disclaimer\":\"Indicative estimate, tolls excluded. Final fare confirmed by the driver.\",\"forfait_label\":\"Flat rate\",\"forfait_from\":\" \\u00b7 from \",\"winter_forfait_note\":\"Winter flat rate for this airport \\\/ station \\u2194 resort transfer.\",\"need_trip_first\":\"Please fill in your trip above to get a fare before booking.\",\"need_contact_info\":\"Please complete your contact details.\",\"need_consent\":\"Please tick the consent box to book.\",\"wa_greeting\":\"Hello, I would like to book a ride.\",\"wa_name\":\"Name: \",\"wa_phone\":\"Phone: \",\"wa_email\":\"Email: \",\"wa_pickup\":\"Pickup: \",\"wa_dropoff\":\"Drop-off: \",\"wa_outbound\":\"Outbound: \",\"wa_at\":\" at \",\"wa_return\":\"Return: \",\"wa_passengers\":\"Passengers: \",\"wa_children\":\" (including children: \",\"wa_type\":\"Type: \",\"wa_extra_info\":\"Additional info: \",\"wa_estimated_fare\":\"Estimated fare: \",\"err_missing_fields\":\"Please fill in a pickup address, a drop-off address, a date and a time.\",\"err_missing_return\":\"Please fill in the return date and time.\",\"calculating\":\"Calculating\\u2026\",\"err_distance\":\"Unable to estimate the distance between these two addresses. Please contact us directly.\",\"no_key_intro\":\"Our online calculator is being finalized. \",\"contact_whatsapp\":\"Contact us on WhatsApp\",\"or_call\":\" or call \",\"for_instant_quote\":\" for an instant quote.\",\"activation_hint\":\"Calculator activation in progress \\u2014 please contact us directly for an estimate.\",\"coming_soon\":\"Coming soon\"};\n\t  var WINTER_START = { month: 12, day: 1 };\n\t  var WINTER_END = { month: 4, day: 30 };\n\t  var WINTER_STATION_FARES = {\"ALPE D'HUEZ\":{\"GNB\":320,\"LYS\":340,\"CHAMBERY\":350,\"GENEVE\":440},\"CHAMONIX\":{\"GNB\":550,\"LYS\":570,\"CHAMBERY\":450,\"GENEVE\":300},\"CHAMROUSSE\":{\"GNB\":200,\"LYS\":220,\"CHAMBERY\":320,\"GENEVE\":390},\"COURCHEVEL\":{\"GNB\":480,\"LYS\":500,\"CHAMBERY\":400,\"GENEVE\":350},\"LA PLAGNE\":{\"GNB\":470,\"LYS\":490,\"CHAMBERY\":400,\"GENEVE\":450},\"LES 2 ALPES\":{\"GNB\":330,\"LYS\":350,\"CHAMBERY\":370,\"GENEVE\":450},\"LES ARCS\":{\"GNB\":470,\"LYS\":490,\"CHAMBERY\":400,\"GENEVE\":390},\"LES MENUIRES\":{\"GNB\":490,\"LYS\":510,\"CHAMBERY\":450,\"GENEVE\":390},\"LES SEPT LAUX\":{\"GNB\":200,\"LYS\":220,\"CHAMBERY\":250,\"GENEVE\":320},\"MERIBEL\":{\"GNB\":430,\"LYS\":450,\"CHAMBERY\":400,\"GENEVE\":370},\"SERRE CHEVALIER\":{\"GNB\":400,\"LYS\":430,\"CHAMBERY\":490,\"GENEVE\":550},\"TIGNES\":{\"GNB\":490,\"LYS\":510,\"CHAMBERY\":450,\"GENEVE\":400},\"VAL D'ISERE\":{\"GNB\":490,\"LYS\":510,\"CHAMBERY\":450,\"GENEVE\":450},\"VAL THORENS\":{\"GNB\":470,\"LYS\":490,\"CHAMBERY\":440,\"GENEVE\":480},\"VAUJANY\":{\"GNB\":240,\"LYS\":260,\"CHAMBERY\":290,\"GENEVE\":350}};\n\t  var ZONE_LABELS = { GNB: 'Grenoble', LYS: 'Lyon St-Exup\u00e9ry', CHAMBERY: 'Chamb\u00e9ry', GENEVE: 'Gen\u00e8ve' };\n\t  var ZONE_KEYWORDS = {\n\t    GNB: ['GRENOBLE', 'SAINT GEOIRS', 'ST GEOIRS'],\n\t    LYS: ['LYON', 'SAINT EXUPERY', 'ST EXUPERY', 'SATOLAS'],\n\t    CHAMBERY: ['CHAMBERY', 'VOGLANS', 'AIX LES BAINS'],\n\t    GENEVE: ['GENEVE', 'GENEVA', 'COINTRIN']\n\t  };\n\t  var STATION_ALIASES = {\n\t    \"ALPE D'HUEZ\": ['ALPE D HUEZ'],\n\t    'CHAMONIX': ['CHAMONIX'],\n\t    'CHAMROUSSE': ['CHAMROUSSE'],\n\t    'COURCHEVEL': ['COURCHEVEL'],\n\t    'LA PLAGNE': ['LA PLAGNE'],\n\t    'LES 2 ALPES': ['LES 2 ALPES', 'LES DEUX ALPES'],\n\t    'LES ARCS': ['LES ARCS'],\n\t    'LES MENUIRES': ['LES MENUIRES'],\n\t    'LES SEPT LAUX': ['LES SEPT LAUX', 'LES 7 LAUX', 'PRAPOUTEL', 'LE PLEYNET'],\n\t    'MERIBEL': ['MERIBEL'],\n\t    'SERRE CHEVALIER': ['SERRE CHEVALIER'],\n\t    'TIGNES': ['TIGNES'],\n\t    \"VAL D'ISERE\": ['VAL D ISERE'],\n\t    'VAL THORENS': ['VAL THORENS'],\n\t    'VAUJANY': ['VAUJANY']\n\t  };\n\t  function actiffNormalize(s){ return (s || '').toString().normalize('NFD').replace(\/[\\u0300-\\u036f]\/g, '').replace(\/[\\u2019'`\\u00b4]\/g, ' ').replace(\/-\/g, ' ').toUpperCase().replace(\/\\s+\/g, ' ').trim(); }\n\t  function actiffMatchZone(addr){ var norm = actiffNormalize(addr); for (var key in ZONE_KEYWORDS) { var kws = ZONE_KEYWORDS[key]; for (var i = 0; i < kws.length; i++) { if (norm.indexOf(kws[i]) !== -1) { return key; } } } return null; }\n\t  function actiffMatchStation(addr){ var norm = actiffNormalize(addr); for (var key in STATION_ALIASES) { var aliases = STATION_ALIASES[key]; for (var i = 0; i < aliases.length; i++) { if (norm.indexOf(aliases[i]) !== -1) { return key; } } } return null; }\n\t  function actiffIsWinterDate(dateStr){\n\t    if (!dateStr) { return false; }\n\t    var d = new Date(dateStr + 'T00:00:00'); var m = d.getMonth() + 1; var day = d.getDate();\n\t    var startM = WINTER_START.month, startD = WINTER_START.day, endM = WINTER_END.month, endD = WINTER_END.day;\n\t    var mmdd = m * 100 + day; var startVal = startM * 100 + startD; var endVal = endM * 100 + endD;\n\t    if (startVal <= endVal) { return mmdd >= startVal && mmdd <= endVal; }\n\t    return mmdd >= startVal || mmdd <= endVal;\n\t  }\n\t  function actiffGetWinterForfait(dateStr, pickup, dropoff){\n\t    if (!actiffIsWinterDate(dateStr)) { return null; }\n\t    if (!pickup || !pickup.formattedAddress || !dropoff || !dropoff.formattedAddress) { return null; }\n\t    var zoneKey = actiffMatchZone(pickup.formattedAddress);\n\t    var stationKey = actiffMatchStation(dropoff.formattedAddress);\n\t    if (!zoneKey || !stationKey) { zoneKey = zoneKey || actiffMatchZone(dropoff.formattedAddress); stationKey = stationKey || actiffMatchStation(pickup.formattedAddress); }\n\t    if (!zoneKey || !stationKey) { return null; }\n\t    var table = WINTER_STATION_FARES[stationKey];\n\t    if (!table || typeof table[zoneKey] === 'undefined') { return null; }\n\t    return { price: table[zoneKey], zoneLabel: ZONE_LABELS[zoneKey], stationLabel: stationKey };\n\t  }\n\t  var EXTRAS_META = { trailer: { label: I18N.extra_trailer_label, price: 40 }, bike: { label: I18N.extra_bike_label, price: 40 } };\n\t  var QTY_EXTRAS_META = { booster: { label: I18N.extra_booster_label, price: 5 }, babyseat: { label: I18N.extra_babyseat_label, price: 5 } };\n\t  var MAP_DARK_STYLE = [\n\t    { elementType: 'geometry', stylers: [{ color: '#1d1e28' }] },\n\t    { elementType: 'labels.text.stroke', stylers: [{ color: '#1d1e28' }] },\n\t    { elementType: 'labels.text.fill', stylers: [{ color: '#9a9aa8' }] },\n\t    { featureType: 'administrative', elementType: 'geometry', stylers: [{ color: '#3c3c47' }] },\n\t    { featureType: 'poi', stylers: [{ visibility: 'off' }] },\n\t    { featureType: 'road', elementType: 'geometry', stylers: [{ color: '#2c2d38' }] },\n\t    { featureType: 'road', elementType: 'labels.text.fill', stylers: [{ color: '#8a8a96' }] },\n\t    { featureType: 'road.highway', elementType: 'geometry', stylers: [{ color: '#3a3a48' }] },\n\t    { featureType: 'transit', stylers: [{ visibility: 'off' }] },\n\t    { featureType: 'water', elementType: 'geometry', stylers: [{ color: '#14151d' }] },\n\t    { featureType: 'water', elementType: 'labels.text.fill', stylers: [{ color: '#5c5c68' }] }\n\t  ];\n\t  var STOP_HOURLY = 40; var STOP_MAX_HOURS = 12; var STOP_I18N = {\"line\":\"Stop \\\/ driver at your disposal\",\"wa\":\"Stop (driver at disposal): \"}; var stopHours = 0, stopType = ''; var selectedExtras = {}; var qtyExtras = { booster: 0, babyseat: 0 }; var tripType = 'one-way'; var lastDistanceKm = null; var lastPickupAddr = '', lastDropoffAddr = ''; var usedFallback = false; var lastTotal = null; var pickupPlace = null, dropoffPlace = null; var forfaitMode = false, forfaitPrice = null, forfaitZoneLabel = '', forfaitStationLabel = '';\n\t  var resultBox = document.getElementById('actiff-estim-result');\n\t  var form = document.getElementById('actiff-estim-form');\n\t  var dateInput = document.getElementById('actiff-date');\n\t  var timeInput = document.getElementById('actiff-time');\n\t  var returnRow = document.getElementById('actiff-return-row');\n\t  var returnDateInput = document.getElementById('actiff-return-date');\n\t  var returnTimeInput = document.getElementById('actiff-return-time');\n\t  var passengersInput = document.getElementById('actiff-passengers');\n\t  var childrenInput = document.getElementById('actiff-children');\n\t  var mapHint = document.getElementById('actiff-map-hint');\n\t  var mapInstance = null, pickupMarker = null, dropoffMarker = null, routeLine = null;\n\t  var bookBtn = document.getElementById('actiff-book-btn');\n\t  var contactStatus = document.getElementById('actiff-contact-status');\n\t  [dateInput, timeInput, returnDateInput, returnTimeInput].forEach(function(el){ el.addEventListener('click', function(){ if (this.showPicker) { try { this.showPicker(); } catch (e) {} } }); });\n\t  dateInput.addEventListener('change', function(){ if (dateInput.value) { returnDateInput.min = dateInput.value; } });\n\t  function maxQty(){ var p = parseInt(passengersInput.value, 10); return (!p || p < 1) ? 1 : p; }\n\t  function syncPassengerLimits(){\n\t    var max = maxQty();\n\t    childrenInput.max = max;\n\t    if (parseInt(childrenInput.value, 10) > max) { childrenInput.value = max; }\n\t    Object.keys(qtyExtras).forEach(function(key){\n\t      if (qtyExtras[key] > max) { qtyExtras[key] = max; var el = document.getElementById('actiff-qty-' + key); if (el) { el.textContent = qtyExtras[key]; } }\n\t    });\n\t  }\n\t  passengersInput.addEventListener('input', function(){ syncPassengerLimits(); renderResult(); });\n\t  childrenInput.addEventListener('input', function(){ renderResult(); });\n\t  document.querySelectorAll('.actiff-estim__step-btn').forEach(function(btn){\n\t    btn.addEventListener('click', function(){\n\t      var key = btn.getAttribute('data-qty');\n\t      var dir = parseInt(btn.getAttribute('data-dir'), 10);\n\t      var max = maxQty();\n\t      var next = qtyExtras[key] + dir;\n\t      if (next < 0) { next = 0; }\n\t      if (next > max) { next = max; }\n\t      qtyExtras[key] = next;\n\t      var el = document.getElementById('actiff-qty-' + key);\n\t      if (el) { el.textContent = next; }\n\t      renderResult();\n\t    });\n\t  });\n\t  function formatEuro(n){ return n.toFixed(2).replace('.', ',') + ' \u20ac'; }\n\t  function formatKm(n){ return n.toFixed(1).replace('.', ',') + ' km'; }\n\t  function isSurchargeApplicable(dateStr, timeStr){ if (!dateStr || !timeStr) { return false; } var hour = parseInt(timeStr.split(':')[0], 10); var isNight = (hour >= 20 || hour < 6); var d = new Date(dateStr + 'T00:00:00'); var isSunday = d.getDay() === 0; var isHoliday = HOLIDAYS.indexOf(dateStr) !== -1; return isNight || isSunday || isHoliday; }\n\t  function haversineKm(lat1, lng1, lat2, lng2){ var R = 6371; var dLat = (lat2 - lat1) * Math.PI \/ 180; var dLng = (lng2 - lng1) * Math.PI \/ 180; var a = Math.sin(dLat\/2) * Math.sin(dLat\/2) + Math.cos(lat1 * Math.PI\/180) * Math.cos(lat2 * Math.PI\/180) * Math.sin(dLng\/2) * Math.sin(dLng\/2); var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); return R * c; }\n\t  function ensureMap(){\n\t    if (!mapInstance) {\n\t      var mapEl = document.getElementById('actiff-estim-map');\n\t      if (!mapEl || typeof google === 'undefined') { return null; }\n\t      mapInstance = new google.maps.Map(mapEl, { center: { lat: 45.5, lng: 5.9 }, zoom: 8, disableDefaultUI: true, zoomControl: true, styles: MAP_DARK_STYLE });\n\t    }\n\t    return mapInstance;\n\t  }\n\t  function updateMap(){\n\t    if (!pickupPlace || !pickupPlace.location || !dropoffPlace || !dropoffPlace.location) { return; }\n\t    var map = ensureMap();\n\t    if (!map) { return; }\n\t    var p1 = pickupPlace.location, p2 = dropoffPlace.location;\n\t    if (pickupMarker) { pickupMarker.setMap(null); }\n\t    if (dropoffMarker) { dropoffMarker.setMap(null); }\n\t    if (routeLine) { routeLine.setMap(null); }\n\t    pickupMarker = new google.maps.Marker({ position: p1, map: map, label: { text: 'D', color: '#0b0c13', fontWeight: '700' }, title: 'D\u00e9part' });\n\t    dropoffMarker = new google.maps.Marker({ position: p2, map: map, label: { text: 'A', color: '#0b0c13', fontWeight: '700' }, title: 'Arriv\u00e9e' });\n\t    routeLine = new google.maps.Polyline({ path: [p1, p2], geodesic: true, strokeColor: '#818cf8', strokeOpacity: 0.85, strokeWeight: 3 });\n\t    routeLine.setMap(map);\n\t    var bounds = new google.maps.LatLngBounds(); bounds.extend(p1); bounds.extend(p2); map.fitBounds(bounds, 48);\n\t    if (mapHint) { mapHint.style.display = 'none'; }\n\t  }\n\t  function renderResult(){\n\t    if (!forfaitMode && lastDistanceKm == null) { return; }\n\t    var legMultiplier = tripType === 'round-trip' ? 2 : 1;\n\t    var extrasTotal = 0; var extrasLines = '';\n\t    Object.keys(selectedExtras).forEach(function(key){ if (selectedExtras[key]) { var meta = EXTRAS_META[key]; extrasTotal += meta.price; extrasLines += '<div class=\"actiff-estim__line\"><span>' + meta.label + '<\/span><span>+' + formatEuro(meta.price) + '<\/span><\/div>'; } });\n\t    Object.keys(qtyExtras).forEach(function(key){ var qty = qtyExtras[key]; if (qty > 0) { var meta = QTY_EXTRAS_META[key]; var lineTotal = meta.price * qty; extrasTotal += lineTotal; extrasLines += '<div class=\"actiff-estim__line\"><span>' + meta.label + ' \u00d7 ' + qty + '<\/span><span>+' + formatEuro(lineTotal) + '<\/span><\/div>'; } });\n\t    if (stopHours > 0) { var stopCost = stopHours * STOP_HOURLY; extrasTotal += stopCost; extrasLines += '<div class=\"actiff-estim__line\"><span>' + STOP_I18N.line + (stopType ? ' (' + stopType + ')' : '') + ' \u00b7 ' + stopHours + ' h \u00d7 ' + formatEuro(STOP_HOURLY) + '<\/span><span>+' + formatEuro(stopCost) + '<\/span><\/div>'; }\n\t    var html = ''; var total;\n\t    if (forfaitMode) {\n\t      var forfaitLineTotal = forfaitPrice * legMultiplier;\n\t      total = forfaitLineTotal + extrasTotal;\n\t      html += '<div class=\"actiff-estim__line\"><span>' + I18N.forfait_label + ' ' + forfaitStationLabel + I18N.forfait_from + forfaitZoneLabel + (legMultiplier === 2 ? ' \u00d7 2' : '') + '<\/span><span>' + formatEuro(forfaitLineTotal) + '<\/span><\/div>';\n\t      html += extrasLines;\n\t      html += '<div class=\"actiff-estim__divider\"><\/div>';\n\t      html += '<div class=\"actiff-estim__total-row\"><span>' + I18N.total_estimated + '<\/span><span class=\"actiff-estim__total-value\">' + formatEuro(total) + '<\/span><\/div>';\n\t      html += '<div class=\"actiff-estim__disclaimer\">' + I18N.winter_forfait_note + '<\/div>';\n\t    } else {\n\t      var distanceCost = lastDistanceKm * RATE_PER_KM * legMultiplier;\n\t      var rideBase = BASE_FEE + distanceCost;\n\t      var surchargeApplies = isSurchargeApplicable(dateInput.value, timeInput.value) || (tripType === 'round-trip' && isSurchargeApplicable(returnDateInput.value, returnTimeInput.value));\n\t      var surchargeAmount = 0;\n\t      if (surchargeApplies) { surchargeAmount = rideBase * (NIGHT_SURCHARGE_PCT \/ 100); rideBase += surchargeAmount; }\n\t      var minimumApplied = false; var minimumTopUp = 0;\n\t      if (rideBase < MINIMUM_FARE) { minimumTopUp = MINIMUM_FARE - rideBase; rideBase = MINIMUM_FARE; minimumApplied = true; }\n\t      total = rideBase + extrasTotal;\n\t      var tripLabel = tripType === 'round-trip' ? I18N.trip_round_trip : I18N.trip_one_way;\n\t      if (usedFallback) { html += '<div class=\"actiff-estim__demo-note\">' + I18N.fallback_note + '<\/div>'; }\n\t      html += '<div class=\"actiff-estim__line\"><span>' + I18N.pickup_fee + '<\/span><span>' + formatEuro(BASE_FEE) + '<\/span><\/div>';\n\t      html += '<div class=\"actiff-estim__line\"><span>' + tripLabel + ' \u00b7 ' + formatKm(lastDistanceKm) + ' \u00d7 ' + formatEuro(RATE_PER_KM) + (legMultiplier === 2 ? ' \u00d7 2' : '') + '<\/span><span>' + formatEuro(distanceCost) + '<\/span><\/div>';\n\t      if (surchargeApplies) { html += '<div class=\"actiff-estim__line actiff-estim__line--muted\"><span>' + I18N.night_surcharge + ' (+' + NIGHT_SURCHARGE_PCT + '%)<\/span><span>+' + formatEuro(surchargeAmount) + '<\/span><\/div>'; }\n\t      if (minimumApplied) { html += '<div class=\"actiff-estim__line actiff-estim__line--muted\"><span>' + I18N.minimum_adjustment + '<\/span><span>+' + formatEuro(minimumTopUp) + '<\/span><\/div>'; }\n\t      html += extrasLines;\n\t      html += '<div class=\"actiff-estim__divider\"><\/div>';\n\t      html += '<div class=\"actiff-estim__total-row\"><span>' + I18N.total_estimated + '<\/span><span class=\"actiff-estim__total-value\">' + formatEuro(total) + '<\/span><\/div>';\n\t      html += '<div class=\"actiff-estim__disclaimer\">' + I18N.disclaimer + '<\/div>';\n\t    }\n\t    lastTotal = total;\n\t    resultBox.innerHTML = html;\n\t    if (contactStatus) { contactStatus.textContent = ''; }\n\t  }\n\t  if (bookBtn) {\n\t    var actiffBook = function(mode){\n\t      if (contactStatus) { contactStatus.style.color = ''; }\n\t      if (lastTotal == null) {\n\t        if (contactStatus) { contactStatus.textContent = I18N.need_trip_first; }\n\t        if (form) { form.scrollIntoView({ behavior: 'smooth', block: 'center' }); }\n\t        return;\n\t      }\n\t      var lastnameEl = document.getElementById('actiff-lastname');\n\t      var firstnameEl = document.getElementById('actiff-firstname');\n\t      var phoneEl = document.getElementById('actiff-phone');\n\t      var emailEl = document.getElementById('actiff-email');\n\t      var flightEl = document.getElementById('actiff-flight');\n\t      var consentEl = document.getElementById('actiff-consent');\n\t      var requiredEls = [lastnameEl, firstnameEl, phoneEl, emailEl];\n\t      var missing = null;\n\t      for (var i = 0; i < requiredEls.length; i++) { if (requiredEls[i] && !requiredEls[i].value.trim()) { missing = requiredEls[i]; break; } }\n\t      if (missing) {\n\t        if (contactStatus) { contactStatus.textContent = I18N.need_contact_info; }\n\t        missing.focus();\n\t        missing.scrollIntoView({ behavior: 'smooth', block: 'center' });\n\t        return;\n\t      }\n\t      if (consentEl && !consentEl.checked) {\n\t        if (contactStatus) { contactStatus.textContent = I18N.need_consent; }\n\t        consentEl.focus();\n\t        consentEl.scrollIntoView({ behavior: 'smooth', block: 'center' });\n\t        return;\n\t      }\n\t      if (contactStatus) { contactStatus.textContent = ''; }\n\t      var tripLabel = tripType === 'round-trip' ? I18N.trip_round_trip : I18N.trip_one_way;\n\t      var waMsg = I18N.wa_greeting + '\\n' +\n\t        I18N.wa_name + lastnameEl.value.trim() + ' ' + firstnameEl.value.trim() + '\\n' +\n\t        I18N.wa_phone + phoneEl.value.trim() + '\\n' +\n\t        I18N.wa_email + emailEl.value.trim() + '\\n' +\n\t        I18N.wa_pickup + lastPickupAddr + '\\n' +\n\t        I18N.wa_dropoff + lastDropoffAddr + '\\n' +\n\t        I18N.wa_outbound + (dateInput.value || '') + I18N.wa_at + (timeInput.value || '') + '\\n' +\n\t        (tripType === 'round-trip' ? (I18N.wa_return + (returnDateInput.value || '') + I18N.wa_at + (returnTimeInput.value || '') + '\\n') : '') +\n\t        I18N.wa_passengers + (passengersInput.value || '') + I18N.wa_children + (childrenInput.value || '0') + ')\\n' +\n\t        I18N.wa_type + tripLabel + '\\n' +\n\t        (flightEl && flightEl.value.trim() ? (I18N.wa_extra_info + flightEl.value.trim() + '\\n') : '') +\n\t        (stopHours > 0 ? (STOP_I18N.wa + stopHours + ' h' + (stopType ? ' \u2013 ' + stopType : '') + ' (+' + formatEuro(stopHours * STOP_HOURLY) + ')\\n') : '') +\n\t        I18N.wa_estimated_fare + formatEuro(lastTotal);\n\t      var waUrl = 'https:\/\/wa.me\/' + ACTIFF_WHATSAPP + '?text=' + encodeURIComponent(waMsg);\n\t      var resaFd = new FormData();\n\t      resaFd.append('action', 'actiff_resa_send');\n\t      resaFd.append('source', 'estimation');\n\t      resaFd.append('mode', mode);\n\t      resaFd.append('consent', '1');\n\t      resaFd.append('nom', lastnameEl.value.trim() + ' ' + firstnameEl.value.trim());\n\t      resaFd.append('tel', phoneEl.value.trim());\n\t      resaFd.append('email', emailEl.value.trim());\n\t      resaFd.append('trajet', lastPickupAddr + ' \u2192 ' + lastDropoffAddr);\n\t      resaFd.append('date', dateInput.value || '');\n\t      resaFd.append('heure', timeInput.value || '');\n\t      resaFd.append('message', flightEl ? flightEl.value.trim() : '');\n\t      resaFd.append('tarif', formatEuro(lastTotal));\n\t      resaFd.append('details', waMsg);\n\t      if (mode === 'whatsapp') {\n\t        var resaQueued = false;\n\t        try { if (navigator.sendBeacon) { resaQueued = navigator.sendBeacon(ACTIFF_RESA.ajax, resaFd); } } catch (e) {}\n\t        if (!resaQueued) { try { fetch(ACTIFF_RESA.ajax, { method: 'POST', body: resaFd, keepalive: true, credentials: 'same-origin' }).catch(function(){}); } catch (e) {} }\n\t        window.open(waUrl, '_blank', 'noopener');\n\t        return;\n\t      }\n\t      var mailBtn = document.getElementById('actiff-book-btn-mail');\n\t      var mailLabel = mailBtn ? mailBtn.textContent : '';\n\t      if (mailBtn) { mailBtn.disabled = true; mailBtn.textContent = ACTIFF_RESA.sending; }\n\t      bookBtn.disabled = true;\n\t      fetch(ACTIFF_RESA.ajax, { method: 'POST', body: resaFd, credentials: 'same-origin' })\n\t        .then(function(r){ return r.json(); })\n\t        .then(function(j){\n\t          if (!contactStatus) { return; }\n\t          if (j && j.success) { contactStatus.style.color = '#86efac'; contactStatus.textContent = ACTIFF_RESA.sent; }\n\t          else { contactStatus.textContent = (j && j.data && j.data.message) || ACTIFF_RESA.failed; }\n\t        })\n\t        .catch(function(){ if (contactStatus) { contactStatus.textContent = ACTIFF_RESA.failed; } })\n\t        .then(function(){ if (mailBtn) { mailBtn.disabled = false; mailBtn.textContent = mailLabel; } bookBtn.disabled = false; });\n\t    };\n\t    bookBtn.addEventListener('click', function(){ actiffBook('whatsapp'); });\n\t    var bookBtnMail = document.getElementById('actiff-book-btn-mail');\n\t    if (bookBtnMail) { bookBtnMail.addEventListener('click', function(){ actiffBook('email'); }); }\n\t  }\n\t  var tripButtons = document.querySelectorAll('.actiff-estim__toggle-btn');\n\t  tripButtons.forEach(function(btn){ btn.addEventListener('click', function(){ tripButtons.forEach(function(b){ b.classList.remove('is-active'); }); btn.classList.add('is-active'); tripType = btn.getAttribute('data-triptype'); if (tripType === 'round-trip') { returnRow.style.display = ''; returnDateInput.required = true; returnTimeInput.required = true; } else { returnRow.style.display = 'none'; returnDateInput.required = false; returnTimeInput.required = false; } renderResult(); }); });\n\t  var chips = document.querySelectorAll('.actiff-estim__chip');\n\t  chips.forEach(function(chip){ chip.addEventListener('click', function(){ var key = chip.getAttribute('data-extra'); selectedExtras[key] = !selectedExtras[key]; chip.classList.toggle('is-active', !!selectedExtras[key]); renderResult(); }); });\n\t  (function(){\n\t    var stopBtns = document.querySelectorAll('.actiff-stop-btn'); var stopVal = document.getElementById('actiff-stop-hours'); var stopTypeRow = document.getElementById('actiff-stop-type-row'); var stopSel = document.getElementById('actiff-stop-type');\n\t    stopBtns.forEach(function(b){ b.addEventListener('click', function(){ var n = stopHours + parseInt(b.getAttribute('data-dir'), 10); if (n < 0) { n = 0; } if (n > STOP_MAX_HOURS) { n = STOP_MAX_HOURS; } stopHours = n; if (stopVal) { stopVal.textContent = n + ' h'; } if (stopTypeRow) { stopTypeRow.style.display = n > 0 ? '' : 'none'; } if (n === 0 && stopSel) { stopSel.value = ''; stopType = ''; } renderResult(); }); });\n\t    if (stopSel) { stopSel.addEventListener('change', function(){ stopType = stopSel.value ? stopSel.options[stopSel.selectedIndex].text : ''; renderResult(); }); }\n\t  })();\n\t  function keyConfigured(){ return ACTIFF_MAPS_KEY && ACTIFF_MAPS_KEY.length > 0; }\n\t  if (!keyConfigured()) {\n\t    resultBox.innerHTML = '<p class=\"actiff-estim__placeholder\">' + I18N.no_key_intro + '<a href=\"https:\/\/wa.me\/' + ACTIFF_WHATSAPP + '\" target=\"_blank\" rel=\"noopener\">' + I18N.contact_whatsapp + '<\/a>' + I18N.or_call + '<a href=\"tel:0783160783\">07 83 16 07 83<\/a>' + I18N.for_instant_quote + '<\/p>';\n\t    var hintEl = document.getElementById('actiff-distance-hint'); if (hintEl) { hintEl.textContent = I18N.activation_hint; }\n\t    if (form) { form.addEventListener('submit', function(e){ e.preventDefault(); }); var submitBtn = form.querySelector('.actiff-estim__submit'); if (submitBtn) { submitBtn.disabled = true; submitBtn.textContent = I18N.coming_soon; } }\n\t    return;\n\t  }\n\t  window.actiffInitCalc = function(){\n\t    var pickupSlot = document.getElementById('actiff-pickup-slot'); var dropoffSlot = document.getElementById('actiff-dropoff-slot');\n\t    if (!pickupSlot || !dropoffSlot || typeof google === 'undefined') { return; }\n\t    google.maps.importLibrary('places').then(function(libs){\n\t      var PlaceAutocompleteElement = libs.PlaceAutocompleteElement;\n\t      var pickupAC = new PlaceAutocompleteElement(); pickupAC.placeholder = pickupSlot.dataset.placeholder || ''; pickupAC.style.setProperty('width', '100%'); pickupSlot.appendChild(pickupAC);\n\t      var dropoffAC = new PlaceAutocompleteElement(); dropoffAC.placeholder = dropoffSlot.dataset.placeholder || ''; dropoffAC.style.setProperty('width', '100%'); dropoffSlot.appendChild(dropoffAC);\n\t      pickupAC.addEventListener('gmp-select', function(event){ var place = event.placePrediction.toPlace(); place.fetchFields({ fields: ['formattedAddress', 'location'] }).then(function(){ pickupPlace = place; updateMap(); }); });\n\t      dropoffAC.addEventListener('gmp-select', function(event){ var place = event.placePrediction.toPlace(); place.fetchFields({ fields: ['formattedAddress', 'location'] }).then(function(){ dropoffPlace = place; updateMap(); }); });\n\t      function fallbackToDemo(){ if (!pickupPlace.location || !dropoffPlace.location) { resultBox.innerHTML = '<p class=\"actiff-estim__error\">' + I18N.err_distance + '<\/p>'; return; } updateMap(); var km = haversineKm(pickupPlace.location.lat(), pickupPlace.location.lng(), dropoffPlace.location.lat(), dropoffPlace.location.lng()) * DEMO_DISTANCE_FACTOR; lastDistanceKm = km; usedFallback = true; lastPickupAddr = pickupPlace.formattedAddress || ''; lastDropoffAddr = dropoffPlace.formattedAddress || ''; renderResult(); }\n\t      form.addEventListener('submit', function(e){\n\t        e.preventDefault();\n\t        if (!pickupPlace || !dropoffPlace || !dateInput.value || !timeInput.value) { resultBox.innerHTML = '<p class=\"actiff-estim__error\">' + I18N.err_missing_fields + '<\/p>'; return; }\n\t        if (tripType === 'round-trip' && (!returnDateInput.value || !returnTimeInput.value)) { resultBox.innerHTML = '<p class=\"actiff-estim__error\">' + I18N.err_missing_return + '<\/p>'; return; }\n\t        usedFallback = false;\n\t        var forfait = actiffGetWinterForfait(dateInput.value, pickupPlace, dropoffPlace);\n\t        if (forfait) {\n\t          forfaitMode = true; forfaitPrice = forfait.price; forfaitZoneLabel = forfait.zoneLabel; forfaitStationLabel = forfait.stationLabel;\n\t          lastDistanceKm = null;\n\t          lastPickupAddr = pickupPlace.formattedAddress || ''; lastDropoffAddr = dropoffPlace.formattedAddress || '';\n\t          updateMap();\n\t          renderResult();\n\t          return;\n\t        }\n\t        forfaitMode = false;\n\t        resultBox.innerHTML = '<p class=\"actiff-estim__loading\">' + I18N.calculating + '<\/p>';\n\t        updateMap();\n\t        try {\n\t          if (!google.maps.routes || !google.maps.routes.RouteMatrix) { fallbackToDemo(); return; }\n\t          google.maps.routes.RouteMatrix.computeRouteMatrix({ origins: [pickupPlace], destinations: [dropoffPlace], travelMode: 'DRIVING', fields: ['distanceMeters', 'durationMillis', 'condition'] }).then(function(result){\n\t            var row = result.matrix.rows[0]; var item = row ? row.items[0] : null;\n\t            if (!item || item.condition !== 'ROUTE_EXISTS') { fallbackToDemo(); return; }\n\t            lastDistanceKm = item.distanceMeters \/ 1000; lastPickupAddr = pickupPlace.formattedAddress || ''; lastDropoffAddr = dropoffPlace.formattedAddress || ''; renderResult();\n\t          }).catch(function(){ fallbackToDemo(); });\n\t        } catch (err) { fallbackToDemo(); }\n\t      });\n\t    });\n\t  };\n\t  var mapsScript = document.createElement('script'); mapsScript.async = true; mapsScript.defer = true; mapsScript.src = 'https:\/\/maps.googleapis.com\/maps\/api\/js?key=' + encodeURIComponent(ACTIFF_MAPS_KEY) + '&libraries=places,routes&callback=actiffInitCalc'; document.head.appendChild(mapsScript);\n\t})();\n\t<\/script>\n\t<style>#actiff-estim .actiff-estim__book-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 24px; }#actiff-estim .actiff-estim__book-row .actiff-estim__book-btn { margin-top: 0 !important; margin-bottom: 0; }#actiff-estim .actiff-estim__book-btn--wa { background: #1fa855; }#actiff-estim .actiff-estim__book-btn--wa:hover { background: #178a45; }#actiff-estim .actiff-estim__book-btn:disabled { opacity: 0.6; cursor: default; }#actiff-estim .actiff-estim__book-row + .actiff-estim__call-alt { margin-top: 10px; }@media (max-width: 560px) { #actiff-estim .actiff-estim__book-row { grid-template-columns: 1fr; } }<\/style><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-f1o2c31 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"f1o2c31\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-f1o2c32\" data-id=\"f1o2c32\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-f1o2t33 elementor-widget elementor-widget-shortcode\" data-id=\"f1o2t33\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\t<div id='actiff-preview-footer'>\n\t  <div class='actiff-preview-footer__inner'>\n\t    <div>\n\t      <div class='actiff-preview-footer__title'>ACTIFF TRANSPORT<\/div>\n\t      <p>Transport priv\u00e9 VIP en Is\u00e8re et dans les Alpes. 25 ans d\u2019exp\u00e9rience, disponible 7j\/7 \u2013 24h\/24.<\/p>\n\t      <div class='actiff-preview-footer__social'>\n\t        <a href='https:\/\/www.facebook.com\/people\/Actiff-Transport\/61550802944373\/' target='_blank' rel='noopener' aria-label='Facebook' class='actiff-social-ico actiff-social-ico--fb'><svg viewBox='0 0 24 24' width='20' height='20' aria-hidden='true'><path fill='#fff' d='M9.101 23.691v-7.98H6.627v-3.667h2.474v-1.58c0-4.085 1.848-5.978 5.858-5.978.401 0 .955.042 1.468.103a8.68 8.68 0 0 1 1.141.195v3.325a8.623 8.623 0 0 0-.653-.036 26.805 26.805 0 0 0-.733-.005c-.696 0-1.281.09-1.746.315a3.66 3.66 0 0 0-.6.348c-.22.23-.351.45-.416.72-.086.4-.13.89-.13 1.53v1.02h3.925l-.622 3.667h-3.303v7.98H9.101z'\/><\/svg><\/a>\n\t        <a href='https:\/\/www.instagram.com\/actiff_transport\/' target='_blank' rel='noopener' aria-label='Instagram' class='actiff-social-ico actiff-social-ico--ig'><svg viewBox='0 0 24 24' width='20' height='20' aria-hidden='true'><path fill='#fff' d='M12 0C8.74 0 8.333.014 7.053.072 5.775.132 4.905.333 4.14.63c-.789.306-1.459.717-2.126 1.384S.935 3.35.63 4.14C.333 4.905.131 5.775.072 7.053.014 8.333 0 8.74 0 12s.014 3.667.072 4.947c.06 1.277.261 2.148.558 2.913.306.788.717 1.459 1.384 2.126.667.666 1.336 1.079 2.126 1.384.766.296 1.636.499 2.913.558C8.333 23.986 8.74 24 12 24s3.667-.014 4.947-.072c1.277-.06 2.148-.262 2.913-.558.788-.306 1.459-.718 2.126-1.384.666-.667 1.079-1.335 1.384-2.126.296-.765.499-1.636.558-2.913.06-1.28.072-1.687.072-4.947s-.014-3.667-.072-4.947c-.06-1.277-.262-2.149-.558-2.913-.306-.789-.718-1.459-1.384-2.126C21.319 1.347 20.651.935 19.86.63c-.765-.297-1.636-.499-2.913-.558C15.667.014 15.26 0 12 0zm0 2.16c3.203 0 3.585.016 4.85.071 1.17.055 1.805.249 2.227.415.562.217.96.477 1.382.896.419.42.679.819.896 1.381.164.422.36 1.057.413 2.227.057 1.266.07 1.646.07 4.85s-.015 3.585-.074 4.85c-.061 1.17-.256 1.805-.421 2.227-.224.562-.479.96-.899 1.382-.419.419-.824.679-1.38.896-.42.164-1.065.36-2.235.413-1.274.057-1.649.07-4.859.07-3.211 0-3.586-.015-4.859-.074-1.171-.061-1.816-.256-2.236-.421-.569-.224-.96-.479-1.379-.899-.421-.419-.69-.824-.9-1.38-.165-.42-.359-1.065-.42-2.235-.045-1.26-.061-1.649-.061-4.844 0-3.196.016-3.586.061-4.861.061-1.17.255-1.814.42-2.234.21-.57.479-.96.9-1.381.419-.419.81-.689 1.379-.898.42-.166 1.051-.361 2.221-.421 1.275-.045 1.65-.06 4.859-.06l.045.03zm0 3.678c-3.405 0-6.162 2.76-6.162 6.162 0 3.405 2.76 6.162 6.162 6.162 3.405 0 6.162-2.76 6.162-6.162 0-3.405-2.76-6.162-6.162-6.162zM12 16c-2.21 0-4-1.79-4-4s1.79-4 4-4 4 1.79 4 4-1.79 4-4 4zm7.846-10.405c0 .795-.646 1.44-1.44 1.44-.795 0-1.44-.646-1.44-1.44 0-.794.646-1.439 1.44-1.439.793-.001 1.44.645 1.44 1.439z'\/><\/svg><\/a>\n\t        <a href='https:\/\/wa.me\/33783160783' target='_blank' rel='noopener' aria-label='WhatsApp' class='actiff-social-ico actiff-social-ico--wa'><svg viewBox='0 0 24 24' width='20' height='20' aria-hidden='true'><path fill='#fff' d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347zM12.001 0C5.373 0 0 5.373 0 12c0 2.126.554 4.203 1.606 6.036L.057 24l6.064-1.588A11.94 11.94 0 0012 24c6.628 0 12-5.373 12-12S18.628 0 12.001 0zm0 21.816c-1.902 0-3.756-.512-5.379-1.478l-.386-.229-3.601.943.961-3.507-.251-.36A9.804 9.804 0 012.192 12C2.192 6.577 6.577 2.192 12 2.192S21.808 6.577 21.808 12 17.423 21.816 12 21.816z'\/><\/svg><\/a>\n\t        <a href='https:\/\/www.linkedin.com\/feed\/' target='_blank' rel='noopener' aria-label='LinkedIn' class='actiff-social-ico actiff-social-ico--li'><svg viewBox='0 0 24 24' width='20' height='20' aria-hidden='true'><path fill='#fff' d='M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z'\/><\/svg><\/a>\n\t        <a href='https:\/\/www.tiktok.com\/@actiff.transport' target='_blank' rel='noopener' aria-label='TikTok' class='actiff-social-ico actiff-social-ico--tt'><svg viewBox='0 0 24 24' width='20' height='20' aria-hidden='true'><path fill='#fff' d='M12.525.02c1.31-.02 2.61-.01 3.91-.02.08 1.53.63 3.09 1.75 4.17 1.12 1.11 2.7 1.62 4.24 1.79v4.03c-1.44-.05-2.89-.35-4.2-.97-.57-.26-1.1-.59-1.62-.93-.01 2.92.01 5.84-.02 8.75-.08 1.4-.54 2.79-1.35 3.94-1.31 1.92-3.58 3.17-5.91 3.21-1.43.08-2.86-.31-4.08-1.03-2.02-1.19-3.44-3.37-3.65-5.71-.02-.5-.03-1-.01-1.49.18-1.9 1.12-3.72 2.58-4.96 1.66-1.44 3.98-2.13 6.15-1.72.02 1.48-.04 2.96-.04 4.44-.99-.32-2.15-.23-3.02.37-.63.41-1.11 1.04-1.36 1.75-.21.51-.15 1.07-.14 1.61.24 1.64 1.82 3.02 3.5 2.87 1.12-.01 2.19-.66 2.77-1.61.19-.33.4-.67.41-1.06.1-1.79.06-3.57.07-5.36.01-4.03-.01-8.05.02-12.07z'\/><\/svg><\/a>\n\t      <\/div>\n\t    <\/div>\n\t    <div>\n\t      <div class='actiff-preview-footer__title'>Adresse<\/div>\n\t      <p>160 Route D\u00e9partementale<br>38140 Beaucroissant, Is\u00e8re<\/p>\n\t    <\/div>\n\t    <div>\n\t      <div class='actiff-preview-footer__title'>Contact<\/div>\n\t      <p><a href='mailto:wappo38@hotmail.fr'>wappo38@hotmail.fr<\/a><br><a href='tel:0783160783'>07 83 16 07 83<\/a><\/p>\n\t    <\/div>\n\t    <div>\n\t      <div class='actiff-preview-footer__title'>Liens<\/div>\n\t      <p><a href='https:\/\/actifftransport.com\/?page_id=2357'>Contact<\/a><br><a href='https:\/\/actifftransport.com\/?page_id=2372'>CGU<\/a><br><a href='https:\/\/actifftransport.com\/?page_id=2373'>CGV<\/a><br><a href='https:\/\/actifftransport.com\/?page_id=2378'>Mentions l\u00e9gales<\/a><br><a href='https:\/\/actifftransport.com\/?page_id=2379'>Confidentialit\u00e9<\/a><br><a href='https:\/\/actifftransport.com\/?page_id=2380'>Cookies<\/a><br><a href='https:\/\/pay.sumup.com\/b2c\/QGNXGCN9' target='_blank' rel='noopener'>Paiement de l\u2019acompte<\/a><\/p>\n\t    <\/div>\n\t  <\/div>\n\t  <div class='actiff-preview-footer__bottom'>\u00a9 2026 Actiff Transport \u2014 Tous droits r\u00e9serv\u00e9s<\/div>\n\t<\/div>\n\t<style>\n\t#actiff-preview-footer { font-family: 'Khula', sans-serif; background: #0b0c13; border-top: 1px solid rgba(255,255,255,0.08); margin-top: 40px; }\n\t.actiff-preview-footer__inner { max-width: 1150px; margin: 0 auto; padding: 44px 20px 24px; display: grid; grid-template-columns: 1.3fr 1fr 1fr 1fr; gap: 32px; }\n\t@media (max-width: 800px) { .actiff-preview-footer__inner { grid-template-columns: 1fr 1fr; } }\n\t@media (max-width: 500px) { .actiff-preview-footer__inner { grid-template-columns: 1fr; } }\n\t.actiff-preview-footer__title { color: #f2f2f4 !important; font-weight: 700; font-size: 15px; margin-bottom: 10px; }\n\t#actiff-preview-footer p { color: #9a9aa8 !important; font-size: 13px; line-height: 1.6; margin: 0 0 10px; }\n\t#actiff-preview-footer a { color: #9a9aa8 !important; text-decoration: none !important; }\n\t#actiff-preview-footer a:hover { color: #a5b4fc !important; }\n\t.actiff-preview-footer__social { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }\n\t.actiff-social-ico { width: 38px; height: 38px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; transition: opacity 0.2s ease, transform 0.2s ease; }\n\t.actiff-social-ico:hover { opacity: 0.85; transform: translateY(-2px); }\n\t.actiff-social-ico svg { display: block; }\n\t.actiff-social-ico--fb { background: #1877F2; }\n\t.actiff-social-ico--ig { background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888); }\n\t.actiff-social-ico--wa { background: #25D366; }\n\t.actiff-social-ico--li { background: #0A66C2; }\n\t.actiff-social-ico--tt { background: #000000; }\n\t.actiff-preview-footer__bottom { text-align: center; font-size: 12px; color: #6d6d78 !important; padding: 16px 12px 28px; border-top: 1px solid rgba(255,255,255,0.06); margin-top: 12px; }\n\t.actiff-preview-footer__bottom a { color: #5c72ff !important; }\n\t<\/style>\n\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":3,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"footnotes":""},"class_list":["post-2349","page","type-page","status-publish","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"Calculez en ligne le tarif estim\u00e9 de votre trajet en VTC priv\u00e9 : a\u00e9roport, gare, station de ski. Estimation imm\u00e9diate, tarif confirm\u00e9 par le chauffeur.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/actifftransport.com\/en\/estimation\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Actiff Transport - Voyagez autrement, Voyagez VIP\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Estimez votre trajet \u2014 Actiff Transport\" \/>\n\t\t<meta property=\"og:description\" content=\"Obtenez une estimation imm\u00e9diate du prix de votre trajet en VTC priv\u00e9 en Is\u00e8re et dans les Alpes.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/actifftransport.com\/en\/estimation\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/actifftransport.com\/wp-content\/uploads\/2023\/01\/logotransparent.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/actifftransport.com\/wp-content\/uploads\/2023\/01\/logotransparent.png\" \/>\n\t\t<meta property=\"og:image:width\" content=\"320\" \/>\n\t\t<meta property=\"og:image:height\" content=\"320\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-09-18T08:18:56+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-09-18T08:18:56+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Estimez votre trajet \u2014 Actiff Transport\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Obtenez une estimation imm\u00e9diate du prix de votre trajet en VTC priv\u00e9 en Is\u00e8re et dans les Alpes.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/actifftransport.com\/wp-content\/uploads\/2023\/01\/logotransparent.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/estimation\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/estimation\\\/#listItem\",\"name\":\"Estimation\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/estimation\\\/#listItem\",\"position\":2,\"name\":\"Estimation\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/#listItem\",\"name\":\"Home\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/#organization\",\"name\":\"Actiff Transport\",\"description\":\"Voyagez autrement, Voyagez VIP\",\"url\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/actifftransport.com\\\/wp-content\\\/uploads\\\/2023\\\/01\\\/logotransparent.png\",\"@id\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/estimation\\\/#organizationLogo\",\"width\":320,\"height\":320},\"image\":{\"@id\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/estimation\\\/#organizationLogo\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/estimation\\\/#webpage\",\"url\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/estimation\\\/\",\"name\":\"Estimer le prix d\\u2019un trajet VTC en Is\\u00e8re & Alpes | Actiff Transport\",\"description\":\"Calculez en ligne le tarif estim\\u00e9 de votre trajet en VTC priv\\u00e9 : a\\u00e9roport, gare, station de ski. Estimation imm\\u00e9diate, tarif confirm\\u00e9 par le chauffeur.\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/estimation\\\/#breadcrumblist\"},\"datePublished\":\"2026-09-18T08:18:56+00:00\",\"dateModified\":\"2026-09-18T08:18:56+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/\",\"name\":\"Actiff Transport\",\"description\":\"Voyagez autrement, Voyagez VIP\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/actifftransport.com\\\/en\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Estimer le prix d\u2019un trajet VTC en Is\u00e8re & Alpes | Actiff Transport","description":"Calculez en ligne le tarif estim\u00e9 de votre trajet en VTC priv\u00e9 : a\u00e9roport, gare, station de ski. Estimation imm\u00e9diate, tarif confirm\u00e9 par le chauffeur.","canonical_url":"https:\/\/actifftransport.com\/en\/estimation\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https:\/\/actifftransport.com\/en\/estimation\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/actifftransport.com\/en\/#listItem","position":1,"name":"Home","item":"https:\/\/actifftransport.com\/en\/","nextItem":{"@type":"ListItem","@id":"https:\/\/actifftransport.com\/en\/estimation\/#listItem","name":"Estimation"}},{"@type":"ListItem","@id":"https:\/\/actifftransport.com\/en\/estimation\/#listItem","position":2,"name":"Estimation","previousItem":{"@type":"ListItem","@id":"https:\/\/actifftransport.com\/en\/#listItem","name":"Home"}}]},{"@type":"Organization","@id":"https:\/\/actifftransport.com\/en\/#organization","name":"Actiff Transport","description":"Voyagez autrement, Voyagez VIP","url":"https:\/\/actifftransport.com\/en\/","logo":{"@type":"ImageObject","url":"https:\/\/actifftransport.com\/wp-content\/uploads\/2023\/01\/logotransparent.png","@id":"https:\/\/actifftransport.com\/en\/estimation\/#organizationLogo","width":320,"height":320},"image":{"@id":"https:\/\/actifftransport.com\/en\/estimation\/#organizationLogo"}},{"@type":"WebPage","@id":"https:\/\/actifftransport.com\/en\/estimation\/#webpage","url":"https:\/\/actifftransport.com\/en\/estimation\/","name":"Estimer le prix d\u2019un trajet VTC en Is\u00e8re & Alpes | Actiff Transport","description":"Calculez en ligne le tarif estim\u00e9 de votre trajet en VTC priv\u00e9 : a\u00e9roport, gare, station de ski. Estimation imm\u00e9diate, tarif confirm\u00e9 par le chauffeur.","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/actifftransport.com\/en\/#website"},"breadcrumb":{"@id":"https:\/\/actifftransport.com\/en\/estimation\/#breadcrumblist"},"datePublished":"2026-09-18T08:18:56+00:00","dateModified":"2026-09-18T08:18:56+00:00"},{"@type":"WebSite","@id":"https:\/\/actifftransport.com\/en\/#website","url":"https:\/\/actifftransport.com\/en\/","name":"Actiff Transport","description":"Voyagez autrement, Voyagez VIP","inLanguage":"en-US","publisher":{"@id":"https:\/\/actifftransport.com\/en\/#organization"}}]},"og:locale":"en_US","og:site_name":"Actiff Transport - Voyagez autrement, Voyagez VIP","og:type":"article","og:title":"Estimez votre trajet \u2014 Actiff Transport","og:description":"Obtenez une estimation imm\u00e9diate du prix de votre trajet en VTC priv\u00e9 en Is\u00e8re et dans les Alpes.","og:url":"https:\/\/actifftransport.com\/en\/estimation\/","og:image":"https:\/\/actifftransport.com\/wp-content\/uploads\/2023\/01\/logotransparent.png","og:image:secure_url":"https:\/\/actifftransport.com\/wp-content\/uploads\/2023\/01\/logotransparent.png","og:image:width":320,"og:image:height":320,"article:published_time":"2026-09-18T08:18:56+00:00","article:modified_time":"2026-09-18T08:18:56+00:00","twitter:card":"summary_large_image","twitter:title":"Estimez votre trajet \u2014 Actiff Transport","twitter:description":"Obtenez une estimation imm\u00e9diate du prix de votre trajet en VTC priv\u00e9 en Is\u00e8re et dans les Alpes.","twitter:image":"https:\/\/actifftransport.com\/wp-content\/uploads\/2023\/01\/logotransparent.png"},"aioseo_meta_data":{"post_id":"2349","title":"Estimer le prix d\u2019un trajet VTC en Is\u00e8re & Alpes | Actiff Transport","description":"Calculez en ligne le tarif estim\u00e9 de votre trajet en VTC priv\u00e9 : a\u00e9roport, gare, station de ski. Estimation imm\u00e9diate, tarif confirm\u00e9 par le chauffeur.","keywords":null,"keyphrases":{"focus":{"keyphrase":"prix VTC Is\u00e8re"},"additional":[{"keyphrase":"estimation trajet VTC"},{"keyphrase":"tarif transfert a\u00e9roport Grenoble"},{"keyphrase":"calculateur prix chauffeur priv\u00e9"}]},"focus_keyword":"prix VTC Is\u00e8re","additional_keywords":[{"word":"estimation trajet VTC","score":0},{"word":"tarif transfert a\u00e9roport Grenoble","score":0},{"word":"calculateur prix chauffeur priv\u00e9","score":0}],"truseo_locale":null,"primary_term":null,"canonical_url":null,"og_title":"Estimez votre trajet \u2014 Actiff Transport","og_description":"Obtenez une estimation imm\u00e9diate du prix de votre trajet en VTC priv\u00e9 en Is\u00e8re et dans les Alpes.","og_object_type":"default","og_image_type":"default","og_image_custom_url":null,"og_image_custom_fields":null,"og_image_url":null,"og_image_width":null,"og_image_height":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_image_url":null,"twitter_title":"Estimez votre trajet \u2014 Actiff Transport","twitter_description":"Obtenez une estimation imm\u00e9diate du prix de votre trajet en VTC priv\u00e9 en Is\u00e8re et dans les Alpes.","schema_type":"default","schema_type_options":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null,"created":"2026-09-13 20:48:56","updated":"2026-09-18 08:22:14"},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/actifftransport.com\/en\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tEstimation\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/actifftransport.com\/en\/"},{"label":"Estimation","link":"https:\/\/actifftransport.com\/en\/estimation\/"}],"_links":{"self":[{"href":"https:\/\/actifftransport.com\/en\/wp-json\/wp\/v2\/pages\/2349","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/actifftransport.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/actifftransport.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/actifftransport.com\/en\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/actifftransport.com\/en\/wp-json\/wp\/v2\/comments?post=2349"}],"version-history":[{"count":1,"href":"https:\/\/actifftransport.com\/en\/wp-json\/wp\/v2\/pages\/2349\/revisions"}],"predecessor-version":[{"id":2351,"href":"https:\/\/actifftransport.com\/en\/wp-json\/wp\/v2\/pages\/2349\/revisions\/2351"}],"wp:attachment":[{"href":"https:\/\/actifftransport.com\/en\/wp-json\/wp\/v2\/media?parent=2349"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}