{"id":17254,"date":"2022-04-08T04:43:05","date_gmt":"2022-04-07T21:43:05","guid":{"rendered":"https:\/\/khaolaklanddiscovery.com\/home-page\/"},"modified":"2026-07-27T20:57:28","modified_gmt":"2026-07-27T13:57:28","slug":"home-page","status":"publish","type":"page","link":"https:\/\/www.khaolaklanddiscovery.com\/fr\/","title":{"rendered":"Accueil"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"17254\" class=\"elementor elementor-17254 elementor-71\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4df2d01 e-con-full e-flex e-con e-parent\" data-id=\"4df2d01\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;video&quot;,&quot;background_video_link&quot;:&quot;youtube.com\\\/watch?v=EqwX9B2Yq0c&quot;,&quot;background_video_start&quot;:5,&quot;background_play_once&quot;:&quot;yes&quot;,&quot;background_play_on_mobile&quot;:&quot;yes&quot;,&quot;background_privacy_mode&quot;:&quot;yes&quot;}\">\n\t\t<div class=\"elementor-background-video-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-background-video-embed\" role=\"presentation\"><\/div>\n\t\t\t\t\t\t<\/div><div class=\"elementor-element elementor-element-6fae6447 e-con-full e-flex e-con e-child\" data-id=\"6fae6447\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;position&quot;:&quot;absolute&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-cedbbef elementor-widget__width-initial elementor-widget elementor-widget-image\" data-id=\"cedbbef\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"300\" src=\"https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2022\/09\/khao-lak-land-discovery-logo-300x300-white-300x300.png\" class=\"attachment-medium size-medium wp-image-15770\" alt=\"Khao Lak Land Discovery\" srcset=\"https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2022\/09\/khao-lak-land-discovery-logo-300x300-white.png 300w, https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2022\/09\/khao-lak-land-discovery-logo-300x300-white-100x100.png 100w, https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2022\/09\/khao-lak-land-discovery-logo-300x300-white-600x600.png 600w, https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2022\/09\/khao-lak-land-discovery-logo-300x300-white-1024x1024.png 1024w, https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2022\/09\/khao-lak-land-discovery-logo-300x300-white-768x768.png 768w, https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2022\/09\/khao-lak-land-discovery-logo-300x300-white-1536x1536.png 1536w, https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2022\/09\/khao-lak-land-discovery-logo-300x300-white-2048x2048.png 2048w, https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2022\/09\/elementor\/thumbs\/khao-lak-land-discovery-logo-300x300-white-200x200.png 200w, https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2022\/09\/khao-lak-land-discovery-logo-300x300-white-96x96.png 96w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" loading=\"lazy\" title=\"-\">\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-74b9ea7 elementor-widget elementor-widget-heading\" data-id=\"74b9ea7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\"><span style=\"color:white;font-weight:300;font-size: 1.275rem;width:100%\">Khao Lak<\/span><br>\n\n<span style=\"font-weight:600\">Tours &amp; Transfers<\/span><br>\n\n<span style=\"color:white;font-weight:300;font-size: 1.275rem;text-align: center;width:100%\">Licensed Local Operator since 2009<\/span><\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-ebc6abd e-con-full e-flex e-con e-child\" data-id=\"ebc6abd\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-086c919 elementor-widget elementor-widget-heading\" data-id=\"086c919\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">New Available Tours from <br><b>Khao Lak 2026<\/b><\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f5b4e0e elementor-widget elementor-widget-st_list_service\" data-id=\"f5b4e0e\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;order&quot;:&quot;DESC&quot;,&quot;orderby&quot;:&quot;ID&quot;,&quot;type_form&quot;:&quot;single&quot;,&quot;slides_per_view&quot;:&quot;4&quot;}\" data-widget_type=\"st_list_service.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t    <div class=\"st-list-service slider style_2 style_2\" data-effect=\"creative\" data-slides-per-view=\"4\" data-pagination=\"on\" data-navigation=\"on\" data-auto-play=\"on\" data-loop=\"\" data-delay=\"3000\"    >\r\n        <div class=\"service-list-wrapper service-tour swiper-container\"><div class=\"swiper-wrapper\"><div class=\"swiper-slide\"><div class=\"services-item grid item-elementor klld-card klld-card--tour\">\n    <div class=\"item service-border st-border-radius\">\n        <div class=\"featured-image\">\n                                        <a href=\"javascript: void(0)\" class=\"login\" data-bs-toggle=\"modal\" data-bs-target=\"#st-login-form\">\n                    <div class=\"service-add-wishlist\" title=\"Ajouter \u00e0 la liste de souhaits\">\n                        <i class=\"st-border-radius field-icon\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"23\" height=\"22\" viewBox=\"0 0 23 22\" fill=\"none\">\r\n        <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0.75 7.68998C0.75 4.18927 3.57229 1.34998 7.06 1.34998C8.79674 1.34998 10.3646 2.05596 11.5003 3.19469C12.6385 2.05561 14.2122 1.34998 15.94 1.34998C19.4277 1.34998 22.25 4.18927 22.25 7.68998C22.25 11.4395 20.5107 14.4001 18.4342 16.5276C16.3683 18.6443 13.9235 19.9861 12.3657 20.5186C12.0914 20.6147 11.7773 20.65 11.5 20.65C11.2227 20.65 10.9086 20.6147 10.6343 20.5186C9.07655 19.9861 6.63169 18.6443 4.56577 16.5276C2.48932 14.4001 0.75 11.4395 0.75 7.68998Z\" fill=\"#232323\" fill-opacity=\"0.3\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n        <\/svg><\/i>                        <div class=\"lds-dual-ring\"><\/div>\n                    <\/div>\n                <\/a>\n                        <a href=\"https:\/\/www.khaolaklanddiscovery.com\/fr\/excursions-khao-lak\/croisiere-baie-de-phang-nga-sunset\/\">\n                <img decoding=\"async\" src=\"https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2025\/12\/IMG_2251-700x900.jpeg\" alt=\"Baie de Phang Nga Excursion au coucher du soleil \u2013 Catamaran depuis Khao Lak\" class=\"image-feature st-hover-grow\" title=\"-\">\n            <\/a>\n                        <a href=\"\/fr\/wp-json\/wp\/v2\/pages\/17254?partner_id=1\" target=\"_blank\" title=\"Khao Lak Land Discovery\"  class=\"service-avatar\"><img decoding=\"async\" alt=\"avatar\" src=\"https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2022\/09\/khao-lak-land-discovery-logo-300x300-1.png\" class=\"avatar avatar-96 photo origin round\" =70 title=\"-\"><\/a>        <\/div>\n        <div class=\"content-item\">\n                            <div class=\"klld-card-eyebrow d-flex align-items-center justify-content-between\">\n                                            <span class=\"klld-card-tag\">Baie de Phang Nga<\/span>\n                                                                <span class=\"klld-card-addr sub-title st-address d-flex align-items-center\">\n                            <i class=\"stt-icon-location1\"><\/i> Phang Nga Bay, Thailand                        <\/span>\n                                    <\/div>\n                        <h4 class=\"title\">\n                <a href=\"https:\/\/www.khaolaklanddiscovery.com\/fr\/excursions-khao-lak\/croisiere-baie-de-phang-nga-sunset\/\"\n                   class=\"st-link c-main\" data-price=\"\u00c0 partir de \u0e3f4,500\" data-thumb=\"https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2025\/12\/IMG_2251-700x900.jpeg\" data-location=\"Phang Nga\">Baie de Phang Nga Excursion au coucher du soleil \u2013 Catamaran depuis Khao Lak<\/a>\n            <\/h4>\n            <div class=\"service-excerpt\">\n                    <p>A sunset catamaran cruise into Phang Nga Bay from Khao Lak \u2014 limestone islands turning gold, swimming and dinner served as the light fades.<\/p>\n                <\/div>\n            <div class=\"section-footer\">\n\n                <div class=\"price-wrapper price-wrapper-tour d-flex align-items-end justify-content-between\">\n                    <span class=\"price-tour\">\n                        <span class=\"price d-flex justify-content-around flex-column\"><span class=\"sale-top\">\u00c0 partir de<span class=\"text-lg lh1em item \"> \u0e3f4,500<\/span><\/span><\/span>\n                    <\/span>\n                    <span class=\"unit\"><i class=\"input-icon st-border-radius field-icon fa\"><svg height=\"16px\" width=\"16px\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" x=\"0px\" y=\"0px\"\r\n     viewBox=\"0 0 24 24\" style=\"enable-background:new 0 0 24 24;\" xml:space=\"preserve\">\r\n\r\n<g fill=\"#5E6D77\">\r\n    <path d=\"M12,23.25C5.797,23.25,0.75,18.203,0.75,12C0.75,5.797,5.797,0.75,12,0.75c6.203,0,11.25,5.047,11.25,11.25\r\n        C23.25,18.203,18.203,23.25,12,23.25z M12,2.25c-5.376,0-9.75,4.374-9.75,9.75s4.374,9.75,9.75,9.75s9.75-4.374,9.75-9.75\r\n        S17.376,2.25,12,2.25z\"\/>\r\n    <path d=\"M15.75,16.5c-0.2,0-0.389-0.078-0.53-0.22l-2.25-2.25c-0.302,0.145-0.632,0.22-0.969,0.22c-1.241,0-2.25-1.009-2.25-2.25\r\n        c0-0.96,0.615-1.808,1.5-2.121V5.25c0-0.414,0.336-0.75,0.75-0.75s0.75,0.336,0.75,0.75v4.629c0.885,0.314,1.5,1.162,1.5,2.121\r\n        c0,0.338-0.075,0.668-0.22,0.969l2.25,2.25c0.292,0.292,0.292,0.768,0,1.061C16.139,16.422,15.95,16.5,15.75,16.5z M12,11.25\r\n        c-0.414,0-0.75,0.336-0.75,0.75s0.336,0.75,0.75,0.75s0.75-0.336,0.75-0.75S12.414,11.25,12,11.25z\"\/>\r\n<\/g>\r\n<\/svg><\/i>Demi-journ\u00e9e<span class=\"unit-from\"> &middot; depuis Khao Lak<\/span><\/span>\n                <\/div>\n            <\/div>\n        <\/div>\n                        <div class=\"reviews\">\n            <i class=\"stt-icon-star1\"><\/i>\n            <span class=\"rate\">4.8<\/span>\n            <span class=\"summary\">\n                (18 Avis)\n            <\/span>\n        <\/div>\n            <\/div>\n<\/div>\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\" data-no-optimize=\"1\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin data-no-optimize=\"1\">\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,500;0,9..144,600;1,9..144,400;1,9..144,500&family=Hanken+Grotesk:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap\" rel=\"stylesheet\" data-no-optimize=\"1\">\n<style id=\"klld-tours-grid-css\">\n\/* ============================================================================\n   KLLD-TOURS-PLATE \u2014 full-image tour-card plate (alm-cats aesthetic).\n   GRID is scoped to .klld-card; LIST keeps the Emerald-Daybreak skin below.\n   CSS-only. No #0b7016, no Inter.\n   ========================================================================== *\/\n.klld-card,.services-item.list.item-elementor{\n  --kg:#099024;          \/* brand green *\/\n  --kgd:#067a1d;         \/* pressed\/deep green *\/\n  --kglow:#2fbf4a;       \/* lifted green *\/\n  --ky:#ffcc00;          \/* sun yellow *\/\n  --ky-deep:#c79100;     \/* gold for serif emphasis on white *\/\n  --kink:#0c1f1a;        \/* tropical-night plate *\/\n  --kink-2:#3a3f3d;      \/* body dark-grey (list) *\/\n  --ksoft:#54605a;       \/* muted grey text (list) *\/\n  --kfaint:#828c87;      \/* dim grey micro-label (list) *\/\n  --kpaper:#ffffff;      \/* pure white surface (list) *\/\n  --kpaper-2:#fbfbf9;\n  --kg-soft:#dff0e2;\n  --kline:rgba(39,43,41,.12);\n  --kline-soft:rgba(39,43,41,.07);\n  --kline-g:rgba(9,144,36,.20);\n  --kshadow:0 30px 60px -42px rgba(28,46,32,.30);\n  --kshadow-lo:0 18px 38px -30px rgba(28,46,32,.28);\n  --kdisp:\"Fraunces\",Georgia,serif;\n  --kbody:\"Hanken Grotesk\",system-ui,sans-serif;\n  --kmono:\"JetBrains Mono\",ui-monospace,monospace}\n\n\/* ---- GRID CARD : full-image plate ----------------------------------------\n   .klld-card--tour scopes the full-bleed plate layout. Plain .klld-card covers\n   shared tokens and the rental-card skin (klld-card--rental) overrides below.\n   This prevents tour CSS bleeding into rental cards on pages that show both. *\/\n.klld-card{height:100%}\n.klld-card--tour .item.service-border{position:relative;height:100%;min-height:75vh;display:block;\n  border:0;border-radius:18px;overflow:hidden;isolation:isolate;background:var(--kink);\n  box-shadow:var(--kshadow-lo);\n  transition:transform .42s cubic-bezier(.22,.61,.36,1),box-shadow .42s cubic-bezier(.22,.61,.36,1)}\n.klld-card--tour .item.service-border:hover{transform:translateY(-6px);box-shadow:var(--kshadow)}\n\/* KLLD-PLATE-PRESS 2026-06-16 :: tap affordance for touch (no hover). The whole\n   plate is clickable via klld_card_click_delegate; on press the card dips + the\n   gold base hairline + go-arrow fire so phones get the same \"this is a button\"\n   feedback desktop gets on hover. cursor:pointer set on .content-item already;\n   add it to the border box so the photo zone shows the hand too. *\/\n.klld-card--tour .item.service-border{cursor:pointer}\n.klld-card--tour .item.service-border:active{transform:translateY(-2px) scale(.992);\n  box-shadow:var(--kshadow-lo);transition:transform .12s ease,box-shadow .12s ease}\n.klld-card--tour .item.service-border:active .featured-image::before{\n  background:linear-gradient(180deg,rgba(6,20,12,.02) 0%,rgba(6,20,12,.12) 38%,rgba(6,16,10,.62) 72%,rgba(6,16,10,.92) 100%)}\n.klld-card--tour .item.service-border:active .featured-image::after{opacity:1;transform:scaleX(1)}\n.klld-card--tour .item.service-border:active .featured-image img.image-feature{transform:scale(1.04)}\n.klld-card--tour .item.service-border:active .section-footer::after{transform:translateX(5px)}\n\n\/* photo fills the entire card.\n   KLLD-SLIDER-FIX (2026-06-16): in the homepage st_list_service SLIDER, the theme's\n   own `.service-list-wrapper .item .featured-image{position:relative}` (specificity\n   0,3,0) outranks a plain `.klld-card .featured-image` (0,2,0) and forces the photo\n   box to position:relative -> its absolute <img> contributes no height -> the box\n   collapses to 0px tall and only the white card paper shows. We raise this overlay\n   rule's specificity (0,4,0 via .services-item.item-elementor.klld-card) so the\n   full-bleed photo wins in BOTH grid and slider contexts. *\/\n\/* KLLD-FULLBLEED 2026-06-16 :: photo fills the WHOLE card edge-to-edge (no frame),\n   per user request \u2014 reverted from the inset \"Destinations\" frame. The card's own\n   border-radius + overflow:hidden round the photo corners. *\/\n.klld-card--tour .featured-image,\n.services-item.item-elementor.klld-card--tour .featured-image{position:absolute;inset:0;z-index:0;margin:0;overflow:hidden;background:#0c1f1a}\n.klld-card--tour .featured-image > a:not(.login),\n.services-item.item-elementor.klld-card--tour .featured-image > a:not(.login){display:block;position:absolute;inset:0}\n.klld-card--tour .featured-image img.image-feature{position:absolute;inset:0;width:100%;height:100%;\n  object-fit:cover;display:block;transition:transform 1.1s cubic-bezier(.22,.61,.36,1),filter .6s}\n.klld-card--tour .item.service-border:hover .featured-image img.image-feature{transform:scale(1.07)}\n\/* atmospheric scrim \u2014 KLLD-PLATE-ALMCAT 2026-06-16. Re-tuned to MATCH the homepage\n   .alm-cat category plate's curve: a CLEAN, light top (so bright Surin\/Similan\n   turquoise reads) easing to a very deep base (where the flex-end text lives).\n   KLLD-LIGHT-SCRIM 2026-06-24: switched to a light-touch gradient \u2014 fully transparent\n   at the top so the photo sky\/sea reads clearly; gentle darkening only in the lower\n   \u2153 where the white flex-end title lives. Hover blooms a subtle green breath. *\/\n.klld-card--tour .featured-image::before{content:\"\";position:absolute;inset:0;z-index:1;pointer-events:none;\n  background:linear-gradient(180deg,rgba(6,20,12,.0) 0%,rgba(6,20,12,.04) 35%,rgba(6,16,10,.52) 68%,rgba(6,16,10,.88) 100%);\n  transition:background .5s}\n.klld-card--tour .item.service-border:hover .featured-image::before{\n  background:linear-gradient(180deg,rgba(9,144,36,.06) 0%,rgba(9,40,22,.14) 38%,rgba(8,22,14,.60) 72%,rgba(6,16,10,.92) 100%)}\n\/* KLLD CARD FAMILY 2026-07-06 :: persistent green\u2192gold \"boarding-pass\" spine \u2014 the\n   shared signature on the tour .tcard carousel + transfer .tm-card + rental .eds-frame,\n   now brought onto the homepage plate tile so it reads as one product-card family.\n   Placed at the BASE (not the top) on purpose: this card is a full-bleed photo whose\n   TOP is a clear scrim (photo shows through \u2192 a top spine would vanish on foliage),\n   while the BASE sits over the deep scrim (rgba(6,16,10,.88)) so the green segment is\n   guaranteed legible on any photo. Was a hover-only sweep; now persistent (blooms on\n   hover). Family gradient: green 0\u219242%, gold at 100%. *\/\n.klld-card--tour .featured-image::after{content:\"\";position:absolute;left:0;right:0;bottom:0;height:3px;z-index:4;\n  background:linear-gradient(90deg,var(--kg) 0%,var(--kg) 42%,var(--ky) 100%);\n  opacity:.82;transform:scaleX(1);transform-origin:left;transition:opacity .4s,transform .55s;\n  box-shadow:0 -1px 6px -1px rgba(6,16,10,.5)}\n.klld-card--tour .item.service-border:hover .featured-image::after{opacity:1;transform:scaleX(1)}\n\n\/* wishlist \u2014 frosted disc, top-right, above the photo. KLLD-PLATE-TAP 2026-06-16:\n   grown 38\u219242px so it clears the ~44px comfortable touch-target floor and never\n   collides with the rating chip on the left (the chip is max-width-capped to leave\n   a 70px right gutter for exactly this disc). A clear :active feedback for touch. *\/\n.klld-card--tour .service-add-wishlist{position:absolute;top:13px;right:13px;z-index:6;width:42px;height:42px;\n  border-radius:50%;background:rgba(255,255,255,.18);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);\n  border:1px solid rgba(255,255,255,.30);display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;\n  box-shadow:0 8px 22px -12px rgba(0,0,0,.6);transition:background .2s,transform .2s,color .2s}\n.klld-card--tour .service-add-wishlist svg{width:18px;height:18px}\n.klld-card--tour .service-add-wishlist:hover{background:var(--kg);border-color:var(--kg);color:#fff;transform:scale(1.08)}\n.klld-card--tour .service-add-wishlist:active{transform:scale(.92);background:var(--kg);border-color:var(--kg);color:#fff}\n.klld-card--tour .service-add-wishlist.added{background:var(--kg);border-color:var(--kg);color:#fff}\n.klld-card--tour .featured-image > a.login{display:contents}\n\n\/* overlaid body \u2014 sits at the card base, above the gradient. KLLD-EDITORIAL 2026-06-16:\n   increased padding to 30px 26px for more generous spacing and better rhythm.\n   The larger title and description need breathing room; the padding increase\n   creates a refined, editorial card layout. KLLD-CARD-CLICK-2026: remains\n   pointer-events:auto with klld_card_click_delegate.\n   KLLD-SPEC-FIX 2026-06-16: selector raised to (0,4,0) to beat the parent theme's\n   `.services-item.item-elementor .item .content-item` at same specificity \u2014 source\n   order (child after parent) then decides the win, no !important needed. *\/\n.services-item.item-elementor.klld-card--tour .content-item,\n.klld-card--tour .content-item{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;\n  justify-content:flex-end;gap:2px;padding:30px 26px 20px;font-family:var(--kbody);color:#fff;pointer-events:auto;cursor:pointer;\n  overflow:hidden}\n.klld-card--tour .content-item a{pointer-events:auto}\n\n\/* eyebrow: mono type tag in sun-gold. KLLD-PLATE-EDITORIAL 2026-06-16 \u2014 refined to\n   the reference \"category plate\" treatment: LARGER size (.75rem), prominent display,\n   gold accent reads as the \"NN \/\" index slash. Bold and commanding at card top. *\/\n.klld-card--tour .klld-card-eyebrow{gap:8px;min-height:0;margin-bottom:2px;justify-content:flex-start!important}\n\/* mono gold eyebrow \u2014 ENLARGED to .75rem (from .66rem) with tighter tracking and\n   bold weight to match reference \"04 \/ PLACES\" style. The gradient tick remains but\n   resized (22px) to match the larger font. KLLD-PLATE-EDITORIAL. *\/\n.klld-card--tour .klld-card-tag{font-family:var(--kmono);font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;\n  font-weight:700;color:var(--ky);white-space:nowrap;display:inline-flex;align-items:center;gap:11px;\n  text-shadow:0 1px 5px rgba(0,0,0,.35)}\n.klld-card--tour .klld-card-tag::before{content:\"\";width:22px;height:2px;border-radius:2px;\n  background:linear-gradient(90deg,var(--ky),rgba(255,204,0,.2))}\n\/* address demoted off the plate. The markup carries `.d-flex` (display:flex\n   !important), so a plain display:none loses \u2014 must be !important to win.\n   The PostalAddress microdata stays in the DOM (hidden), schema intact. *\/\n.klld-card--tour .klld-card-addr{display:none!important}\n\n\/* Fraunces title \u2014 WHITE on the photo, NOT brand green. The markup carries the\n   theme utility class `.st-link.c-main` which paints links var(--heading-color)\n   (#099024 on live) \u2014 green text vanishes over green foliage \/ turquoise water.\n   We force the resting title to white with a real drop-shadow and raise the\n   selector specificity (adds .st-link) so it beats .c-main and survives any\n   LiteSpeed\/UCSS rule reordering. Green is reserved for the :hover accent only.\n   KLLD-PLATE-LEGIBILITY 2026-06-16. *\/\n\/* Fraunces title \u2014 ENLARGED for editorial impact. KLLD-PLATE-EDITORIAL 2026-06-16:\n   increased from 1.74rem ceiling to 2.2rem to match reference card prominence.\n   Bold serif treatment (wt600) dominates the card. Stays Fraunces \u2014 no changes\n   to the typeface, only scale and weight. Line-height 1.05 for tighter elegance.\n   KLLD-EDITORIAL-TITLE. *\/\n\/* KLLD-TITLE-WRAP 2026-06-16 :: the theme forces .title{white-space:nowrap;\n   display:flow-root} at (0,4,0), which stopped the title wrapping (1 line +\n   ellipsis). Raise to (0,5,0) and force white-space:normal + -webkit-box so the\n   3-line clamp engages and the full title fits. *\/\n.services-item.item-elementor.klld-card--tour .content-item .title,\n.klld-card--tour .content-item .title{margin:2px 0 0;font-family:var(--kdisp);font-size:clamp(1.6rem,1.4rem + .65vw,2.2rem);\n  line-height:1.08;font-weight:600;letter-spacing:-.015em;white-space:normal!important;\n  display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:1;line-clamp:1;overflow:hidden;\n  text-overflow:ellipsis;overflow-wrap:break-word;word-break:normal;hyphens:none}\n\/* color #fff + Fraunces 500 (alm-cat h3 weight). The theme paints the title anchor\n   'a.st-link' AND '.services-item.item-elementor .item .content-item .title a' with\n   font-weight:400 !IMPORTANT \u2014 so specificity alone can't win; the weight override\n   MUST also be !important. Raised to (0,6,1) via '.item' so it beats the theme's\n   own !important by specificity, in BOTH slider and archive-grid DOM. The color\n   stays a normal (non-important) declaration \u2014 nothing else fights it.\n   KLLD-PLATE-ALMCAT. *\/\n.klld-card--tour .item .content-item .title a,\n.klld-card--tour .item .content-item .title a.st-link.c-main{color:#fff!important;font-weight:500!important;\n  text-shadow:0 1px 2px rgba(6,16,10,.38),0 2px 12px rgba(6,16,10,.30);transition:color .2s}\n.klld-card--tour .item .content-item .title a:hover,\n.klld-card--tour .item .content-item .title a.st-link.c-main:hover{color:var(--ky)!important}\n\n\/* RE-ENABLED excerpt \u2014 the reference plate shows a more prominent description.\n   KLLD-PLATE-EDITORIAL 2026-06-16: increased size to .92rem (from .86rem),\n   slightly wider max-width (38ch from 34ch), and softer shadow for better legibility.\n   White on the scrim with a 2-line visual clamp guarding overflow. *\/\n\/* body \u2014 enhanced to .92rem for better editorial presence. Color lifted to nearly\n   opaque (.98 alpha) for stronger readability. KLLD-EDITORIAL-EXCERPT. *\/\n.klld-card--tour .service-excerpt{margin:3px 0 0;max-width:38ch;color:rgba(255,253,247,.98);\n  font-family:var(--kbody);font-size:.92rem;line-height:1.5;font-weight:400;\n  text-shadow:0 1px 4px rgba(6,16,10,.32),0 1px 2px rgba(6,16,10,.26)}\n\/* clean 2-line clamp \u2014 KLLD-PLATE-CLAMP 2026-06-16 (defect 4): keep word-boundary\n   wrapping (word-break:normal) so the clamp ellipsis lands between words, not the\n   \"limeston\u2026\" mid-token cut the screenshot showed; overflow-wrap guards only against\n   a single over-long token. *\/\n.klld-card--tour .service-excerpt p{margin:0;\n  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;\n  text-overflow:ellipsis;overflow-wrap:break-word;word-break:normal;hyphens:none}\n\/* no dead gap above the footer when a tour has no excerpt copy *\/\n.klld-card--tour .service-excerpt:empty,\n.klld-card--tour .service-excerpt p:empty{display:none;margin:0}\n\n\/* rating \u2014 gold-star chip, floats top-left over the photo (Figma 2026-06-16).\n   Legibility pass: darker pill (.42\u2192.55) so the star + score read on bright\n   plates; near-white summary at .96 alpha. Min-height 30px = comfortable tap\n   target; max-width caps clear of the 38px wishlist disc so a long count\n   never collides. *\/\n\/* rating \u2014 KLLD-FRAME 2026-06-16 :: bare gold star + score, NO pill (matches the\n   reference). Floats inside the inset photo (26px = 13px frame + 13px breathing\n   room). Strong shadow carries it over bright sky. The \"(N Reviews)\" summary is\n   dropped to keep the reference's minimal star+number. *\/\n.klld-card--tour .reviews{position:absolute;top:26px;left:26px;z-index:5;margin:0;display:inline-flex;align-items:center;gap:4px;\n  font-family:var(--kbody);font-size:.95rem;font-weight:600;color:#fff;\n  background:none;border:0;padding:0;box-shadow:none;\n  text-shadow:0 1px 4px rgba(0,0,0,.4),0 2px 8px rgba(0,0,0,.28)}\n.klld-card--tour .reviews .stt-icon-star1{color:var(--ky);font-size:.9rem;filter:drop-shadow(0 1px 3px rgba(0,0,0,.55))}\n.klld-card--tour .reviews .rate{font-family:var(--kbody);font-weight:600;color:#fff;font-size:.95rem}\n\/* review total count shown, tight to the score *\/\n.klld-card--tour .reviews .summary{display:inline;font-weight:500;font-size:.78rem;opacity:.9;margin-left:2px}\n.klld-card--tour .reviews.reviews-empty{display:none}\n\n\/* footer: From-\u0e3fprice + duration, with a go-arrow. KLLD-PLATE-EDITORIAL 2026-06-16 \u2014\n   restore the reference's faint FULL-WIDTH hairline above the footer row. This is\n   viable now that the scrim is even & green across the whole card (the prior commit\n   1668eb338 swapped to a short gold tick because the old top-transparent gradient\n   let a full-width rule \"float\" over bright pixels; the even scrim carries it). The\n   hairline is a neutral white rule at low alpha, inset to the content padding. *\/\n\/* KLLD-PLATE-HAIRLINE 2026-06-16 (defect 3): the divider was reading as a thin white\n   rule \"floating\" mid-photo because the footer carried a big margin-top:16px, pushing\n   the rule well ABOVE the price block into bare image. Pull the footer tight to the\n   price group (margin-top:10px, padding-top:11px) so the line sits DIRECTLY over the\n   From-\u0e3fprice row and reads as that block's divider, not a free-floating bar. *\/\n\/* border-top:0 needs !important \u2014 the parent theme paints a 1px #dedede rule on\n   .section-footer at higher specificity (that was the line above the price). *\/\n.services-item.item-elementor.klld-card--tour .section-footer,\n.klld-card--tour .section-footer{margin-top:14px;padding-top:0;\n  border-top:0!important;display:flex;align-items:flex-end;position:relative}\n\/* KLLD-NO-HAIRLINE 2026-06-16 :: divider above the price removed per user request. *\/\n.klld-card--tour .section-footer::before{display:none}\n\/* KLLD-PHASEF-1 2026-06-17 :: reserve the bottom-right go-puck gutter on the price\n   row. The .unit element that used to hold this space is now display:none, so on\n   3\/4-up archive rows the \u0e3fprice ran under the gold arrow disc. 40px clears the\n   30px puck + its right:-2px offset. *\/\n.klld-card--tour .price-wrapper-tour{margin:0;width:100%;flex-wrap:wrap;gap:6px 12px;padding-right:40px}\n.klld-card--tour .price-tour{min-width:0}\n\/* \u0e3f-leading price in white Fraunces. KLLD-PLATE-PRICEFIX 2026-06-16 + KLLD-EDITORIAL\n   2026-06-16: ENLARGED from 1.5rem to 1.9rem, increased font-weight to 700 (bolder),\n   and enhanced shadow for commanding presence. The price is now a key visual element\n   that anchors the card's call-to-action. Specificity chain remains unchanged. *\/\n\/* KLLD-FRAME 2026-06-16 :: price restyled to the reference's understated MONO\n   treatment (was big Fraunces) \u2014 JetBrains Mono, wide tracking, weight 500, on the\n   dark shelf below the photo. \u0e3f stays leading per brand CI. *\/\n.services-item.item-elementor.klld-card--tour .price-tour .price,\n.services-item.item-elementor.klld-card--tour .price-tour .price .item,\n.klld-card--tour .price-tour .price,\n.klld-card--tour .price-tour .price .item{font-family:var(--kmono);font-weight:600;color:var(--kglow)!important;\n  background:transparent!important;font-size:1.18rem!important;line-height:1.2!important;letter-spacing:.04em;\n  display:inline-block;overflow:visible;padding:2px 0;border-radius:0;\n  font-variant-numeric:tabular-nums;text-shadow:0 1px 2px rgba(4,12,7,.92),0 0 11px rgba(4,12,7,.62),0 1px 5px rgba(4,12,7,.55)}\n\/* KLLD CARD FAMILY 2026-07-06 :: \u0e3f-price recoloured white\u2192brand green to match the\n   green price on the tour .tcard carousel, transfer .tm-fare + rental .eds-rate \u2014 the\n   exact green\/white inconsistency the reskin was killing (same tour rendered green on\n   the carousel but white here). Uses --kglow (#2fbf4a, the theme's purpose-built\n   \"lifted green\") rather than the flat #099024 so the digit reads on VARIED dark\n   photos; the layered dark halo above reinforces edges on bright sunset\/foliage. *\/\n\/* the \"From\" eyebrow above the digit. The same theme chain (0,5,0) was painting it\n   grey (var(--grey-color,#5E6D77)) \u2014 that is defect 2's faint \"FROM\". Raise our\n   specificity to match and force gold + a real shadow so it reads on bright photos. *\/\n.services-item.item-elementor.klld-card--tour .price-tour .price .sale-top,\n.services-item.item-elementor.klld-card--tour .price-tour .sale-top,\n.klld-card--tour .price-tour .price .sale-top,\n.klld-card--tour .price-tour .sale-top{color:var(--ky)!important;font-family:var(--kmono);font-size:.62rem;font-weight:600;\n  letter-spacing:.16em;text-transform:uppercase;text-shadow:0 1px 5px rgba(6,16,10,.7)}\n.klld-card--tour .price-tour .price,\n.klld-card--tour .price-tour .price .sale-top,\n.klld-card--tour .price-tour .price .item{white-space:nowrap}\n\/* duration \/ \"from Khao Lak\" meta row \u2014 KLLD-PLATE-METAFIX 2026-06-16 (defect 2): was\n   rgba white .92 \/ .7 with a soft .5 shadow that washed out to faint grey on bright\n   sunset + foliage photos. Lift to solid near-white #f4f7f5 + a stronger, layered\n   shadow so it stays legible on both bright and dark plates. The clock icon + gold\n   arrow are untouched. *\/\n\/* NB specificity: the theme paints the duration row grey via\n   `.services-item.item-elementor .item .content-item .price-wrapper .unit` (0,5,0),\n   so the wrapper selector must MATCH that depth to win \u2014 prefix with\n   `.services-item.item-elementor.klld-card` and force the colour !important. The\n   \"Full Day\" text is a direct text node of .unit, so it inherits this wrapper colour. *\/\n\/* KLLD-NO-DURATION 2026-06-16 :: duration \/ \"from Khao Lak\" row removed from the\n   card per user request (kept in the DOM for schema, hidden visually). *\/\n.services-item.item-elementor.klld-card--tour .section-footer .unit,\n.klld-card--tour .section-footer .unit{display:none!important;align-items:center;gap:5px;flex:0 0 auto;max-width:100%;\n  font-family:var(--kmono);font-size:.66rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;\n  color:#f4f7f5!important;white-space:nowrap;text-shadow:0 1px 3px rgba(6,16,10,.78),0 1px 8px rgba(6,16,10,.6)}\n.services-item.item-elementor.klld-card--tour .section-footer .unit .unit-from,\n.klld-card--tour .section-footer .unit .unit-from{font-weight:500;color:rgba(255,255,255,.92)!important;letter-spacing:.06em}\n.klld-card--tour .section-footer .unit svg path{stroke:var(--ky)!important;fill:none!important}\n\/* go-arrow affordance (pure CSS, no markup). KLLD-PLATE-GO 2026-06-16: promoted\n   from a faint 16px tick to a clear gold \"go\" puck \u2014 a soft frosted disc so it\n   reads as the card's primary action on touch (no hover to reveal it). It nudges\n   right on hover AND :active, and a slow ambient drift (reduced-motion-off) keeps\n   it discoverable on mobile. Sits clear of the price row via the .unit right-pad. *\/\n.klld-card--tour .section-footer::after{content:\"\";position:absolute;right:-2px;bottom:8px;width:30px;height:30px;border-radius:50%;\n  background:rgba(255,204,0,.14) no-repeat center\/15px 15px url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffcc00' stroke-width='2.6'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'\/%3E%3C\/svg%3E\");\n  border:1px solid rgba(255,204,0,.32);box-shadow:0 6px 16px -8px rgba(0,0,0,.5);\n  opacity:1;animation:klld-go-drift 2.6s cubic-bezier(.45,0,.55,1) infinite;\n  transition:transform .35s cubic-bezier(.22,.61,.36,1),background .25s,border-color .25s}\n@keyframes klld-go-drift{0%,72%,100%{transform:translateX(0)}84%{transform:translateX(3px)}}\n.klld-card--tour .item.service-border:hover .section-footer::after,\n.klld-card--tour .item.service-border:active .section-footer::after{transform:translateX(5px);\n  background-color:rgba(255,204,0,.24);border-color:rgba(255,204,0,.55);animation:none}\n.klld-card--tour .section-footer .unit{padding-right:42px}\n\n\/* ---- MOBILE RHYTHM : tighten the single-column stack ----------------------\n   KLLD-PLATE-RHYTHM 2026-06-16. On phones the archive is one column of tall\n   full-bleed plates, so the page became a very long scroll with ~1 card per\n   viewport. We (a) shave the plate min-height (380\u2192320px) so ~1.6 plates show\n   at once \u2014 more scannable, still editorial \u2014 and (b) tighten the inter-card\n   gap on the GRID stack so the cards read as a cadence, not isolated billboards.\n   The homepage SLIDER (swiper rows, not a column stack) is untouched: its row\n   spacing is owned by swiper, and these rules only bite the .grid column gutter\n   + the narrow-viewport min-height. *\/\n@media (max-width:767px){\n  .services-item.grid.klld-card--tour{margin-bottom:14px}\n  .services-item.grid.klld-card--tour:last-child{margin-bottom:0}\n}\n@media (max-width:575px){\n  .klld-card--tour .item.service-border{min-height:70vh}\n}\n@media (max-width:480px){\n  .klld-card--tour .item.service-border{min-height:70vh}\n  .services-item.item-elementor.klld-card--tour .content-item,\n  .klld-card--tour .content-item{padding:22px 22px 18px}\n  .klld-card--tour .content-item .title{font-size:1.35rem;margin-top:6px}\n  .klld-card--tour .service-excerpt{margin-top:4px;font-size:.84rem}\n  .services-item.item-elementor.klld-card--tour .price-tour .price,\n  .services-item.item-elementor.klld-card--tour .price-tour .price .item,\n  .klld-card--tour .price-tour .price,\n  .klld-card--tour .price-tour .price .item{font-size:1.05rem!important}\n}\n\n\/* KLLD-PHASEF-RATIO 2026-06-17 :: desktop\/tablet multi-column cards use a fixed\n   3:4 portrait ratio instead of the 75vh tall plate, so the 4-up (and 2\/3-up)\n   rows read as even, balanced cards rather than skinny full-height columns.\n   Mobile (<768px, single column) keeps the tall 70vh full-bleed plate. The card\n   width is owned by the Bootstrap col \/ swiper slide; aspect-ratio derives height. *\/\n@media (min-width:768px){\n  .klld-card--tour{height:auto}\n  \/* max-height guard: belt-and-suspenders for any full-width card state; the 3:4\n     ratio otherwise owns height. 3\/4-up cards sit far under this cap. *\/\n  .klld-card--tour .item.service-border{min-height:0;height:auto;aspect-ratio:3\/4;max-height:78vh}\n}\n\n\/* KLLD-PHASEF-SLIDER3 2026-06-17 :: the tour SLIDER sections (list_style:slider)\n   are NOT initializing Swiper on this page (verified: slides stay full-width, so a\n   single giant 1-up card renders). Until the swiper-init bug is fixed, render them\n   as a native CSS scroll-snap carousel \u2014 3 cards per row via calc(), horizontal\n   swipe\/scroll. Scoped to UNinitialized swipers (both possible initialized class\n   names) so a working Swiper (which already honors slidesPerView=3 at its 1366px\n   breakpoint) is never overridden. Grid sections (col-xl-*) are untouched. *\/\n@media (min-width:1024px){\n  .service-tour.swiper-container:not(.swiper-initialized):not(.swiper-container-initialized) > .swiper-wrapper{\n    display:flex;flex-wrap:nowrap;gap:20px;transform:none!important;\n    overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:thin}\n  .service-tour.swiper-container:not(.swiper-initialized):not(.swiper-container-initialized) > .swiper-wrapper > .swiper-slide{\n    margin:0!important;scroll-snap-align:start;height:auto;flex:0 0 auto}\n  \/* each slider shows its OWN configured count N via calc(100%\/N - gap). The count\n     lives on the .st-list-service ANCESTOR (data-slides-per-view), so key off that:\n     \"3\" rows are 3-up, \"4\" rows are 4-up. Default (no count) \u2192 3-up. *\/\n  .st-list-service[data-slides-per-view=\"4\"] .service-tour.swiper-container:not(.swiper-initialized):not(.swiper-container-initialized) > .swiper-wrapper > .swiper-slide{\n    width:calc(100%\/4 - 15px)!important}\n  .st-list-service[data-slides-per-view=\"3\"] .service-tour.swiper-container:not(.swiper-initialized):not(.swiper-container-initialized) > .swiper-wrapper > .swiper-slide,\n  .service-tour.swiper-container:not(.swiper-initialized):not(.swiper-container-initialized) > .swiper-wrapper > .swiper-slide{\n    width:calc(100%\/3 - 14px)!important}\n}\n\n\/* ===== KLLD-CAROUSEL 2026-06-17 :: interactive slider controls ===============\n   The theme's Swiper never initializes on the tour sliders, so klld_carousel.js\n   (printed below) upgrades each scroll-rail into a real carousel: edge nav\n   buttons + a green\u2192gold progress rail, drag\/swipe, keyboard, ARIA. CSS-only\n   fallback (scroll-snap) still works if JS is disabled. Brand #099024 \/ #ffcc00. *\/\n.service-tour.swiper-container.klld-carousel{position:relative}\n.service-tour.swiper-container.klld-carousel > .swiper-wrapper{\n  scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;cursor:grab}\n.service-tour.swiper-container.klld-carousel > .swiper-wrapper::-webkit-scrollbar{display:none}\n.service-tour.swiper-container.klld-carousel.is-grabbing > .swiper-wrapper{cursor:grabbing;scroll-behavior:auto;scroll-snap-type:none}\n\/* edge nav buttons \u2014 frosted disc, brand-green chevron \u2192 green fill on hover *\/\n.klld-cnav{position:absolute;z-index:20;width:52px;height:52px;border-radius:50%;padding:0;\n  display:none;align-items:center;justify-content:center;cursor:pointer;\n  border:1px solid rgba(9,144,36,.22);background:rgba(255,255,255,.94);\n  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--kg);\n  box-shadow:0 20px 44px -22px rgba(28,46,32,.6),0 4px 12px -8px rgba(28,46,32,.35);\n  transition:background .25s,color .25s,transform .25s cubic-bezier(.22,.61,.36,1),opacity .25s,border-color .25s}\n\/* controls show only on desktop AND only when the rail actually overflows *\/\n@media (min-width:1024px){\n  .service-tour.klld-carousel.klld-has-overflow .klld-cnav{display:flex}\n  .service-tour.klld-carousel.klld-has-overflow .klld-crail{display:block}\n}\n.klld-cnav svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}\n.klld-cnav:hover{background:var(--kg);color:#fff;border-color:var(--kg);transform:translateY(-50%) scale(1.09)}\n.klld-cnav:active{transform:translateY(-50%) scale(.95)}\n.klld-cnav:focus-visible{outline:2px solid var(--ky);outline-offset:3px}\n.klld-cnav--prev{left:10px}\n.klld-cnav--next{right:10px}\n.klld-cnav[disabled]{opacity:0;pointer-events:none}\n\/* progress rail \u2014 green\u2192gold thumb that tracks scroll position *\/\n.klld-crail{display:none;position:relative;height:3px;margin:20px auto 2px;width:140px;max-width:40%;\n  border-radius:999px;background:rgba(9,144,36,.16);overflow:hidden}\n.klld-crail__thumb{position:absolute;top:0;left:0;height:100%;width:30%;border-radius:999px;\n  background:linear-gradient(90deg,var(--kg),var(--ky));will-change:transform}\n.klld-cnav:not([disabled]).klld-cnav--hint{animation:klld-cnav-nudge 2.4s ease-in-out 2}\n@keyframes klld-cnav-nudge{0%,100%{transform:translateY(-50%)}50%{transform:translateY(-50%) translateX(4px)}}\n@media (prefers-reduced-motion: reduce){\n  .service-tour.swiper-container.klld-carousel > .swiper-wrapper{scroll-behavior:auto}\n  .klld-cnav{transition:none}\n  .klld-cnav--hint{animation:none}\n}\n\n\/* ===== KLLD-SWIPER-SKIN 2026-07-12 :: brand the tour row's REAL controls =====\n   Reality check (probed live 2026-07-12): the parent Traveler \"slider style_2\"\n   Swiper DOES initialize on the homepage tour row now (it did not in 2026-06),\n   so the klld-cnav fallback above stays dormant (klld-has-overflow never sets\n   when Swiper owns the transforms). That leaves the LIVE affordance in the hands\n   of Swiper's OWN nav (.st-button-prev\/next \u2014 40px white\/grey discs) and its\n   pagination bullets \u2014 both unstyled and, on a non-overflowing 4-of-4 row,\n   rendered LOCKED + disabled as orphan clutter bottom-right.\n\n   This block, scoped ONLY to `.st-list-service.slider .service-tour`, does three\n   things with pure CSS (no DOM\/JS change \u2192 no CLS, no touch to card anchors,\n   data-price\/data-thumb, ItemList schema, booking, or the mobile-menu coverflow):\n     1. Hide LOCKED\/disabled nav + pagination so a row with nothing to scroll\n        reads as a clean grid, not a dead-button row.\n     2. Restyle the ACTIVE nav into gutter-hung frosted green\u2192gold discs that\n        match the klld-cnav family (52px, 44px+ hit area, strong contrast, gold\n        focus ring), lifted to the card mid-line.\n     3. Restyle pagination into a slim brand rail of green pills with a gold\n        active bar, centered under the row \u2014 the \"there's more\" signal on every\n        width including mobile.\n   Brand green #099024 \/ lifted #2fbf4a \/ sun gold #ffcc00. No #0b7016, no Inter. *\/\n\n\/* let the discs hang in the gutter without clipping *\/\n.st-list-service.slider .service-tour.swiper-container{position:relative;overflow:visible}\n\/* KLLD-SLIDER-MOBILE-CLIP 2026-07-20 \u2014 but ONLY where a gutter exists.\n   Below 992px there is no gutter, the discs are not gutter-hung, and this\n   overflow:visible let all 12 slides lay out side-by-side in the flex wrapper:\n   measured on \/cart\/ at 390px, document scrollWidth 1508 vs a 390 viewport \u2014\n   1,118px of horizontal page scroll, 260 elements past the fold edge, on the\n   highest-intent page on the site. (Desktop 1440 measured clean, which is why\n   the rule above stays untouched there.)\n   Safe to clip: Swiper's JS is loaded and initialised here (container.swiper\n   present, 12 slides, pagination bullets rendered), so slides stay reachable by\n   swipe and by the pagination rail. Verified before clipping \u2014 without working\n   JS this would have hidden 11 of 12 cards instead. *\/\n@media (max-width:991px){\n  .st-list-service.slider .service-tour.swiper-container{overflow:hidden}\n}\n\n\/* 1 \u2014 kill locked\/disabled controls (nothing to scroll \u2192 no orphan buttons\/dots) *\/\n.st-list-service.slider .st-button-prev.swiper-button-lock,\n.st-list-service.slider .st-button-next.swiper-button-lock,\n.st-list-service.slider .st-button-prev.swiper-button-disabled,\n.st-list-service.slider .st-button-next.swiper-button-disabled,\n.st-list-service.slider .swiper-pagination-lock{\n  opacity:0!important;pointer-events:none!important;visibility:hidden!important}\n\n\/* 2 \u2014 ACTIVE nav discs : frosted white \u2192 green fill, gutter-hung, card-mid-line.\n   Selectors carry .st-list-service.slider (0,2,x) to beat the theme's own\n   .st-button-* rules; a couple of paint props keep !important where the theme\n   set !important on the same prop. *\/\n.st-list-service.slider .service-tour .st-button-prev,\n.st-list-service.slider .service-tour .st-button-next{\n  position:absolute;top:42%;bottom:auto;z-index:20;\n  width:52px;height:52px;margin:0;border-radius:50%;\n  display:flex;align-items:center;justify-content:center;cursor:pointer;\n  background:rgba(255,255,255,.94)!important;color:var(--kg)!important;\n  border:1px solid rgba(9,144,36,.22)!important;\n  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);\n  box-shadow:0 20px 44px -22px rgba(28,46,32,.6),0 4px 12px -8px rgba(28,46,32,.35);\n  transition:background .25s,color .25s,transform .25s cubic-bezier(.22,.61,.36,1),border-color .25s,box-shadow .25s}\n\/* a comfortable invisible 48px+ hit halo around the 52px puck for touch *\/\n.st-list-service.slider .service-tour .st-button-prev::after,\n.st-list-service.slider .service-tour .st-button-next::after{content:\"\";position:absolute;inset:-8px;border-radius:50%}\n.st-list-service.slider .service-tour .st-button-prev{left:-14px}\n.st-list-service.slider .service-tour .st-button-next{right:-14px}\n.st-list-service.slider .service-tour .st-button-prev:hover,\n.st-list-service.slider .service-tour .st-button-next:hover{\n  background:var(--kg)!important;color:#fff!important;border-color:var(--kg)!important;\n  transform:scale(1.09);box-shadow:0 26px 52px -22px rgba(9,144,36,.6),0 6px 16px -8px rgba(28,46,32,.4)}\n.st-list-service.slider .service-tour .st-button-prev:active,\n.st-list-service.slider .service-tour .st-button-next:active{transform:scale(.95)}\n.st-list-service.slider .service-tour .st-button-prev:focus-visible,\n.st-list-service.slider .service-tour .st-button-next:focus-visible{outline:2px solid var(--ky);outline-offset:3px}\n\/* theme paints its chevron via ::before icon font \u2014 re-weight + colour it, size to fit *\/\n.st-list-service.slider .service-tour .st-button-prev::before,\n.st-list-service.slider .service-tour .st-button-next::before{font-size:20px;line-height:1;color:inherit}\n\n\/* 3 \u2014 pagination : slim brand rail of green pills + gold active bar, under the row *\/\n.st-list-service.slider .service-tour ~ .swiper-pagination,\n.st-list-service.slider .swiper-pagination{position:static;margin:22px auto 2px;\n  display:flex;align-items:center;justify-content:center;gap:7px;width:auto;line-height:0}\n.st-list-service.slider .swiper-pagination .swiper-pagination-bullet{\n  width:8px;height:8px;margin:0!important;border-radius:999px;opacity:1;\n  background:rgba(9,144,36,.22);border:0;\n  transition:width .3s cubic-bezier(.22,.61,.36,1),background .3s}\n.st-list-service.slider .swiper-pagination .swiper-pagination-bullet:hover{background:rgba(9,144,36,.5)}\n.st-list-service.slider .swiper-pagination .swiper-pagination-bullet:focus-visible{\n  outline:2px solid var(--ky);outline-offset:2px}\n\/* active = a wide green\u2192gold pill, the family gradient *\/\n.st-list-service.slider .swiper-pagination .swiper-pagination-bullet-active{\n  width:26px;background:linear-gradient(90deg,var(--kg),var(--ky))!important}\n\n@media (prefers-reduced-motion: reduce){\n  .st-list-service.slider .service-tour .st-button-prev,\n  .st-list-service.slider .service-tour .st-button-next,\n  .st-list-service.slider .swiper-pagination .swiper-pagination-bullet{transition:none}\n}\n\n\/* mobile (<1024px): Swiper falls to 1-up peek; keep discs off (thumb-swipe owns it)\n   but keep the branded pagination rail as the primary \"more tours\" cue. *\/\n@media (max-width:1023px){\n  .st-list-service.slider .service-tour .st-button-prev,\n  .st-list-service.slider .service-tour .st-button-next{display:none!important}\n  .st-list-service.slider .swiper-pagination{margin-top:16px}\n}\n\n\/* ---- LIST CARD (loop\/list.php) \u2014 same Emerald-Daybreak language ---------- *\/\n.services-item.list.item-elementor{font-family:var(--kbody);color:var(--kink-2)}\n.services-item.list.item-elementor .item.service-border{border:1px solid var(--kline);border-radius:20px;overflow:hidden;background:var(--kpaper);\n  transition:transform .34s cubic-bezier(.2,.7,.2,1),box-shadow .34s cubic-bezier(.2,.7,.2,1),border-color .34s}\n.services-item.list.item-elementor .item.service-border:hover{transform:translateY(-4px);box-shadow:var(--kshadow);border-color:var(--kline-g)}\n.services-item.list.item-elementor .featured-image{position:relative;overflow:hidden;isolation:isolate}\n.services-item.list.item-elementor .featured-image img{transition:transform .7s cubic-bezier(.2,.7,.2,1)}\n.services-item.list.item-elementor .item.service-border:hover .featured-image img{transform:scale(1.05)}\n.services-item.list.item-elementor .featured-image::after{content:\"\";position:absolute;left:0;right:0;bottom:0;height:3px;z-index:3;\n  background:linear-gradient(90deg,var(--kg),var(--ky) 58%,var(--kg));opacity:0;transition:opacity .34s}\n.services-item.list.item-elementor .item.service-border:hover .featured-image::after{opacity:1}\n.services-item.list.item-elementor .service-add-wishlist{color:var(--kg);background:rgba(255,255,255,.92);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 8px 20px -10px rgba(28,46,32,.5);transition:background .2s,color .2s,transform .2s}\n.services-item.list.item-elementor .service-add-wishlist:hover{background:var(--kg);color:#fff;transform:scale(1.06)}\n.services-item.list.item-elementor .sub-title{font-family:var(--kmono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--kfaint)}\n.services-item.list.item-elementor .sub-title .stt-icon-location1{color:var(--kg);margin-right:4px}\n.services-item.list.item-elementor .content-item .title{font-family:var(--kdisp);font-weight:600;letter-spacing:-.014em}\n.services-item.list.item-elementor .content-item .title a{color:var(--kink);transition:color .2s}\n.services-item.list.item-elementor .content-item .title a:hover{color:var(--kg)}\n.services-item.list.item-elementor .service-excerpt{font-family:var(--kbody);color:var(--ksoft);line-height:1.55}\n.services-item.list.item-elementor .reviews .stt-icon-star1{color:var(--ky)}\n.services-item.list.item-elementor .reviews .rate{font-family:var(--kdisp);font-weight:600;color:var(--kink)}\n.services-item.list.item-elementor .reviews.reviews-empty .summary{color:var(--kfaint)}\n.services-item.list.item-elementor .service-duration{font-family:var(--kbody);font-weight:600;color:var(--kgd)}\n.services-item.list.item-elementor .service-type{font-family:var(--kmono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ksoft)}\n.services-item.list.item-elementor .price-tour .price{font-family:var(--kdisp);font-weight:600;color:var(--kink);font-variant-numeric:tabular-nums}\n.services-item.list.item-elementor .price-tour .sale-top{font-family:var(--kmono);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--kfaint)}\n.services-item.list.item-elementor .view-detail{background:var(--kg);color:#fff;border-radius:999px;font-family:var(--kbody);font-weight:700;letter-spacing:.01em;\n  box-shadow:0 14px 30px -16px rgba(9,144,36,.7);transition:background .2s,transform .2s,box-shadow .2s}\n.services-item.list.item-elementor .view-detail:hover{background:var(--kgd);transform:translateY(-2px);box-shadow:0 20px 40px -18px rgba(9,144,36,.78);color:#fff}\n\n@media (prefers-reduced-motion: reduce){\n  .klld-card--tour .item.service-border,.klld-card--tour .featured-image img.image-feature,\n  .klld-card--tour .featured-image::after,.klld-card--tour .featured-image::before,.klld-card--tour .section-footer::after,\n  .services-item.list.item-elementor .item.service-border,\n  .services-item.list.item-elementor .featured-image img,\n  .services-item.list.item-elementor .featured-image::after{transition:none}\n  \/* kill the ambient go-arrow drift + the press scale for reduced-motion; the\n     affordances stay visible (gold puck, base hairline) but don't animate. *\/\n  .klld-card--tour .section-footer::after{animation:none}\n  .klld-card--tour .item.service-border:hover,.klld-card--tour .item.service-border:active,\n  .services-item.list.item-elementor .item.service-border:hover{transform:none}\n  .klld-card--tour .item.service-border:hover .featured-image img.image-feature,\n  .klld-card--tour .item.service-border:active .featured-image img.image-feature,\n  .klld-card--tour .item.service-border:hover .section-footer::after,\n  .klld-card--tour .item.service-border:active .section-footer::after,\n  .services-item.list.item-elementor .item.service-border:hover .featured-image img{transform:none}\n}\n<\/style>\n<script id=\"klld-carousel-js\" data-no-optimize=\"1\" data-no-defer=\"1\" data-cfasync=\"false\">\n\/* KLLD-CAROUSEL 2026-06-17 :: upgrade each tour scroll-rail into a real carousel.\n   No library (the theme's Swiper never inits here). Idempotent, drag + keyboard +\n   ARIA + reduced-motion aware. Bails on any container Swiper actually initialized. *\/\n(function(){\n  'use strict';\n  if (window.__klldCarouselInit) return; window.__klldCarouselInit = true;\n  var PREV = '<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M15 6l-6 6 6 6\"\/><\/svg>';\n  var NEXT = '<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M9 6l6 6-6 6\"\/><\/svg>';\n  var reduce = window.matchMedia && matchMedia('(prefers-reduced-motion: reduce)').matches;\n\n  function build(container){\n    if (!container || container.__klldCar) return;\n    if (container.classList.contains('swiper-initialized') ||\n        container.classList.contains('swiper-container-initialized')) return; \/\/ real Swiper won \u2014 leave it\n    var track = container.querySelector(':scope > .swiper-wrapper');\n    if (!track) return;\n    container.__klldCar = true;\n    container.classList.add('klld-carousel');\n    container.setAttribute('role','region');\n    container.setAttribute('aria-roledescription','carousel');\n    container.setAttribute('aria-label','Tours');\n\n    var prev = document.createElement('button');\n    prev.type='button'; prev.className='klld-cnav klld-cnav--prev';\n    prev.setAttribute('aria-label','Previous tours'); prev.innerHTML=PREV;\n    var next = document.createElement('button');\n    next.type='button'; next.className='klld-cnav klld-cnav--next';\n    next.setAttribute('aria-label','Next tours'); next.innerHTML=NEXT;\n    var rail = document.createElement('div'); rail.className='klld-crail';\n    var thumb = document.createElement('div'); thumb.className='klld-crail__thumb'; rail.appendChild(thumb);\n    container.appendChild(prev); container.appendChild(next); container.appendChild(rail);\n\n    function maxScroll(){ return Math.max(0, track.scrollWidth - track.clientWidth); }\n    function pageSize(){ return Math.max(track.clientWidth * 0.86, 220); }\n    var raf = 0;\n    function update(){\n      var ms = maxScroll();\n      var overflow = ms > 4;\n      container.classList.toggle('klld-has-overflow', overflow); \/\/ CSS shows controls (desktop only)\n      if (!overflow) return;\n      prev.disabled = track.scrollLeft <= 2;\n      next.disabled = track.scrollLeft >= ms - 2;\n      var ratio = track.clientWidth \/ track.scrollWidth;      \/\/ visible fraction\n      var w = Math.max(ratio * 100, 14);\n      thumb.style.width = w + '%';\n      var p = ms > 0 ? track.scrollLeft \/ ms : 0;             \/\/ 0..1\n      var travel = 100 - w;                                   \/\/ % of rail the thumb can move\n      thumb.style.transform = 'translateX(' + (p * travel \/ (w\/100)) + '%)';\n      \/\/ vertically center the nav on the card row\n      var top = track.offsetTop + track.clientHeight \/ 2;\n      prev.style.top = next.style.top = top + 'px';\n    }\n    function onScroll(){ if (raf) return; raf = requestAnimationFrame(function(){ raf=0; update(); }); }\n    function go(dir){ track.scrollBy({ left: dir*pageSize(), behavior: reduce?'auto':'smooth' }); }\n\n    prev.addEventListener('click', function(){ go(-1); });\n    next.addEventListener('click', function(){ go(1); });\n    track.addEventListener('scroll', onScroll, {passive:true});\n\n    \/* drag-to-scroll (pointer). Cancels the card click delegate only if a real drag happened. *\/\n    var down=false, startX=0, startLeft=0, moved=false;\n    track.addEventListener('pointerdown', function(e){\n      if (e.pointerType==='mouse' && e.button!==0) return;\n      down=true; moved=false; startX=e.clientX; startLeft=track.scrollLeft;\n      container.classList.add('is-grabbing');\n    });\n    window.addEventListener('pointermove', function(e){\n      if(!down) return;\n      var dx = e.clientX - startX;\n      if (Math.abs(dx) > 5) moved=true;\n      track.scrollLeft = startLeft - dx;\n    });\n    window.addEventListener('pointerup', function(){\n      if(!down) return; down=false; container.classList.remove('is-grabbing'); update();\n    });\n    track.addEventListener('click', function(e){\n      if (moved){ e.preventDefault(); e.stopPropagation(); moved=false; }\n    }, true);\n\n    if (window.ResizeObserver){ try{ new ResizeObserver(update).observe(track); }catch(e){} }\n    window.addEventListener('resize', update);\n    \/\/ images\/lazyload land late and change scrollWidth \u2014 recompute a few times\n    setTimeout(update,300); setTimeout(update,1200); setTimeout(update,2500);\n    update();\n    \/\/ one-time discoverability nudge on the first slider\n    if (!window.__klldCarHinted){ window.__klldCarHinted=true; next.classList.add('klld-cnav--hint');\n      setTimeout(function(){ next.classList.remove('klld-cnav--hint'); }, 5200); }\n  }\n\n  function init(){ document.querySelectorAll('.service-tour.swiper-container').forEach(build); }\n  if (document.readyState==='loading') document.addEventListener('DOMContentLoaded', init); else init();\n  setTimeout(init, 1500); \/\/ re-scan after late theme scripts settle\n})();\n<\/script>\n<\/div><div class=\"swiper-slide\"><div class=\"services-item grid item-elementor klld-card klld-card--tour\">\n    <div class=\"item service-border st-border-radius\">\n        <div class=\"featured-image\">\n                                        <a href=\"javascript: void(0)\" class=\"login\" data-bs-toggle=\"modal\" data-bs-target=\"#st-login-form\">\n                    <div class=\"service-add-wishlist\" title=\"Ajouter \u00e0 la liste de souhaits\">\n                        <i class=\"st-border-radius field-icon\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"23\" height=\"22\" viewBox=\"0 0 23 22\" fill=\"none\">\r\n        <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0.75 7.68998C0.75 4.18927 3.57229 1.34998 7.06 1.34998C8.79674 1.34998 10.3646 2.05596 11.5003 3.19469C12.6385 2.05561 14.2122 1.34998 15.94 1.34998C19.4277 1.34998 22.25 4.18927 22.25 7.68998C22.25 11.4395 20.5107 14.4001 18.4342 16.5276C16.3683 18.6443 13.9235 19.9861 12.3657 20.5186C12.0914 20.6147 11.7773 20.65 11.5 20.65C11.2227 20.65 10.9086 20.6147 10.6343 20.5186C9.07655 19.9861 6.63169 18.6443 4.56577 16.5276C2.48932 14.4001 0.75 11.4395 0.75 7.68998Z\" fill=\"#232323\" fill-opacity=\"0.3\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n        <\/svg><\/i>                        <div class=\"lds-dual-ring\"><\/div>\n                    <\/div>\n                <\/a>\n                        <a href=\"https:\/\/www.khaolaklanddiscovery.com\/fr\/excursions-khao-lak\/circuit-decouverte-de-3-jours-au-parc-national-de-khao-sok\/\">\n                <img decoding=\"async\" src=\"https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2025\/10\/Khao-Sok-National-Park-Floating-Bungalow-1-700x900.jpg\" alt=\"Circuit d\u00e9couverte de 3 jours au parc national de Khao Sok\" class=\"image-feature st-hover-grow\" title=\"-\">\n            <\/a>\n                        <a href=\"\/fr\/wp-json\/wp\/v2\/pages\/17254?partner_id=1\" target=\"_blank\" title=\"Khao Lak Land Discovery\"  class=\"service-avatar\"><img decoding=\"async\" alt=\"avatar\" src=\"https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2022\/09\/khao-lak-land-discovery-logo-300x300-1.png\" class=\"avatar avatar-96 photo origin round\" =70 title=\"-\"><\/a>        <\/div>\n        <div class=\"content-item\">\n                            <div class=\"klld-card-eyebrow d-flex align-items-center justify-content-between\">\n                                            <span class=\"klld-card-tag\">Aventure<\/span>\n                                                                <span class=\"klld-card-addr sub-title st-address d-flex align-items-center\">\n                            <i class=\"stt-icon-location1\"><\/i> Cheow Lan Lake, Khao Phang, Ban Ta Khun District, Surat Thani, Thailand                        <\/span>\n                                    <\/div>\n                        <h4 class=\"title\">\n                <a href=\"https:\/\/www.khaolaklanddiscovery.com\/fr\/excursions-khao-lak\/circuit-decouverte-de-3-jours-au-parc-national-de-khao-sok\/\"\n                   class=\"st-link c-main\" data-price=\"\u00c0 partir de \u0e3f12,500\" data-thumb=\"https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2025\/10\/Khao-Sok-National-Park-Floating-Bungalow-1-700x900.jpg\" data-location=\"Khao Sok\">Circuit d\u00e9couverte de 3 jours au parc national de Khao Sok<\/a>\n            <\/h4>\n            <div class=\"service-excerpt\">\n                    <p>A three-day Khao Sok discovery from Khao Lak \u2014 rainforest treks, Cheow Lan Lake and nights in floating bungalows deep inside the national park.<\/p>\n                <\/div>\n            <div class=\"section-footer\">\n\n                <div class=\"price-wrapper price-wrapper-tour d-flex align-items-end justify-content-between\">\n                    <span class=\"price-tour\">\n                        <span class=\"price d-flex justify-content-around flex-column\"><span class=\"sale-top\">\u00c0 partir de<span class=\"text-lg lh1em item \"> \u0e3f12,500<\/span><\/span><\/span>\n                    <\/span>\n                    <span class=\"unit\"><i class=\"input-icon st-border-radius field-icon fa\"><svg height=\"16px\" width=\"16px\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" x=\"0px\" y=\"0px\"\r\n     viewBox=\"0 0 24 24\" style=\"enable-background:new 0 0 24 24;\" xml:space=\"preserve\">\r\n\r\n<g fill=\"#5E6D77\">\r\n    <path d=\"M12,23.25C5.797,23.25,0.75,18.203,0.75,12C0.75,5.797,5.797,0.75,12,0.75c6.203,0,11.25,5.047,11.25,11.25\r\n        C23.25,18.203,18.203,23.25,12,23.25z M12,2.25c-5.376,0-9.75,4.374-9.75,9.75s4.374,9.75,9.75,9.75s9.75-4.374,9.75-9.75\r\n        S17.376,2.25,12,2.25z\"\/>\r\n    <path d=\"M15.75,16.5c-0.2,0-0.389-0.078-0.53-0.22l-2.25-2.25c-0.302,0.145-0.632,0.22-0.969,0.22c-1.241,0-2.25-1.009-2.25-2.25\r\n        c0-0.96,0.615-1.808,1.5-2.121V5.25c0-0.414,0.336-0.75,0.75-0.75s0.75,0.336,0.75,0.75v4.629c0.885,0.314,1.5,1.162,1.5,2.121\r\n        c0,0.338-0.075,0.668-0.22,0.969l2.25,2.25c0.292,0.292,0.292,0.768,0,1.061C16.139,16.422,15.95,16.5,15.75,16.5z M12,11.25\r\n        c-0.414,0-0.75,0.336-0.75,0.75s0.336,0.75,0.75,0.75s0.75-0.336,0.75-0.75S12.414,11.25,12,11.25z\"\/>\r\n<\/g>\r\n<\/svg><\/i>3 jours 2 nuits<span class=\"unit-from\"> &middot; depuis Khao Lak<\/span><\/span>\n                <\/div>\n            <\/div>\n        <\/div>\n                        <div class=\"reviews\">\n            <i class=\"stt-icon-star1\"><\/i>\n            <span class=\"rate\">4.6<\/span>\n            <span class=\"summary\">\n                (497 Avis)\n            <\/span>\n        <\/div>\n            <\/div>\n<\/div>\n<\/div><div class=\"swiper-slide\"><div class=\"services-item grid item-elementor klld-card klld-card--tour\">\n    <div class=\"item service-border st-border-radius\">\n        <div class=\"featured-image\">\n                                        <a href=\"javascript: void(0)\" class=\"login\" data-bs-toggle=\"modal\" data-bs-target=\"#st-login-form\">\n                    <div class=\"service-add-wishlist\" title=\"Ajouter \u00e0 la liste de souhaits\">\n                        <i class=\"st-border-radius field-icon\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"23\" height=\"22\" viewBox=\"0 0 23 22\" fill=\"none\">\r\n        <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0.75 7.68998C0.75 4.18927 3.57229 1.34998 7.06 1.34998C8.79674 1.34998 10.3646 2.05596 11.5003 3.19469C12.6385 2.05561 14.2122 1.34998 15.94 1.34998C19.4277 1.34998 22.25 4.18927 22.25 7.68998C22.25 11.4395 20.5107 14.4001 18.4342 16.5276C16.3683 18.6443 13.9235 19.9861 12.3657 20.5186C12.0914 20.6147 11.7773 20.65 11.5 20.65C11.2227 20.65 10.9086 20.6147 10.6343 20.5186C9.07655 19.9861 6.63169 18.6443 4.56577 16.5276C2.48932 14.4001 0.75 11.4395 0.75 7.68998Z\" fill=\"#232323\" fill-opacity=\"0.3\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n        <\/svg><\/i>                        <div class=\"lds-dual-ring\"><\/div>\n                    <\/div>\n                <\/a>\n                        <a href=\"https:\/\/www.khaolaklanddiscovery.com\/fr\/excursions-khao-lak\/tour-matinal-des-iles-de-krabi-excursion-sur-4-iles-a-couper-le-souffle\/\">\n                <img decoding=\"async\" src=\"https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2024\/07\/4-islands-tour-krabi-700x900.jpg\" alt=\"Excursion 4 \u00eeles de Krabi depuis Khao Lak : d\u00e9part matinal\" class=\"image-feature st-hover-grow\" title=\"-\">\n            <\/a>\n                        <a href=\"\/fr\/wp-json\/wp\/v2\/pages\/17254?partner_id=1\" target=\"_blank\" title=\"Khao Lak Land Discovery\"  class=\"service-avatar\"><img decoding=\"async\" alt=\"avatar\" src=\"https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2022\/09\/khao-lak-land-discovery-logo-300x300-1.png\" class=\"avatar avatar-96 photo origin round\" =70 title=\"-\"><\/a>        <\/div>\n        <div class=\"content-item\">\n                            <div class=\"klld-card-eyebrow d-flex align-items-center justify-content-between\">\n                                            <span class=\"klld-card-tag\">Excursion Phuket<\/span>\n                                                                <span class=\"klld-card-addr sub-title st-address d-flex align-items-center\">\n                            <i class=\"stt-icon-location1\"><\/i> Krabi 4 Island Adventure, Ao Nang, Mueang Krabi District, Krabi, Thailand                        <\/span>\n                                    <\/div>\n                        <h4 class=\"title\">\n                <a href=\"https:\/\/www.khaolaklanddiscovery.com\/fr\/excursions-khao-lak\/tour-matinal-des-iles-de-krabi-excursion-sur-4-iles-a-couper-le-souffle\/\"\n                   class=\"st-link c-main\" data-price=\"\u00c0 partir de \u0e3f4,100\" data-thumb=\"https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2024\/07\/4-islands-tour-krabi-700x900.jpg\" data-location=\"Islands tours\">Excursion 4 \u00eeles de Krabi depuis Khao Lak : d\u00e9part matinal<\/a>\n            <\/h4>\n            <div class=\"service-excerpt\">\n                    <p>An early-bird full-day hop to Krabi's four headline islands \u2014 Phra Nang, Chicken, Tup and Poda \u2014 ahead of the crowds, by speedboat from Khao Lak.<\/p>\n                <\/div>\n            <div class=\"section-footer\">\n\n                <div class=\"price-wrapper price-wrapper-tour d-flex align-items-end justify-content-between\">\n                    <span class=\"price-tour\">\n                        <span class=\"price d-flex justify-content-around flex-column\"><span class=\"sale-top\">\u00c0 partir de<span class=\"text-lg lh1em item \"> \u0e3f4,100<\/span><\/span><\/span>\n                    <\/span>\n                    <span class=\"unit\"><i class=\"input-icon st-border-radius field-icon fa\"><svg height=\"16px\" width=\"16px\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" x=\"0px\" y=\"0px\"\r\n     viewBox=\"0 0 24 24\" style=\"enable-background:new 0 0 24 24;\" xml:space=\"preserve\">\r\n\r\n<g fill=\"#5E6D77\">\r\n    <path d=\"M12,23.25C5.797,23.25,0.75,18.203,0.75,12C0.75,5.797,5.797,0.75,12,0.75c6.203,0,11.25,5.047,11.25,11.25\r\n        C23.25,18.203,18.203,23.25,12,23.25z M12,2.25c-5.376,0-9.75,4.374-9.75,9.75s4.374,9.75,9.75,9.75s9.75-4.374,9.75-9.75\r\n        S17.376,2.25,12,2.25z\"\/>\r\n    <path d=\"M15.75,16.5c-0.2,0-0.389-0.078-0.53-0.22l-2.25-2.25c-0.302,0.145-0.632,0.22-0.969,0.22c-1.241,0-2.25-1.009-2.25-2.25\r\n        c0-0.96,0.615-1.808,1.5-2.121V5.25c0-0.414,0.336-0.75,0.75-0.75s0.75,0.336,0.75,0.75v4.629c0.885,0.314,1.5,1.162,1.5,2.121\r\n        c0,0.338-0.075,0.668-0.22,0.969l2.25,2.25c0.292,0.292,0.292,0.768,0,1.061C16.139,16.422,15.95,16.5,15.75,16.5z M12,11.25\r\n        c-0.414,0-0.75,0.336-0.75,0.75s0.336,0.75,0.75,0.75s0.75-0.336,0.75-0.75S12.414,11.25,12,11.25z\"\/>\r\n<\/g>\r\n<\/svg><\/i>Journ\u00e9e compl\u00e8te<span class=\"unit-from\"> &middot; depuis Khao Lak<\/span><\/span>\n                <\/div>\n            <\/div>\n        <\/div>\n                        <div class=\"reviews\">\n            <i class=\"stt-icon-star1\"><\/i>\n            <span class=\"rate\">4.4<\/span>\n            <span class=\"summary\">\n                (10 Avis)\n            <\/span>\n        <\/div>\n            <\/div>\n<\/div>\n<\/div><div class=\"swiper-slide\"><div class=\"services-item grid item-elementor klld-card klld-card--tour\">\n    <div class=\"item service-border st-border-radius\">\n        <div class=\"featured-image\">\n                                        <a href=\"javascript: void(0)\" class=\"login\" data-bs-toggle=\"modal\" data-bs-target=\"#st-login-form\">\n                    <div class=\"service-add-wishlist\" title=\"Ajouter \u00e0 la liste de souhaits\">\n                        <i class=\"st-border-radius field-icon\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"23\" height=\"22\" viewBox=\"0 0 23 22\" fill=\"none\">\r\n        <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0.75 7.68998C0.75 4.18927 3.57229 1.34998 7.06 1.34998C8.79674 1.34998 10.3646 2.05596 11.5003 3.19469C12.6385 2.05561 14.2122 1.34998 15.94 1.34998C19.4277 1.34998 22.25 4.18927 22.25 7.68998C22.25 11.4395 20.5107 14.4001 18.4342 16.5276C16.3683 18.6443 13.9235 19.9861 12.3657 20.5186C12.0914 20.6147 11.7773 20.65 11.5 20.65C11.2227 20.65 10.9086 20.6147 10.6343 20.5186C9.07655 19.9861 6.63169 18.6443 4.56577 16.5276C2.48932 14.4001 0.75 11.4395 0.75 7.68998Z\" fill=\"#232323\" fill-opacity=\"0.3\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n        <\/svg><\/i>                        <div class=\"lds-dual-ring\"><\/div>\n                    <\/div>\n                <\/a>\n                        <a href=\"https:\/\/www.khaolaklanddiscovery.com\/fr\/excursions-khao-lak\/cheow-lan-lake-khao-sok-floating-bungalows-tour\/\">\n                <img decoding=\"async\" src=\"https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2025\/09\/Khao-Sok-Floating-Bungalow-700x900.jpg\" alt=\"Bungalows Flottants Khao Sok \u2014 Aventure au Lac Cheow Lan\" class=\"image-feature st-hover-grow\" title=\"-\">\n            <\/a>\n                        <a href=\"\/fr\/wp-json\/wp\/v2\/pages\/17254?partner_id=1\" target=\"_blank\" title=\"Khao Lak Land Discovery\"  class=\"service-avatar\"><img decoding=\"async\" alt=\"avatar\" src=\"https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2022\/09\/khao-lak-land-discovery-logo-300x300-1.png\" class=\"avatar avatar-96 photo origin round\" =70 title=\"-\"><\/a>        <\/div>\n        <div class=\"content-item\">\n                            <div class=\"klld-card-eyebrow d-flex align-items-center justify-content-between\">\n                                            <span class=\"klld-card-tag\">Aventure<\/span>\n                                                                <span class=\"klld-card-addr sub-title st-address d-flex align-items-center\">\n                            <i class=\"stt-icon-location1\"><\/i> Cheow Lan Lake, Khao Phang, Ban Ta Khun District, Surat Thani, Thailand                        <\/span>\n                                    <\/div>\n                        <h4 class=\"title\">\n                <a href=\"https:\/\/www.khaolaklanddiscovery.com\/fr\/excursions-khao-lak\/cheow-lan-lake-khao-sok-floating-bungalows-tour\/\"\n                   class=\"st-link c-main\" data-price=\"\u00c0 partir de \u0e3f8,500\" data-thumb=\"https:\/\/www.khaolaklanddiscovery.com\/wp-content\/uploads\/2025\/09\/Khao-Sok-Floating-Bungalow-700x900.jpg\" data-location=\"Khao Sok\">Bungalows Flottants Khao Sok \u2014 Aventure au Lac Cheow Lan<\/a>\n            <\/h4>\n            <div class=\"service-excerpt\">\n                    <p>A two-day Cheow Lan Lake adventure from Khao Lak \u2014 sleep in floating bungalows on emerald water, ringed by the limestone karsts of Khao Sok.<\/p>\n                <\/div>\n            <div class=\"section-footer\">\n\n                <div class=\"price-wrapper price-wrapper-tour d-flex align-items-end justify-content-between\">\n                    <span class=\"price-tour\">\n                        <span class=\"price d-flex justify-content-around flex-column\"><span class=\"sale-top\">\u00c0 partir de<span class=\"text-lg lh1em item \"> \u0e3f8,500<\/span><\/span><\/span>\n                    <\/span>\n                    <span class=\"unit\"><i class=\"input-icon st-border-radius field-icon fa\"><svg height=\"16px\" width=\"16px\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" x=\"0px\" y=\"0px\"\r\n     viewBox=\"0 0 24 24\" style=\"enable-background:new 0 0 24 24;\" xml:space=\"preserve\">\r\n\r\n<g fill=\"#5E6D77\">\r\n    <path d=\"M12,23.25C5.797,23.25,0.75,18.203,0.75,12C0.75,5.797,5.797,0.75,12,0.75c6.203,0,11.25,5.047,11.25,11.25\r\n        C23.25,18.203,18.203,23.25,12,23.25z M12,2.25c-5.376,0-9.75,4.374-9.75,9.75s4.374,9.75,9.75,9.75s9.75-4.374,9.75-9.75\r\n        S17.376,2.25,12,2.25z\"\/>\r\n    <path d=\"M15.75,16.5c-0.2,0-0.389-0.078-0.53-0.22l-2.25-2.25c-0.302,0.145-0.632,0.22-0.969,0.22c-1.241,0-2.25-1.009-2.25-2.25\r\n        c0-0.96,0.615-1.808,1.5-2.121V5.25c0-0.414,0.336-0.75,0.75-0.75s0.75,0.336,0.75,0.75v4.629c0.885,0.314,1.5,1.162,1.5,2.121\r\n        c0,0.338-0.075,0.668-0.22,0.969l2.25,2.25c0.292,0.292,0.292,0.768,0,1.061C16.139,16.422,15.95,16.5,15.75,16.5z M12,11.25\r\n        c-0.414,0-0.75,0.336-0.75,0.75s0.336,0.75,0.75,0.75s0.75-0.336,0.75-0.75S12.414,11.25,12,11.25z\"\/>\r\n<\/g>\r\n<\/svg><\/i>2 jours 1 nuit<span class=\"unit-from\"> &middot; depuis Khao Lak<\/span><\/span>\n                <\/div>\n            <\/div>\n        <\/div>\n                        <div class=\"reviews\">\n            <i class=\"stt-icon-star1\"><\/i>\n            <span class=\"rate\">4.9<\/span>\n            <span class=\"summary\">\n                (7 Avis)\n            <\/span>\n        <\/div>\n            <\/div>\n<\/div>\n<\/div><\/div><div class=\"swiper-pagination\"><\/div><div class=\"st-button-prev\"><span class=\"stt-icon stt-icon-arrow-left\"><\/span><\/div><div class=\"st-button-next\"><span class=\"stt-icon stt-icon-arrow-right\"><\/span><\/div><\/div>    <\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4a50c43 elementor-align-center elementor-widget elementor-widget-button\" data-id=\"4a50c43\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm elementor-animation-grow\" href=\"https:\/\/www.khaolaklanddiscovery.com\/fr\/excursions-khao-lak\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">VIEW ALL OUR TOURS<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-53084d8 e-con e-atomic-element e-div-block-base \" data-id=\"53084d8\" data-element_type=\"e-div-block\" data-e-type=\"e-div-block\" data-interaction-id=\"53084d8\" data-e-type=\"e-div-block\" data-id=\"53084d8\">\n    \t\t<div class=\"elementor-element elementor-element-973e6dd elementor-widget elementor-widget-html\" data-id=\"973e6dd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<section class=\"klld-tmap klld-tmap--band\" id=\"klld-home-tmap\" data-tmap>\n  <div class=\"tm-inner\">\n\n    <header class=\"tm-head\" data-r=\"1\">\n      <div class=\"tm-eyebrow\"><span class=\"idx\">01 \/ 01<\/span> Transferts routiers priv\u00e9s \u00b7 c\u00f4te d&#039;Andaman<\/div>\n      <h2>Choisissez une destination \u2014 <em>consultez le tarif<\/em>, <span class=\"mk\">puis roulez.<\/span><\/h2>\n      <p>Un chauffeur, une voiture, de porte \u00e0 porte depuis notre d\u00e9p\u00f4t de Khao Lak jusqu&#039;\u00e0 chaque recoin de la c\u00f4te d&#039;Andaman. Touchez un point sur la carte pour une estimation en direct, puis r\u00e9servez un devis exact.<\/p>\n    <\/header>\n\n    <div class=\"tm-grid\">\n\n      <!-- MAP STAGE -->\n      <div class=\"tm-stage\" data-r=\"2\">\n        <div class=\"coordbar\">\n          <span>N 10\u00b012\u2032 \u00b7 S 7\u00b030\u2032 \u00b7 E 100\u00b012\u2032 \u00b7 W 98\u00b000\u2032<\/span>\n          <span class=\"live\"><span class=\"pip\"><\/span>diesel en direct \u00b7 \u0e3f36.69\/L<\/span>\n        <\/div>\n\n        <figure class=\"tm-plate\" id=\"klld-home-tmap-plate\">\n          <img id=\"klld-home-tmap-plateImg\" src=\"\/wp-content\/uploads\/2022\/07\/Khao-Lak-Taxi-and-Transfer-1.jpg\" alt=\"Voiture de transfert priv\u00e9 Khao Lak Land Discovery pour la prise en charge \u00e0 l&#039;a\u00e9roport international de Phuket\" loading=\"lazy\" decoding=\"async\" title=\"-\">\n          <figcaption class=\"pcap\" id=\"klld-home-tmap-plateCap\">a\u00e9roport de Phuket<\/figcaption>\n        <\/figure>\n\n        <svg class=\"map\" viewBox=\"0 0 600 560\" preserveAspectRatio=\"xMidYMid slice\"\n             aria-label=\"Carte stylis\u00e9e de la c\u00f4te d&#039;Andaman montrant les itin\u00e9raires de transfert de Khao Lak\" role=\"img\">\n          <g stroke=\"rgba(160,220,180,.10)\" fill=\"none\" stroke-width=\"1\">\n            <path d=\"M40 470 C160 430 210 330 330 312 C450 294 540 214 600 196\"\/>\n            <path d=\"M20 420 C140 382 178 280 300 258 C420 236 510 162 600 140\"\/>\n            <path d=\"M0 360 C120 322 152 218 274 196 C394 174 488 100 600 80\"\/>\n          <\/g>\n          <path class=\"coast inland\" d=\"M250 -20 L600 -20 L600 580 L300 580 C300 520 330 470 320 420 C312 380 280 360 286 320 C292 280 330 268 322 226 C316 190 282 178 290 138 C296 104 268 86 272 50 C275 22 258 4 250 -20 Z\"\/>\n          <path class=\"coast\" d=\"M150 250 c-12 -6 -28 2 -30 16 c-2 14 12 24 26 22 c16 -2 24 -18 18 -30 c-3 -6 -8 -6 -14 -8 Z\"\/>\n          <path class=\"coast\" d=\"M110 410 c-10 -4 -22 2 -22 12 c0 12 12 18 22 16 c12 -2 16 -14 12 -22 c-3 -4 -7 -4 -12 -6 Z\"\/>\n          <path class=\"coast\" d=\"M196 150 c-8 -4 -18 0 -20 9 c-2 10 7 17 16 16 c10 -1 15 -10 11 -18 c-2 -4 -4 -5 -7 -7 Z\"\/>\n          <g class=\"filaments\"><\/g>\n          <path class=\"routeLine routeline\" d=\"\"><\/path>\n          <g class=\"nodes\"><\/g>\n          <g class=\"pins\"><\/g>\n        <\/svg>\n\n        <div class=\"stage-grain\"><\/div>\n        <div class=\"tm-rail\" role=\"tablist\" aria-label=\"Destinations populaires\"><\/div>\n      <\/div>\n\n      <!-- RECKONER CARD -->\n      <div class=\"tm-card\" data-r=\"3\">\n        <h3>Estimation rapide du tarif<\/h3>\n\n        <div class=\"tm-jwrap\">\n          <button type=\"button\" class=\"tm-swap\" title=\"Inverser prise en charge et d\u00e9pose\" aria-label=\"Inverser prise en charge et d\u00e9pose\">\n            <svg width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M7 4v16\"\/><path d=\"m3 8 4-4 4 4\"\/><path d=\"M17 20V4\"\/><path d=\"m21 16-4 4-4-4\"\/><\/svg>\n          <\/button>\n          <div class=\"tm-journey\">\n            <div class=\"jrow from\">\n              <div class=\"fieldset focused\">\n                <label>Prise en charge<\/label>\n                <select class=\"tm-from\" aria-label=\"Point de prise en charge\"><\/select>\n                <svg class=\"chev\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"m6 9 6 6 6-6\"\/><\/svg>\n                <span class=\"underline\"><\/span>\n              <\/div>\n            <\/div>\n            <div class=\"jrow to\" style=\"margin-top:8px;\">\n              <div class=\"fieldset\">\n                <label>D\u00e9pose<\/label>\n                <select class=\"tm-to\" aria-label=\"Point de d\u00e9pose\"><\/select>\n                <svg class=\"chev\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"m6 9 6 6 6-6\"\/><\/svg>\n                <span class=\"underline\"><\/span>\n              <\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n\n        <div class=\"tm-seg\" role=\"tablist\">\n          <button type=\"button\" role=\"tab\" aria-selected=\"true\" data-rt=\"0\">Aller simple<\/button>\n          <button type=\"button\" role=\"tab\" aria-selected=\"false\" data-rt=\"1\">Aller-retour<span class=\"save\">\u221210%<\/span><\/button>\n        <\/div>\n\n        <div class=\"tm-fare\">\n          <div>\n            <span class=\"from-tag\">\u00c0 partir de<\/span>\n            <div class=\"amt\"><small>\u0e3f<\/small><span class=\"tm-price\">1,800<\/span><\/div>\n          <\/div>\n          <div class=\"note tm-note\">Aller simple \u00b7 tout compris<br>chauffeur \u00b7 p\u00e9ages \u00b7 eau<\/div>\n        <\/div>\n\n        <div class=\"tm-stats\">\n          <div class=\"s\"><div class=\"k\">Distance<\/div><div class=\"v\"><span class=\"tm-dist\">73<\/span> <small>km<\/small><\/div><\/div>\n          <div class=\"s\"><div class=\"k\">Temps de trajet<\/div><div class=\"v tm-dur\">1h 20m<\/div><\/div>\n          <div class=\"s\"><div class=\"k\">Diesel (est.)<\/div><div class=\"v\"><small>\u0e3f<\/small><span class=\"tm-diesel\">324<\/span><\/div><\/div>\n        <\/div>\n\n        <div class=\"tm-actions\">\n          <a class=\"tm-btn tm-btn-primary tm-cta\" href=\"https:\/\/www.khaolaklanddiscovery.com\/fr\/khao-lak-transfer\/\">Obtenir un devis exact et r\u00e9server <svg class=\"arr\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M5 12h14\"\/><path d=\"m13 6 6 6-6 6\"\/><\/svg><\/a>\n          <a class=\"tm-btn tm-btn-ghost\" href=\"https:\/\/www.khaolaklanddiscovery.com\/fr\/khao-lak-transfer\/\">Voir tous les itin\u00e9raires et la carte tarifaire compl\u00e8te<\/a>\n        <\/div>\n      <\/div>\n\n    <\/div>\n\n    <div class=\"tm-trust\" data-r=\"4\">\n      <span class=\"t\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M20 6 9 17l-5-5\"\/><\/svg> Chauffeur anglophone<\/span>\n      <span class=\"t\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M20 6 9 17l-5-5\"\/><\/svg> Annulation gratuite \u00b7 48h<\/span>\n      <span class=\"t\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M20 6 9 17l-5-5\"\/><\/svg> Suivi des vols<\/span>\n      <span class=\"t\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M20 6 9 17l-5-5\"\/><\/svg> Licence TAT \u00b7 41\/00132<\/span>\n    <\/div>\n\n  <\/div>\n<\/section>\n\n<style id=\"klld-home-tmap-css\">\n\/* === transfer-map-2026 \"Andaman Dispatch\" \u2014 scoped to .klld-tmap === *\/\n.klld-tmap{\n  --tm-green:#099024; --tm-green-deep:#067a1d; --tm-green-lo:#12b836; --tm-green-soft:#dff0e2;\n  --tm-sun:#ffcc00; --tm-gold:#c79100; --tm-sun-soft:rgba(255,204,0,.16);\n  --tm-coral:#e0603a; --tm-coral-deep:#c64a27;\n  --tm-ink:#16201b; --tm-ink2:#2c3a31; --tm-ink3:#54605a; --tm-ink4:#8a948d;\n  --tm-paper:#f6f6f2; --tm-surface:#ffffff;\n  --tm-line:rgba(22,32,27,.12); --tm-line2:rgba(22,32,27,.20);\n  --tm-r-md:12px; --tm-r-lg:18px; --tm-r-xl:24px; --tm-r-pill:999px;\n  --tm-shadow-sm:0 2px 8px -3px rgba(16,32,22,.16);\n  --tm-shadow-md:0 14px 34px -18px rgba(16,32,22,.28),0 3px 8px -4px rgba(16,32,22,.10);\n  --tm-shadow-lg:0 40px 80px -40px rgba(12,40,22,.42),0 12px 28px -16px rgba(16,32,22,.12);\n  --tm-disp:\"Fraunces\",Georgia,serif; --tm-body:\"Hanken Grotesk\",system-ui,sans-serif;\n  --tm-mono:\"JetBrains Mono\",ui-monospace,monospace;\n  --tm-ease:cubic-bezier(.22,1,.36,1); --tm-ease-out:cubic-bezier(.16,1,.3,1);\n  position:relative; font-family:var(--tm-body); color:var(--tm-ink); line-height:1.55;\n  box-sizing:border-box;\n}\n.klld-tmap *,.klld-tmap *::before,.klld-tmap *::after{ box-sizing:border-box; }\n.klld-tmap.klld-tmap--band{ padding:clamp(48px,6vw,92px) 0; }\n.klld-tmap .tm-inner{ max-width:1200px; margin:0 auto; padding:0 clamp(16px,4vw,40px); }\n.klld-tmap.klld-tmap--card .tm-inner{ padding:0; max-width:none; }\n\n.klld-tmap .tm-head{ max-width:780px; }\n.klld-tmap .tm-eyebrow{ display:inline-flex; align-items:center; gap:11px; font-family:var(--tm-mono); font-size:11px; letter-spacing:.24em; text-transform:uppercase; color:var(--tm-green-deep); }\n.klld-tmap .tm-eyebrow::before{ content:\"\"; width:30px; height:1px; background:var(--tm-green); opacity:.6; }\n.klld-tmap .tm-eyebrow .idx{ color:var(--tm-ink4); }\n.klld-tmap .tm-head h2{ font-family:var(--tm-disp); font-weight:600; font-variation-settings:\"opsz\" 120; font-size:clamp(2rem,4.6vw,3.4rem); line-height:1.03; letter-spacing:-.02em; margin:.42em 0 .28em; text-wrap:balance; color:var(--tm-ink); }\n.klld-tmap .tm-head h2 em{ font-style:italic; font-weight:500; color:var(--tm-gold); }\n.klld-tmap .tm-head h2 .mk{ background:linear-gradient(180deg,transparent 64%,var(--tm-sun-soft) 64%); padding:0 .04em; }\n.klld-tmap .tm-head p{ font-size:clamp(1rem,1.4vw,1.1rem); color:var(--tm-ink3); max-width:56ch; }\n\n.klld-tmap .tm-grid{ display:grid; grid-template-columns:1.16fr .84fr; gap:clamp(18px,2.4vw,34px); margin-top:clamp(28px,4vw,50px); align-items:stretch; }\n@media(max-width:960px){ .klld-tmap .tm-grid{ grid-template-columns:1fr; } }\n\n.klld-tmap .tm-stage{ position:relative; border-radius:var(--tm-r-xl); overflow:hidden; background:linear-gradient(160deg,#0c2a24 0%,#103a30 48%,#0a241f 100%); border:1px solid rgba(255,255,255,.06); box-shadow:var(--tm-shadow-lg); min-height:520px; display:flex; flex-direction:column; }\n@media(max-width:960px){ .klld-tmap .tm-stage{ min-height:420px; } }\n.klld-tmap .tm-stage::before{ content:\"\"; position:absolute; inset:0; z-index:0; pointer-events:none; opacity:.5; background:radial-gradient(80% 60% at 30% 26%,rgba(9,144,36,.16),transparent 60%),radial-gradient(70% 70% at 86% 84%,rgba(255,204,0,.06),transparent 60%); }\n.klld-tmap .tm-stage svg.map{ position:absolute; inset:0; width:100%; height:100%; z-index:1; }\n.klld-tmap .stage-grain{ position:absolute; inset:0; z-index:2; pointer-events:none; opacity:.5; mix-blend-mode:overlay; background-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'\/%3E%3C\/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'\/%3E%3C\/svg%3E\"); }\n.klld-tmap .coordbar{ position:absolute; top:0; left:0; right:0; z-index:6; display:flex; justify-content:space-between; gap:10px; flex-wrap:wrap; padding:16px 18px; font-family:var(--tm-mono); font-size:10px; letter-spacing:.16em; text-transform:uppercase; color:rgba(223,240,226,.66); }\n.klld-tmap .coordbar .live{ display:inline-flex; align-items:center; gap:7px; color:#cfe9d4; }\n.klld-tmap .coordbar .pip{ width:6px; height:6px; border-radius:50%; background:var(--tm-green-lo); animation:tm-pip 2.4s var(--tm-ease) infinite; }\n@keyframes tm-pip{ 0%{box-shadow:0 0 0 0 rgba(18,184,54,.45)} 70%,100%{box-shadow:0 0 0 7px rgba(18,184,54,0)} }\n\n.klld-tmap .tm-rail{ position:absolute; left:0; right:0; bottom:0; z-index:6; display:flex; gap:8px; overflow-x:auto; padding:14px 16px 16px; background:linear-gradient(0deg,rgba(8,28,22,.86),rgba(8,28,22,0)); scrollbar-width:none; }\n.klld-tmap .tm-rail::-webkit-scrollbar{ display:none; }\n.klld-tmap .tm-dest{ flex:0 0 auto; cursor:pointer; border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.06); color:#eafaee; border-radius:var(--tm-r-pill); padding:7px 14px; font-family:var(--tm-mono); font-size:11px; letter-spacing:.05em; display:inline-flex; align-items:center; gap:8px; white-space:nowrap; transition:background .2s var(--tm-ease),border-color .2s,transform .15s,color .2s; }\n.klld-tmap .tm-dest:hover{ background:rgba(255,255,255,.12); transform:translateY(-1px); }\n.klld-tmap .tm-dest .px{ font-weight:700; color:var(--tm-sun); }\n.klld-tmap .tm-dest[aria-pressed=true]{ background:var(--tm-sun); border-color:var(--tm-sun); color:var(--tm-ink); }\n.klld-tmap .tm-dest[aria-pressed=true] .px{ color:var(--tm-coral-deep); }\n\n.klld-tmap .tm-plate{ position:absolute; top:46px; right:16px; z-index:5; width:min(232px,42%); border-radius:var(--tm-r-md); overflow:hidden; border:1px solid rgba(255,255,255,.16); box-shadow:0 16px 34px -16px rgba(0,0,0,.6); background:#0a241f; margin:0; }\n@media(max-width:560px){ .klld-tmap .tm-plate{ display:none; } }\n.klld-tmap .tm-plate img{ display:block; width:100%; height:128px; object-fit:cover; filter:saturate(1.02) contrast(1.03); transition:opacity .4s var(--tm-ease); }\n.klld-tmap .tm-plate .pcap{ position:absolute; left:0; right:0; bottom:0; padding:9px 11px; background:linear-gradient(0deg,rgba(8,28,22,.92),transparent); color:#eafaee; font-family:var(--tm-disp); font-style:italic; font-weight:500; font-size:.96rem; line-height:1.15; }\n\n.klld-tmap .coast{ fill:#0f352c; stroke:rgba(160,220,180,.20); stroke-width:1; }\n.klld-tmap .coast.inland{ fill:#0d2f27; }\n.klld-tmap .filament{ fill:none; stroke:rgba(223,240,226,.18); stroke-width:1.4; stroke-dasharray:3 6; }\n.klld-tmap .routeline{ fill:none; stroke:var(--tm-sun); stroke-width:3; stroke-linecap:round; filter:drop-shadow(0 0 6px rgba(255,204,0,.5)); }\n.klld-tmap .node{ cursor:pointer; }\n.klld-tmap .node .ring{ fill:rgba(9,144,36,0); stroke:rgba(223,240,226,.4); stroke-width:1.2; transition:stroke .2s,r .2s; }\n.klld-tmap .node .dot{ fill:#dff0e2; transition:fill .2s,r .2s; }\n.klld-tmap .node:hover .ring,.klld-tmap .node[data-active=true] .ring{ stroke:var(--tm-sun); }\n.klld-tmap .node:hover .dot{ fill:var(--tm-sun); }\n.klld-tmap .node[data-active=true] .dot{ fill:var(--tm-sun); r:6; }\n.klld-tmap .node .lbl{ font-family:var(--tm-mono); font-size:10px; letter-spacing:.04em; fill:rgba(223,240,226,.82); pointer-events:none; }\n.klld-tmap .node[data-active=true] .lbl{ fill:var(--tm-sun); }\n.klld-tmap .depot .dot{ fill:var(--tm-green-lo); }\n.klld-tmap .depot .ring{ stroke:var(--tm-green-lo); }\n.klld-tmap .depot .lbl{ fill:#bff0c8; font-weight:700; }\n.klld-tmap .routeline.draw{ stroke-dasharray:var(--len); stroke-dashoffset:var(--len); animation:tm-draw 1.1s var(--tm-ease-out) forwards; }\n@keyframes tm-draw{ to{ stroke-dashoffset:0; } }\n\n.klld-tmap .tm-card{ position:relative; background:var(--tm-surface); border:1px solid var(--tm-line); border-radius:var(--tm-r-xl); box-shadow:var(--tm-shadow-md); overflow:hidden; display:flex; flex-direction:column; padding:clamp(22px,2.4vw,30px); }\n.klld-tmap .tm-card::before{ content:\"\"; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--tm-green) 0%,var(--tm-green) 40%,var(--tm-sun) 100%); }\n.klld-tmap .tm-card h3{ font-family:var(--tm-mono); font-size:11px; letter-spacing:.2em; text-transform:uppercase; color:var(--tm-ink4); margin-bottom:20px; }\n\n.klld-tmap .tm-journey{ position:relative; padding-left:30px; }\n.klld-tmap .tm-journey::before{ content:\"\"; position:absolute; left:5px; top:24px; bottom:24px; width:2px; background:linear-gradient(var(--tm-green),var(--tm-coral)); border-radius:2px; transform:scaleY(0); transform-origin:top; animation:tm-spine 1s var(--tm-ease-out) .4s forwards; }\n@keyframes tm-spine{ to{ transform:scaleY(1); } }\n.klld-tmap .jrow{ position:relative; }\n.klld-tmap .jrow::before{ content:\"\"; position:absolute; left:-30px; top:23px; width:12px; height:12px; border-radius:50%; background:var(--tm-surface); border:2.5px solid var(--tm-green); transform:translateY(-50%); }\n.klld-tmap .jrow.to::before{ border-color:var(--tm-coral); }\n.klld-tmap .fieldset{ position:relative; padding:11px 0; border-bottom:1px solid var(--tm-line); transition:border-color .2s var(--tm-ease); }\n.klld-tmap .fieldset.focused{ border-bottom-color:var(--tm-green); }\n.klld-tmap .fieldset > label{ display:block; font-family:var(--tm-mono); font-size:10px; letter-spacing:.16em; text-transform:uppercase; color:var(--tm-ink4); margin-bottom:3px; transition:color .2s; }\n.klld-tmap .fieldset.focused > label{ color:var(--tm-green); }\n.klld-tmap .fieldset select{ width:100%; border:0; outline:0; background:transparent; appearance:none; -webkit-appearance:none; cursor:pointer; font-family:var(--tm-body); font-size:16px; font-weight:600; color:var(--tm-ink); padding:1px 24px 1px 0; letter-spacing:-.01em; }\n.klld-tmap .fieldset .chev{ position:absolute; right:0; bottom:14px; width:14px; height:14px; pointer-events:none; opacity:.5; color:var(--tm-ink3); }\n.klld-tmap .fieldset .underline{ position:absolute; left:0; right:0; bottom:-1px; height:2px; background:var(--tm-green); transform:scaleX(0); transform-origin:left; transition:transform .3s var(--tm-ease); }\n.klld-tmap .fieldset.focused .underline{ transform:scaleX(1); }\n.klld-tmap .tm-swap{ position:absolute; right:0; top:50%; transform:translateY(-50%); z-index:3; width:38px; height:38px; border-radius:50%; background:var(--tm-surface); border:1px solid var(--tm-line2); color:var(--tm-ink2); cursor:pointer; display:grid; place-items:center; box-shadow:var(--tm-shadow-sm); transition:transform .4s var(--tm-ease),border-color .2s,color .2s; }\n.klld-tmap .tm-swap:hover{ transform:translateY(-50%) rotate(180deg); border-color:var(--tm-green); color:var(--tm-green); }\n.klld-tmap .tm-jwrap{ position:relative; }\n\n.klld-tmap .tm-seg{ display:inline-flex; background:var(--tm-paper); border:1px solid var(--tm-line); border-radius:var(--tm-r-pill); padding:3px; margin-top:22px; }\n.klld-tmap .tm-seg button{ font-family:var(--tm-body); font-size:13px; font-weight:600; color:var(--tm-ink3); background:transparent; border:0; border-radius:var(--tm-r-pill); padding:8px 18px; cursor:pointer; transition:.25s var(--tm-ease); }\n.klld-tmap .tm-seg button[aria-selected=true]{ background:var(--tm-surface); color:var(--tm-ink); box-shadow:var(--tm-shadow-sm); }\n.klld-tmap .tm-seg .save{ font-family:var(--tm-mono); font-size:10px; color:var(--tm-green); margin-left:5px; }\n\n.klld-tmap .tm-fare{ display:flex; align-items:flex-end; justify-content:space-between; margin-top:26px; padding-top:22px; border-top:1px solid var(--tm-line); }\n.klld-tmap .tm-fare .from-tag{ font-family:var(--tm-mono); font-size:10px; letter-spacing:.12em; text-transform:uppercase; color:var(--tm-gold); display:block; margin-bottom:3px; }\n\/* KLLD CARD FAMILY 2026 \u00b7 brand-green Fraunces fare \u2014 unified \u0e3f-price colour\n   across the tour .tcard (green) + rental .eds-rate (green) product cards. *\/\n.klld-tmap .tm-fare .amt{ font-family:var(--tm-disp); font-weight:600; font-variation-settings:\"opsz\" 120; font-size:clamp(2.5rem,5.6vw,3.4rem); line-height:.86; letter-spacing:-.03em; color:var(--tm-green); font-variant-numeric:tabular-nums; }\n.klld-tmap .tm-fare .amt small{ font-size:.42em; font-weight:500; color:var(--tm-ink3); font-family:var(--tm-mono); margin-right:3px; vertical-align:.55em; }\n.klld-tmap .tm-fare .note{ font-family:var(--tm-mono); font-size:10px; line-height:1.5; color:var(--tm-ink4); text-align:right; }\n.klld-tmap .tm-stats{ display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin-top:18px; border:1px solid var(--tm-line); border-radius:var(--tm-r-md); overflow:hidden; }\n.klld-tmap .tm-stats .s{ padding:11px 13px; }\n.klld-tmap .tm-stats .s+.s{ border-left:1px solid var(--tm-line); }\n.klld-tmap .tm-stats .k{ font-family:var(--tm-mono); font-size:9px; letter-spacing:.14em; text-transform:uppercase; color:var(--tm-ink4); }\n.klld-tmap .tm-stats .v{ font-weight:600; font-size:17px; color:var(--tm-ink); font-variant-numeric:tabular-nums; margin-top:3px; letter-spacing:-.01em; }\n.klld-tmap .tm-stats .v small{ font-size:11px; font-weight:500; color:var(--tm-ink3); font-family:var(--tm-mono); }\n\n.klld-tmap .tm-actions{ display:grid; gap:9px; margin-top:20px; }\n.klld-tmap .tm-btn{ font-family:var(--tm-body); font-weight:700; cursor:pointer; border-radius:var(--tm-r-md); transition:transform .18s var(--tm-ease),box-shadow .18s,background .18s,color .18s; display:flex; align-items:center; justify-content:center; gap:8px; position:relative; overflow:hidden; text-decoration:none; }\n.klld-tmap .tm-btn-primary{ background:var(--tm-sun); color:var(--tm-ink); border:1px solid rgba(255,204,0,.5); font-size:15.5px; padding:15px 20px; box-shadow:0 10px 24px -10px rgba(255,204,0,.66); }\n.klld-tmap .tm-btn-primary::after{ content:\"\"; position:absolute; top:0; left:-60%; width:40%; height:100%; background:linear-gradient(100deg,transparent,rgba(255,255,255,.6),transparent); transform:skewX(-18deg); transition:left .6s var(--tm-ease); }\n.klld-tmap .tm-btn-primary:hover{ transform:translateY(-2px); box-shadow:0 16px 32px -10px rgba(255,204,0,.78); }\n.klld-tmap .tm-btn-primary:hover::after{ left:120%; }\n.klld-tmap .tm-btn-primary .arr{ transition:transform .2s var(--tm-ease); display:inline-block; }\n.klld-tmap .tm-btn-primary:hover .arr{ transform:translateX(4px); }\n.klld-tmap .tm-btn-ghost{ background:transparent; color:var(--tm-ink2); border:1px solid var(--tm-line2); font-size:13px; padding:12px 18px; }\n.klld-tmap .tm-btn-ghost:hover{ border-color:var(--tm-green); color:var(--tm-green-deep); background:var(--tm-green-soft); }\n\n.klld-tmap .tm-trust{ display:flex; flex-wrap:wrap; gap:18px 26px; margin-top:clamp(22px,3vw,36px); }\n.klld-tmap .tm-trust .t{ display:inline-flex; align-items:center; gap:9px; font-size:13.5px; color:var(--tm-ink3); font-weight:500; }\n.klld-tmap .tm-trust .t svg{ width:17px; height:17px; color:var(--tm-green); flex:0 0 auto; }\n\n@keyframes tm-rise{ from{ opacity:0; transform:translateY(20px) } to{ opacity:1; transform:none } }\n.klld-tmap [data-r]{ opacity:0; animation:tm-rise .8s var(--tm-ease-out) forwards; }\n.klld-tmap [data-r=\"1\"]{ animation-delay:.04s } .klld-tmap [data-r=\"2\"]{ animation-delay:.14s }\n.klld-tmap [data-r=\"3\"]{ animation-delay:.26s } .klld-tmap [data-r=\"4\"]{ animation-delay:.42s }\n@media(prefers-reduced-motion:reduce){\n  .klld-tmap *,.klld-tmap *::before,.klld-tmap *::after{ animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important }\n  .klld-tmap [data-r]{ opacity:1!important; transform:none!important }\n  .klld-tmap .routeline.draw{ stroke-dashoffset:0!important }\n}\n<\/style>\n\n<script>\n(function(){\n  var root = document.getElementById(\"klld-home-tmap\");\n  if(!root || root.dataset.tmapInit) return;\n  root.dataset.tmapInit = \"1\";\n\n  var P = {\"kl\":{\"name\":\"Khao Lak (d\\u00e9p\\u00f4t)\",\"x\":208,\"y\":250,\"km\":0,\"pin\":0,\"img\":\"\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/khao-lak-south-beach-2.jpg\",\"alt\":\"La plage sud de Khao Lak sur la c\\u00f4te d'Andaman \\u2014 le d\\u00e9p\\u00f4t de Khao Lak Land Discovery\"},\"hkt\":{\"name\":\"a\\u00e9roport de Phuket\",\"x\":158,\"y\":430,\"km\":73,\"pin\":1800,\"img\":\"\\\/wp-content\\\/uploads\\\/2022\\\/07\\\/Khao-Lak-Taxi-and-Transfer-1.jpg\",\"alt\":\"Voiture de transfert priv\\u00e9 Khao Lak Land Discovery pour la prise en charge \\u00e0 l'a\\u00e9roport international de Phuket\"},\"ks\":{\"name\":\"Khao Sok\",\"x\":300,\"y\":196,\"km\":75,\"pin\":2500,\"img\":\"\\\/wp-content\\\/uploads\\\/2022\\\/10\\\/Khao-sok-jungle-trekking.jpg\",\"alt\":\"Sentier de trekking en for\\u00eat tropicale dans le parc national de Khao Sok\"},\"kbi\":{\"name\":\"Krabi \\u00b7 Ao Nang\",\"x\":340,\"y\":432,\"km\":160,\"pin\":3800,\"img\":\"\\\/wp-content\\\/uploads\\\/2024\\\/07\\\/4-islands-tour-krabi.jpg\",\"alt\":\"Les \\u00eeles Andaman de Krabi pr\\u00e8s d'Ao Nang\"},\"cl\":{\"name\":\"Cheow Lan Lake\",\"x\":392,\"y\":168,\"km\":140,\"pin\":4200,\"img\":\"\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/cheow-lan-lake-by-longtail-boat-1.jpg\",\"alt\":\"Le lac Cheow Lan en bateau \\u00e0 longue queue au barrage de Ratchaprapa\"},\"png\":{\"name\":\"Baie de Phang Nga\",\"x\":300,\"y\":300,\"km\":62,\"pin\":1800,\"img\":\"\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/panak-island-phang-nga-bay-1.jpg\",\"alt\":\"Pitons calcaires s'\\u00e9levant de la baie de Phang Nga\"},\"pt\":{\"name\":\"vieille ville de Phuket\",\"x\":196,\"y\":500,\"km\":102,\"pin\":2700,\"img\":\"\\\/wp-content\\\/uploads\\\/2023\\\/01\\\/phuket-old-town.jpg\",\"alt\":\"Boutiques-maisons sino-portugaises de la vieille ville de Phuket\"},\"pat\":{\"name\":\"Patong Beach\",\"x\":150,\"y\":494,\"km\":118,\"pin\":3300,\"img\":\"\\\/wp-content\\\/uploads\\\/2023\\\/01\\\/patong-beach.jpg\",\"alt\":\"Patong Beach sur la c\\u00f4te ouest de Phuket\"},\"sni\":{\"name\":\"Surat Thani\",\"x\":430,\"y\":120,\"km\":180,\"pin\":4600,\"img\":\"\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/Ratchaprapha-Damn-Cheow-Lan-Lake.jpg\",\"alt\":\"Le barrage de Ratchaprapha et son r\\u00e9servoir dans la province de Surat Thani\"}};\n  var DEST = [\"hkt\",\"ks\",\"kbi\",\"cl\",\"png\",\"pt\",\"pat\",\"sni\"];\n  var DEPOT = \"kl\";\n  var reduce = matchMedia('(prefers-reduced-motion: reduce)').matches;\n\n  \/* Smart Engine v19.0 (verbatim \u2014 do NOT alter) *\/\n  function oneway(km){ return Math.round((400 + km*22)\/100)*100; }\n  function fareFor(km, rt){ var ow = oneway(km); return rt ? Math.round(ow*2*0.9\/100)*100 : ow; }\n  function headline(id){ var p = P[id]; return (p && p.pin) ? p.pin : oneway(p?p.km:0); }\n  function fareDepot(id, rt){ var ow = headline(id); return rt ? Math.round(ow*2*0.9\/100)*100 : ow; }\n  function dieselFor(km){ return Math.round((km\/9)*39.95); }\n  function driveFor(km){ var m = Math.round(km\/62*60*1.05); return m>=60 ? Math.floor(m\/60)+'h '+(m%60)+'m' : m+'m'; }\n  function fmt(n){ return n.toLocaleString(); }\n  var NS = \"http:\/\/www.w3.org\/2000\/svg\";\n\n  var nodesG = root.querySelector('.nodes'),\n      filG   = root.querySelector('.filaments'),\n      routeLine = root.querySelector('.routeLine'),\n      pinsG  = root.querySelector('.pins'),\n      fromSel = root.querySelector('.tm-from'),\n      toSel   = root.querySelector('.tm-to'),\n      rail    = root.querySelector('.tm-rail'),\n      priceEl = root.querySelector('.tm-price'),\n      distEl  = root.querySelector('.tm-dist'),\n      durEl   = root.querySelector('.tm-dur'),\n      dieselEl= root.querySelector('.tm-diesel'),\n      noteEl  = root.querySelector('.tm-note'),\n      ctaEl   = root.querySelector('.tm-cta'),\n      plateImg= document.getElementById(\"klld-home-tmap-plateImg\"),\n      plateCap= document.getElementById(\"klld-home-tmap-plateCap\");\n\n  var d = P[DEPOT];\n\n  DEST.forEach(function(id){\n    var t = P[id], p = document.createElementNS(NS,'path');\n    p.setAttribute('class','filament');\n    p.setAttribute('d','M'+d.x+' '+d.y+' L'+t.x+' '+t.y);\n    filG.appendChild(p);\n  });\n\n  function makeNode(id, isDepot){\n    var t = P[id], g = document.createElementNS(NS,'g');\n    g.setAttribute('class','node'+(isDepot?' depot':''));\n    g.setAttribute('data-id', id); g.setAttribute('tabindex','0');\n    g.setAttribute('role','button'); g.setAttribute('aria-label', t.name);\n    var ring = document.createElementNS(NS,'circle');\n    ring.setAttribute('class','ring'); ring.setAttribute('cx',t.x); ring.setAttribute('cy',t.y); ring.setAttribute('r', isDepot?12:9);\n    var dot = document.createElementNS(NS,'circle');\n    dot.setAttribute('class','dot'); dot.setAttribute('cx',t.x); dot.setAttribute('cy',t.y); dot.setAttribute('r', isDepot?5:4);\n    var lbl = document.createElementNS(NS,'text'); lbl.setAttribute('class','lbl');\n    var anchor = t.x > 470 ? 'end' : 'start';\n    lbl.setAttribute('text-anchor', anchor);\n    lbl.setAttribute('x', anchor==='end' ? t.x-16 : t.x+16);\n    lbl.setAttribute('y', t.y+4);\n    lbl.textContent = t.name.replace(' (depot)','');\n    g.appendChild(ring); g.appendChild(dot); g.appendChild(lbl);\n    if(!isDepot){\n      g.addEventListener('click', function(){ select(id); });\n      g.addEventListener('keydown', function(e){ if(e.key==='Enter'||e.key===' '){ e.preventDefault(); select(id); } });\n    }\n    return g;\n  }\n  nodesG.appendChild(makeNode(DEPOT, true));\n  DEST.forEach(function(id){ nodesG.appendChild(makeNode(id,false)); });\n\n  DEST.forEach(function(id){\n    var t = P[id], b = document.createElement('button');\n    b.type='button'; b.className='tm-dest'; b.setAttribute('data-id', id); b.setAttribute('aria-pressed','false');\n    b.innerHTML = t.name.replace(' \u00b7 Ao Nang','') + ' <span class=\"px\">\u0e3f'+fmt(headline(id))+'<\/span>';\n    b.addEventListener('click', function(){ select(id); });\n    rail.appendChild(b);\n  });\n\n  Object.keys(P).forEach(function(id){\n    fromSel.add(new Option(P[id].name, id));\n    toSel.add(new Option(P[id].name, id));\n  });\n  fromSel.value = DEPOT; toSel.value = \"hkt\";\n\n  function drawPin(t, color, delay){\n    var g = document.createElementNS(NS,'g'), c = document.createElementNS(NS,'circle');\n    c.setAttribute('cx',t.x); c.setAttribute('cy',t.y); c.setAttribute('r',6.5);\n    c.setAttribute('fill',color); c.setAttribute('stroke','#fff'); c.setAttribute('stroke-width','2');\n    g.appendChild(c);\n    if(!reduce){ g.style.opacity='0'; g.style.transition='opacity .4s'; setTimeout(function(){ g.style.opacity='1'; }, delay); }\n    pinsG.appendChild(g);\n  }\n  function pathBetween(a,b){\n    var mx=(a.x+b.x)\/2, my=(a.y+b.y)\/2, dx=b.x-a.x, dy=b.y-a.y, len=Math.hypot(dx,dy)||1;\n    var bow=Math.min(48,len*0.16), cx=mx+(-dy\/len)*bow, cy=my+(dx\/len)*bow;\n    return 'M'+a.x+' '+a.y+' Q'+cx+' '+cy+' '+b.x+' '+b.y;\n  }\n  function countUp(el, to){\n    if(reduce){ el.textContent = fmt(to); return; }\n    var from = parseInt((el.textContent||'0').replace(\/\\D\/g,''))||0;\n    if(from===to){ el.textContent = fmt(to); return; }\n    var t0 = performance.now(), dur=550;\n    (function tick(t){ var k=Math.min(1,(t-t0)\/dur), e=1-Math.pow(1-k,3); el.textContent = fmt(Math.round(from+(to-from)*e)); if(k<1) requestAnimationFrame(tick); })(performance.now());\n  }\n\n  var rt = false;\n  var STR = { oneway:\"Aller simple \\u00b7 tout compris\", round:\"Aller-retour \\u00b7 \\u221210%\", incl:\"chauffeur \\u00b7 p\\u00e9ages \\u00b7 eau\" };\n\n  function render(){\n    var fId = fromSel.value, tId = toSel.value, a = P[fId], b = P[tId];\n    var km, depotEnd = null;\n    if(fId===DEPOT){ km=b.km; depotEnd=tId; }\n    else if(tId===DEPOT){ km=a.km; depotEnd=fId; }\n    else km = Math.round((a.km + b.km) * 0.62);\n    if(km<1) km = 1;\n\n    var price = depotEnd ? fareDepot(depotEnd, rt) : fareFor(km, rt);\n    countUp(priceEl, price);\n    distEl.textContent = km;\n    durEl.textContent = driveFor(km);\n    dieselEl.textContent = dieselFor(km);\n    noteEl.innerHTML = (rt?STR.round:STR.oneway)+'<br>'+STR.incl;\n\n    var showId = (tId!==DEPOT) ? tId : (fId!==DEPOT ? fId : \"hkt\");\n    if(plateImg && plateImg.getAttribute('data-id') !== showId){\n      plateImg.setAttribute('data-id', showId);\n      if(plateCap) plateCap.textContent = P[showId].name;\n      var targetSrc = P[showId].img, cur = plateImg.currentSrc || plateImg.src;\n      var tail = targetSrc.split('\/uploads\/')[1] || '';\n      if(cur === targetSrc || (tail && cur.indexOf(tail) !== -1)){\n        plateImg.alt = P[showId].alt; plateImg.style.opacity='1';\n      } else {\n        plateImg.style.opacity = reduce ? '1' : '0';\n        (function(sid){ var im = new Image(); im.onload = function(){ plateImg.src = P[sid].img; plateImg.alt = P[sid].alt; plateImg.style.opacity='1'; }; im.onerror = function(){ plateImg.style.opacity='1'; }; im.src = P[sid].img; })(showId);\n      }\n    }\n\n    root.querySelectorAll('.node').forEach(function(n){ n.setAttribute('data-active', (n.getAttribute('data-id')===fId || n.getAttribute('data-id')===tId) ? 'true':'false'); });\n    root.querySelectorAll('.tm-dest').forEach(function(c){ c.setAttribute('aria-pressed', (c.getAttribute('data-id')===showId)?'true':'false'); });\n\n    routeLine.setAttribute('d', pathBetween(a,b));\n    pinsG.innerHTML = '';\n    if(!reduce && routeLine.getTotalLength){\n      var len = routeLine.getTotalLength();\n      routeLine.style.setProperty('--len', len);\n      routeLine.classList.remove('draw'); void routeLine.getBBox(); routeLine.classList.add('draw');\n    }\n    drawPin(a, '#12b836', 700);\n    drawPin(b, '#e0603a', 980);\n\n    if(ctaEl){\n      var base = ctaEl.getAttribute('data-base') || ctaEl.getAttribute('href').split('?')[0];\n      ctaEl.setAttribute('data-base', base);\n      ctaEl.setAttribute('href', base + '?from='+encodeURIComponent(a.name)+'&to='+encodeURIComponent(b.name));\n    }\n  }\n  function select(id){ fromSel.value = DEPOT; toSel.value = id; render(); }\n\n  fromSel.addEventListener('change', render);\n  toSel.addEventListener('change', render);\n  root.querySelectorAll('.fieldset select').forEach(function(sel){\n    var fs = sel.closest('.fieldset');\n    sel.addEventListener('focus', function(){ fs.classList.add('focused'); });\n    sel.addEventListener('blur', function(){ if(!sel.classList.contains('tm-from')) fs.classList.remove('focused'); });\n  });\n  root.querySelector('.tm-swap').addEventListener('click', function(){ var v=fromSel.value; fromSel.value=toSel.value; toSel.value=v; render(); });\n  var seg = root.querySelector('.tm-seg');\n  seg.querySelectorAll('button').forEach(function(btn){ btn.addEventListener('click', function(){\n    seg.querySelectorAll('button').forEach(function(b){ b.setAttribute('aria-selected','false'); });\n    btn.setAttribute('aria-selected','true');\n    rt = btn.getAttribute('data-rt')==='1';\n    render();\n  }); });\n\n  priceEl.textContent = '0';\n  setTimeout(render, reduce?0:380);\n})();\n<\/script>\n\t\t\t\t\t<\/div>\n\t\t\n<\/div>\n\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Khao Lak Tours &amp; Transfers Licensed Local Operator since 2009 New Available Tours from Khao Lak 2026 Islands trip Phang Nga Bay, Thailand Phang Nga Bay Sunset Serenity Cruise A sunset catamaran cruise into Phang Nga Bay from Khao Lak \u2014 limestone islands turning gold, swimming and dinner served as the light fades. From \u0e3f4,500 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":76649,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-17254","page","type-page","status-publish","has-post-thumbnail","hentry"],"_links":{"self":[{"href":"https:\/\/www.khaolaklanddiscovery.com\/fr\/wp-json\/wp\/v2\/pages\/17254","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.khaolaklanddiscovery.com\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.khaolaklanddiscovery.com\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.khaolaklanddiscovery.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.khaolaklanddiscovery.com\/fr\/wp-json\/wp\/v2\/comments?post=17254"}],"version-history":[{"count":3,"href":"https:\/\/www.khaolaklanddiscovery.com\/fr\/wp-json\/wp\/v2\/pages\/17254\/revisions"}],"predecessor-version":[{"id":78365,"href":"https:\/\/www.khaolaklanddiscovery.com\/fr\/wp-json\/wp\/v2\/pages\/17254\/revisions\/78365"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.khaolaklanddiscovery.com\/fr\/wp-json\/wp\/v2\/media\/76649"}],"wp:attachment":[{"href":"https:\/\/www.khaolaklanddiscovery.com\/fr\/wp-json\/wp\/v2\/media?parent=17254"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}