{"id":29391,"date":"2026-07-04T11:13:11","date_gmt":"2026-07-04T11:13:11","guid":{"rendered":"https:\/\/definitelymoroccotours.com\/?page_id=29391"},"modified":"2026-07-04T11:17:48","modified_gmt":"2026-07-04T11:17:48","slug":"marrakech-sahara-tour-to-fes-3-days-2-nights","status":"publish","type":"page","link":"https:\/\/definitelymoroccotours.com\/fr\/marrakech-sahara-tour-to-fes-3-days-2-nights\/","title":{"rendered":"Marrakech Sahara tour to Fes 3 days \/ 2 nights"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"29391\" class=\"elementor elementor-29391\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-573dab9 wd-section-stretch e-con-full e-flex e-con e-parent\" data-id=\"573dab9\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;shape_divider_top&quot;:&quot;wd_curved_line&quot;}\">\n\t\t\t\t<div class=\"elementor-shape elementor-shape-top\" aria-hidden=\"true\" data-negative=\"false\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"wd-divider\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" x=\"0px\" y=\"0px\"\n\t viewBox=\"0 0 100 100\" width=\"100%\" height=\"50px\" preserveAspectRatio=\"none\">\n<path class=\"elementor-shape-fill\" display=\"none\" d=\"M100,25.8V100H0V52.5c-4.9-6.8-9.5-13.8-15-19.7V101h125V20.9C106.3,22,103,23.7,100,25.8z\"\/>\n<path class=\"elementor-shape-fill\" d=\"M0,0v99c22-20.6,28.7-69.7,61.4-69.7c18.8,0,29.1,16.2,38.6,34V0L0,0z\"\/>\n<\/svg>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d84c5bd elementor-widget elementor-widget-html\" data-id=\"d84c5bd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- ============================================================\n  BOOKING PAGE \u2014 Trip from Marrakech to Merzouga Desert (5 Days \/ 4 Nights)\n  Definitely Morocco Tours \u2014 Elementor HTML Widget (English)\n  Palette : Sand #DAD3C1 \/ White #FFFFFF only\n  Font    : Lexend (Google Fonts), regular style only\n============================================================ -->\n\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Lexend:wght@300;400;500;600;700;800&display=swap\" rel=\"stylesheet\">\n\n<style>\n  #dmt-merzouga5d-booking {\n    --sand: #DAD3C1;\n    --sand-deep: #C7BEA6;\n    --sand-pale: #EFEBE1;\n    --white: #FFFFFF;\n    --text: #3A372F;\n    --text-soft: #6B6757;\n    --line: rgba(58,55,47,0.14);\n    font-family: 'Lexend', sans-serif;\n    font-style: normal;\n    color: var(--text);\n    background: var(--white);\n    max-width: 1180px;\n    margin: 0 auto;\n    padding: 0 20px 80px;\n    box-sizing: border-box;\n  }\n  #dmt-merzouga5d-booking * {\n    box-sizing: border-box;\n    font-family: 'Lexend', sans-serif;\n    font-style: normal !important;\n  }\n  #dmt-merzouga5d-booking h1, #dmt-merzouga5d-booking h2, #dmt-merzouga5d-booking h3 {\n    margin: 0;\n    letter-spacing: -0.01em;\n    color: var(--text);\n  }\n\n  \/* ---------- HERO ---------- *\/\n  .dmt-hero {\n    position: relative;\n    border-radius: 22px;\n    overflow: hidden;\n    min-height: 460px;\n    display: flex;\n    align-items: flex-end;\n    margin-top: 28px;\n    background: var(--sand-deep);\n  }\n  .dmt-hero img {\n    position: absolute; inset: 0;\n    width: 100%; height: 100%;\n    object-fit: cover;\n    filter: saturate(1.05) contrast(1.02);\n  }\n  .dmt-hero::after {\n    content: \"\";\n    position: absolute; inset: 0;\n    background: linear-gradient(180deg, rgba(20,18,14,0) 0%, rgba(20,18,14,0.05) 30%, rgba(20,18,14,0.55) 65%, rgba(20,18,14,0.92) 100%);\n    pointer-events: none;\n  }\n  .dmt-hero-content {\n    position: relative;\n    z-index: 2;\n    padding: 44px 48px;\n    width: 100%;\n  }\n  .dmt-eyebrow,\n  .dmt-eyebrow * {\n    display: inline-flex;\n    align-items: center;\n    gap: 10px;\n    font-size: 12.5px;\n    font-weight: 500;\n    letter-spacing: 0.18em;\n    text-transform: uppercase;\n    color: var(--sand) !important;\n    margin-bottom: 16px;\n    background: none !important;\n  }\n  .dmt-eyebrow .dot { width: 6px; height: 6px; border-radius: 50%; background: var(--sand) !important; }\n  .dmt-hero h1,\n  .dmt-hero h1 * {\n    font-size: 40px;\n    font-weight: 700;\n    line-height: 1.12;\n    max-width: 720px;\n    color: #FFFFFF !important;\n    background: none !important;\n    text-shadow: 0 2px 18px rgba(0,0,0,0.45);\n  }\n  .dmt-hero-meta {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 28px;\n    margin-top: 24px;\n    font-size: 14.5px;\n  }\n  .dmt-hero-meta div,\n  .dmt-hero-meta div * { color: #FFFFFF !important; opacity: 0.95; background: none !important; }\n  .dmt-hero-meta strong { color: #FFFFFF !important; font-weight: 600; }\n\n  \/* ---------- GALLERY STRIP ---------- *\/\n  .dmt-gallery {\n    display: grid;\n    grid-template-columns: repeat(5, 1fr);\n    gap: 10px;\n    margin-top: 12px;\n  }\n  .dmt-gallery a {\n    display: block;\n    border-radius: 12px;\n    overflow: hidden;\n    aspect-ratio: 1 \/ 1;\n    position: relative;\n    cursor: pointer;\n    background: var(--sand-pale);\n  }\n  .dmt-gallery img {\n    width: 100%; height: 100%;\n    object-fit: cover;\n    display: block;\n    transition: transform .35s ease;\n  }\n  .dmt-gallery a:hover img { transform: scale(1.06); }\n  @media (max-width: 760px) {\n    .dmt-gallery { grid-template-columns: repeat(3, 1fr); }\n    .dmt-gallery a:nth-child(n+4) { display: none; }\n  }\n\n  \/* ---------- MAIN LAYOUT ---------- *\/\n  .dmt-layout {\n    display: grid;\n    grid-template-columns: 1.35fr 1fr;\n    gap: 44px;\n    margin-top: 56px;\n    align-items: start;\n  }\n  @media (max-width: 980px) {\n    .dmt-layout { grid-template-columns: 1fr; }\n  }\n\n  .dmt-section { margin-bottom: 48px; }\n  .dmt-kicker {\n    font-size: 12px;\n    font-weight: 600;\n    letter-spacing: 0.16em;\n    text-transform: uppercase;\n    color: var(--text-soft);\n    margin-bottom: 10px;\n    display: block;\n  }\n  .dmt-section h2 {\n    font-size: 26px;\n    font-weight: 700;\n    margin-bottom: 18px;\n  }\n  .dmt-about p {\n    font-size: 15.5px;\n    line-height: 1.75;\n    color: var(--text-soft);\n    max-width: 600px;\n  }\n\n  \/* ---------- ITINERARY : ACCORDION (closed by default) ---------- *\/\n  .dmt-accordion {\n    display: flex;\n    flex-direction: column;\n    gap: 12px;\n  }\n  .dmt-acc-item {\n    background: var(--white);\n    border: 1px solid var(--line);\n    border-radius: 14px;\n    overflow: hidden;\n    box-shadow: 0 1px 2px rgba(58,55,47,0.04);\n    transition: border-color .25s ease, box-shadow .25s ease;\n  }\n  .dmt-acc-item:hover {\n    border-color: var(--sand-deep);\n    box-shadow: 0 4px 16px rgba(58,55,47,0.07);\n  }\n  .dmt-acc-item.open {\n    border-color: var(--sand-deep);\n    box-shadow: 0 6px 20px rgba(58,55,47,0.09);\n  }\n  .dmt-acc-header {\n    display: flex;\n    align-items: center;\n    gap: 18px;\n    width: 100%;\n    background: var(--white);\n    border: none;\n    text-align: left;\n    padding: 20px 22px;\n    cursor: pointer;\n    font-family: 'Lexend', sans-serif;\n    transition: background .25s ease;\n  }\n  .dmt-acc-item.open .dmt-acc-header { background: var(--sand-pale); }\n  .dmt-acc-day-wrap {\n    flex: 0 0 auto;\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    justify-content: center;\n    width: 54px; height: 54px;\n    border-radius: 12px;\n    background: var(--sand-pale);\n    border: 1px solid var(--sand-deep);\n    transition: background .25s ease, border-color .25s ease;\n  }\n  .dmt-acc-item.open .dmt-acc-day-wrap {\n    background: var(--sand-deep);\n    border-color: var(--sand-deep);\n  }\n  .dmt-acc-day-label {\n    font-size: 9px;\n    font-weight: 600;\n    letter-spacing: 0.1em;\n    text-transform: uppercase;\n    color: var(--text-soft);\n    line-height: 1;\n  }\n  .dmt-acc-item.open .dmt-acc-day-label { color: rgba(58,55,47,0.65); }\n  .dmt-acc-day-num {\n    font-size: 18px;\n    font-weight: 700;\n    color: var(--text);\n    line-height: 1.3;\n  }\n  .dmt-acc-title-wrap { flex: 1 1 auto; min-width: 0; }\n  .dmt-acc-title {\n    display: block;\n    font-size: 15.5px;\n    font-weight: 600;\n    line-height: 1.4;\n    color: var(--text);\n  }\n  .dmt-acc-subtitle {\n    display: block;\n    font-size: 12px;\n    font-weight: 500;\n    letter-spacing: 0.04em;\n    text-transform: uppercase;\n    color: var(--text-soft);\n    margin-top: 5px;\n  }\n  .dmt-acc-icon {\n    flex: 0 0 auto;\n    width: 34px; height: 34px;\n    border-radius: 50%;\n    background: var(--white);\n    border: 1px solid var(--line);\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    position: relative;\n    transition: transform .3s ease, background .25s ease, border-color .25s ease;\n  }\n  .dmt-acc-icon::before, .dmt-acc-icon::after {\n    content: \"\";\n    position: absolute;\n    background: var(--text);\n    border-radius: 2px;\n  }\n  .dmt-acc-icon::before { width: 11px; height: 1.6px; }\n  .dmt-acc-icon::after { width: 1.6px; height: 11px; transition: opacity .2s ease; }\n  .dmt-acc-item.open .dmt-acc-icon {\n    background: var(--white);\n    border-color: var(--sand-deep);\n    transform: rotate(180deg);\n  }\n  .dmt-acc-item.open .dmt-acc-icon::after { opacity: 0; }\n  .dmt-acc-body {\n    max-height: 0;\n    overflow: hidden;\n    transition: max-height .35s ease;\n  }\n  .dmt-acc-body-inner {\n    padding: 16px 22px 24px 22px;\n    font-size: 14.5px;\n    line-height: 1.75;\n    color: var(--text-soft);\n    max-width: 640px;\n    border-top: 1px solid var(--line);\n    margin: 0 22px;\n  }\n\n  \/* ---------- INCLUDED \/ EXCLUDED ---------- *\/\n  .dmt-incl-grid {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 20px;\n  }\n  @media (max-width: 560px) { .dmt-incl-grid { grid-template-columns: 1fr; } }\n  .dmt-incl-card {\n    background: var(--sand-pale);\n    border-radius: 16px;\n    padding: 22px 24px;\n  }\n  .dmt-incl-card.excl { background: var(--white); border: 1px solid var(--line); }\n  .dmt-incl-card h4 {\n    font-size: 13px;\n    font-weight: 600;\n    letter-spacing: 0.08em;\n    text-transform: uppercase;\n    margin: 0 0 14px;\n    color: var(--text);\n  }\n  .dmt-incl-card ul { list-style: none; margin: 0; padding: 0; }\n  .dmt-incl-card li {\n    font-size: 14px;\n    line-height: 1.5;\n    color: var(--text-soft);\n    padding: 7px 0 7px 24px;\n    position: relative;\n    border-bottom: 1px solid var(--line);\n  }\n  .dmt-incl-card li:last-child { border-bottom: none; }\n  .dmt-incl-card li::before {\n    position: absolute; left: 0; top: 7px;\n    font-weight: 700;\n  }\n  .dmt-incl-card:not(.excl) li::before { content: \"\u2713\"; color: var(--text); }\n  .dmt-incl-card.excl li::before { content: \"\u2013\"; color: var(--text-soft); }\n\n  \/* map *\/\n  .dmt-map { border-radius: 18px; overflow: hidden; margin-top: 6px; border: 1px solid var(--line); }\n  .dmt-map iframe { width: 100%; height: 280px; border: 0; display: block; }\n\n  \/* lightbox *\/\n  .dmt-lightbox {\n    position: fixed; inset: 0;\n    background: rgba(58,55,47,0.92);\n    z-index: 9999;\n    display: none;\n    align-items: center;\n    justify-content: center;\n    padding: 30px;\n  }\n  .dmt-lightbox.open { display: flex; }\n  .dmt-lightbox img { max-width: 100%; max-height: 100%; border-radius: 8px; }\n  .dmt-lightbox-close {\n    position: absolute; top: 24px; right: 28px;\n    color: var(--white); font-size: 28px; cursor: pointer;\n    background: none; border: none; line-height: 1;\n  }\n<\/style>\n\n<div id=\"dmt-merzouga5d-booking\">\n\n  <!-- HERO -->\n  <div class=\"dmt-hero\">\n    <img decoding=\"async\" src=\"https:\/\/definitelymoroccotours.com\/wp-content\/uploads\/2023\/01\/Trip-From-Marrakech-To-Merzouga-Desert-min-scaled.jpg\" alt=\"Trip from Marrakech to Merzouga desert\">\n    <div class=\"dmt-hero-content\">\n      <span class=\"dmt-eyebrow\"><span class=\"dot\"><\/span> 5 Days \u00b7 4 Nights \u00b7 Sahara Desert<\/span>\n      <h1>Trip from Marrakech to Merzouga Desert \u2014 5 Days \/ 4 Nights<\/h1>\n      <div class=\"dmt-hero-meta\">\n        <div>\ud83d\ude97 <strong>Private 4x4 with A\/C<\/strong><\/div>\n        <div>\ud83d\udde3\ufe0f <strong>English speaking driver\/guide<\/strong><\/div>\n        <div>\ud83d\udc2a <strong>Camel trek & desert camp<\/strong><\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <!-- GALLERY -->\n  <div class=\"dmt-gallery\" id=\"dmt-gallery\">\n    <a href=\"https:\/\/definitelymoroccotours.com\/wp-content\/uploads\/2023\/01\/Trip-From-Marrakech-To-Merzouga-Desert-min-scaled.jpg\" class=\"dmt-gallery-link\">\n      <img decoding=\"async\" src=\"https:\/\/definitelymoroccotours.com\/wp-content\/uploads\/2023\/01\/Trip-From-Marrakech-To-Merzouga-Desert-min-scaled.jpg\" alt=\"Trip from Marrakech to Merzouga desert\">\n    <\/a>\n    <a href=\"https:\/\/definitelymoroccotours.com\/wp-content\/uploads\/2023\/01\/IMG_1209.jpg\" class=\"dmt-gallery-link\">\n      <img decoding=\"async\" src=\"https:\/\/definitelymoroccotours.com\/wp-content\/uploads\/2023\/01\/IMG_1209.jpg\" alt=\"Trip from Marrakech to Merzouga desert\">\n    <\/a>\n    <a href=\"https:\/\/definitelymoroccotours.com\/wp-content\/uploads\/2023\/01\/13-Erg-Chebbi.jpg\" class=\"dmt-gallery-link\">\n      <img decoding=\"async\" src=\"https:\/\/definitelymoroccotours.com\/wp-content\/uploads\/2023\/01\/13-Erg-Chebbi.jpg\" alt=\"Trip from Marrakech to Merzouga desert\">\n    <\/a>\n    <a href=\"https:\/\/definitelymoroccotours.com\/wp-content\/uploads\/2023\/01\/Epcot-Morocco-Nights-1536x1018-1.jpg\" class=\"dmt-gallery-link\">\n      <img decoding=\"async\" src=\"https:\/\/definitelymoroccotours.com\/wp-content\/uploads\/2023\/01\/Epcot-Morocco-Nights-1536x1018-1.jpg\" alt=\"Trip from Marrakech to Merzouga desert\">\n    <\/a>\n    <a href=\"https:\/\/definitelymoroccotours.com\/wp-content\/uploads\/2023\/01\/IMG_0151.jpg\" class=\"dmt-gallery-link\">\n      <img decoding=\"async\" src=\"https:\/\/definitelymoroccotours.com\/wp-content\/uploads\/2023\/01\/IMG_0151.jpg\" alt=\"Trip from Marrakech to Merzouga desert\">\n    <\/a>\n  <\/div>\n\n  <div class=\"dmt-layout\">\n    <!-- LEFT COLUMN : CONTENT -->\n    <div>\n      <div class=\"dmt-section dmt-about\">\n        <span class=\"dmt-kicker\">About this tour<\/span>\n        <h2>The most impressive landscapes of the Sahara<\/h2>\n        <p>On this trip from Marrakech to Merzouga Desert, you will visit the most amazing part of the Sahara desert and contemplate most of the impressive and different landscapes of Morocco. In a comfortable 4x4, we will cross roads, dirt tracks, valleys, passes, gorges, dunes, and villages rich in Berber history and culture.<\/p>\n      <\/div>\n\n      <div class=\"dmt-section\">\n        <span class=\"dmt-kicker\">Itinerary<\/span>\n        <h2>5 Days \/ 4 Nights \u2014 Day by day<\/h2>\n        <div class=\"dmt-accordion\" id=\"dmt-accordion\">\n\n          <div class=\"dmt-acc-item\">\n            <button class=\"dmt-acc-header\" type=\"button\">\n              <span class=\"dmt-acc-day-wrap\"><span class=\"dmt-acc-day-label\">Day<\/span><span class=\"dmt-acc-day-num\">01<\/span><\/span>\n              <span class=\"dmt-acc-title-wrap\"><span class=\"dmt-acc-title\">Marrakech to Dades Gorges<\/span><span class=\"dmt-acc-subtitle\">A\u00eft Ben Haddou \u00b7 Valley of the Roses<\/span><\/span>\n              <span class=\"dmt-acc-icon\"><\/span>\n            <\/button>\n            <div class=\"dmt-acc-body\">\n              <div class=\"dmt-acc-body-inner\">\n                <p>After picking you up at your hotel or riad (or at the airport) we will depart for Ouarzazate. Along the way, we will cross the Atlas by the incredible pass Tizi n'Tichka, 2,260 meters high. Shortly after crossing the Atlas, we will arrive at the Kasbah of A\u00eft Ben Haddou, an incredibly fortified city where films such as Gladiator or Kingdom of Heaven have been shot. After the visit, we will take the Road of the Thousand Kasbahs towards Skoura where we will stop at the Amridil Kasbah. From here we will go to Kelaat M'gouna, capital of the Valley of the Roses, to finally reach the Dades Gorges, where we will stay.<\/p>\n              <\/div>\n            <\/div>\n          <\/div>\n\n          <div class=\"dmt-acc-item\">\n            <button class=\"dmt-acc-header\" type=\"button\">\n              <span class=\"dmt-acc-day-wrap\"><span class=\"dmt-acc-day-label\">Day<\/span><span class=\"dmt-acc-day-num\">02<\/span><\/span>\n              <span class=\"dmt-acc-title-wrap\"><span class=\"dmt-acc-title\">Dades Gorges to Merzouga<\/span><span class=\"dmt-acc-subtitle\">Todra Gorges \u00b7 Palmeral of Jorf \u00b7 Erfoud<\/span><\/span>\n              <span class=\"dmt-acc-icon\"><\/span>\n            <\/button>\n            <div class=\"dmt-acc-body\">\n              <div class=\"dmt-acc-body-inner\">\n                <p>After breakfast, we will resume the march towards the Dades Valley and cross the impressive Todra Gorges, where we will stay until lunchtime. With renewed energy, we will take the road to Merzouga, crossing the Palmeral of Jorf (from where the best dates come from) and Erfoud, a beautiful village where you can visit a marble workshop. Once in Merzouga we'll recall the striking image of its dunes.<\/p>\n              <\/div>\n            <\/div>\n          <\/div>\n\n          <div class=\"dmt-acc-item\">\n            <button class=\"dmt-acc-header\" type=\"button\">\n              <span class=\"dmt-acc-day-wrap\"><span class=\"dmt-acc-day-label\">Day<\/span><span class=\"dmt-acc-day-num\">03<\/span><\/span>\n              <span class=\"dmt-acc-title-wrap\"><span class=\"dmt-acc-title\">Merzouga and Erg Chebbi<\/span><span class=\"dmt-acc-subtitle\">Khamlia \u00b7 Gnaoua music \u00b7 Berber camp<\/span><\/span>\n              <span class=\"dmt-acc-icon\"><\/span>\n            <\/button>\n            <div class=\"dmt-acc-body\">\n              <div class=\"dmt-acc-body-inner\">\n                <p>On the 3rd day, we dedicate it entirely to enjoying the desert. We fill the dunes in the 4x4, visit nomadic villages, see the oasis, and ride through the dunes of Erg Chebbi. We visit the famous village of Khamlia and enjoy the folk of Gnaoua music. At dusk, camels take us to the Berber camp in the heart of the dunes, where we have dinner and spend the night.<\/p>\n              <\/div>\n            <\/div>\n          <\/div>\n\n          <div class=\"dmt-acc-item\">\n            <button class=\"dmt-acc-header\" type=\"button\">\n              <span class=\"dmt-acc-day-wrap\"><span class=\"dmt-acc-day-label\">Day<\/span><span class=\"dmt-acc-day-num\">04<\/span><\/span>\n              <span class=\"dmt-acc-title-wrap\"><span class=\"dmt-acc-title\">Merzouga to Ouarzazate<\/span><span class=\"dmt-acc-subtitle\">Rissani \u00b7 Draa Valley \u00b7 Agdez<\/span><\/span>\n              <span class=\"dmt-acc-icon\"><\/span>\n            <\/button>\n            <div class=\"dmt-acc-body\">\n              <div class=\"dmt-acc-body-inner\">\n                <p>If there's one thing no one can miss it's enjoying a sunrise in the desert, so we get up early on this day. After contemplating this moment, we take the camels back to a hotel where we can shower and have breakfast. Back to Ouarzazate, we take a different route: passing the Palmeral de Tafilalet and the village of Rissani (origin of the Alaouite dynasty and ancient capital of the Alaoui sultans) we reach Alnif, where we take the road that crosses the Anti-Atlas mountain range. Marveling at the shapes and colors of these mountains, we reach Tazarine, N'kob, and finally the Draa Valley with its amazing palm grove. In the afternoon we cross the Anti-Atlas via the Tizi n'Tnifift pass (1,660m) toward Ouarzazate, where we spend the night in a riad\/kasbah.<\/p>\n              <\/div>\n            <\/div>\n          <\/div>\n\n          <div class=\"dmt-acc-item\">\n            <button class=\"dmt-acc-header\" type=\"button\">\n              <span class=\"dmt-acc-day-wrap\"><span class=\"dmt-acc-day-label\">Day<\/span><span class=\"dmt-acc-day-num\">05<\/span><\/span>\n              <span class=\"dmt-acc-title-wrap\"><span class=\"dmt-acc-title\">Ouarzazate to Marrakech<\/span><span class=\"dmt-acc-subtitle\">Kasbah Taourirt \u00b7 Atlas Film Studios<\/span><\/span>\n              <span class=\"dmt-acc-icon\"><\/span>\n            <\/button>\n            <div class=\"dmt-acc-body\">\n              <div class=\"dmt-acc-body-inner\">\n                <p>After breakfast, we have time to visit the famous Kasbah Taourirt and the Atlas Film Studios, the most important in Africa. We'll be back in Marrakech around 5pm. End of our services.<\/p>\n              <\/div>\n            <\/div>\n          <\/div>\n\n        <\/div>\n      <\/div>\n\n      <div class=\"dmt-section\">\n        <span class=\"dmt-kicker\">Good to know<\/span>\n        <h2>Included \/ Excluded<\/h2>\n        <div class=\"dmt-incl-grid\">\n          <div class=\"dmt-incl-card\">\n            <h4>Included<\/h4>\n            <ul>\n              <li>Private tour, no other people in the group<\/li>\n              <li>Pick up at hotel\/riad, airport, or anywhere you want<\/li>\n              <li>5 days exclusive service of a vehicle with A\/C<\/li>\n              <li>5 days service of an English speaking driver\/guide<\/li>\n              <li>3 nights accommodation (dinner and breakfast included)<\/li>\n              <li>Fuel, tolls and all associated expenses<\/li>\n              <li>1 night nomadic camp under the stars<\/li>\n              <li>Camel ride and guide (one camel per person)<\/li>\n              <li>Sand-boarding in the dunes<\/li>\n            <\/ul>\n          <\/div>\n          <div class=\"dmt-incl-card excl\">\n            <h4>Excluded<\/h4>\n            <ul>\n              <li>Drinks<\/li>\n              <li>Entrances to the monuments<\/li>\n              <li>Tips and personal items<\/li>\n            <\/ul>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"dmt-section\">\n        <span class=\"dmt-kicker\">Tour's location<\/span>\n        <h2>Marrakech to Merzouga, via A\u00eft Ben Haddou and the Draa Valley<\/h2>\n        <div class=\"dmt-map\">\n          <iframe src=\"https:\/\/www.google.com\/maps\/embed?pb=!1m64!1m12!1m3!1d1748355.116638438!2d-7.117093594633371!3d31.144287911238766!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!4m49!3e0!4m5!1s0xdafee8d96179e51%3A0x5950b6534f87adb8!2sMarrakech!3m2!1d31.6294723!2d-7.9810845!4m5!1s0xdbae06120411439%3A0x4d090f64a0ec123a!2sA%C3%AFt%20Ben%20Haddou!3m2!1d31.047043!2d-7.1318996!4m5!1s0xda3328c8a8c64bf%3A0x257d57d5120009c0!2sGorges%20du%20Dad%C3%A8s!3m2!1d31.4532146!2d-5.9675869!4m5!1s0xd973c279834dfe5%3A0x5639fab2b5de4a44!2sMerzouga!3m2!1d31.0801676!2d-4.013361!4m5!1s0xd97722e4e641617%3A0x82298ec0b0417a51!2sRissani!3m2!1d31.2798384!2d-4.2589619!4m5!1s0xdbb80538b38a023%3A0x5668a92d056600dd!2sAgdz!3m2!1d30.7041312!2d-6.4530072999999994!4m5!1s0xdbb104077422057%3A0x26b3cb529b37ab00!2sOuarzazate!3m2!1d30.9335436!2d-6.937016!4m5!1s0xdafee8d96179e51%3A0x5950b6534f87adb8!2sMarrakech!3m2!1d31.6294723!2d-7.9810845!5e0!3m2!1sfr!2sma!4v1673960522707!5m2!1sfr!2sma\" loading=\"lazy\"><\/iframe>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <!-- RIGHT COLUMN : BOOKING FORM SHORTCODE -->\n    <div>\n      \t\t\t<link rel=\"stylesheet\" id=\"elementor-post-29281-css\" href=\"https:\/\/definitelymoroccotours.com\/wp-content\/uploads\/elementor\/css\/post-29281.css?ver=1784243140\" type=\"text\/css\" media=\"all\">\n\t\t\t\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"29281\" class=\"elementor elementor-29281\" data-elementor-post-type=\"cms_block\">\n\t\t\t\t<div class=\"wd-negative-gap elementor-element elementor-element-7fadad2 e-flex e-con-boxed e-con e-parent\" data-id=\"7fadad2\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-00b3a27 elementor-widget elementor-widget-html\" data-id=\"00b3a27\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- ============================================================\n  GENERIC BOOKING FORM \u2014 Definitely Morocco Tours\n  Reusable shortcode widget for ALL tour\/activity pages\n  Palette : Sand #DAD3C1 \/ White #FFFFFF only\n  Font    : Lexend (Google Fonts), regular style only\n  Auto-detects the tour name from the page title (document.title)\n  Direct email delivery via FormSubmit (AJAX) \u2014 no mail client needed\n  Shows a confirmation popup after successful submission\n============================================================ -->\n\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Lexend:wght@300;400;500;600;700;800&display=swap\" rel=\"stylesheet\">\n\n<style>\n  #dmt-booking-form-widget {\n    --sand: #DAD3C1;\n    --sand-deep: #C7BEA6;\n    --sand-pale: #EFEBE1;\n    --white: #FFFFFF;\n    --text: #3A372F;\n    --text-soft: #6B6757;\n    --line: rgba(58,55,47,0.14);\n    font-family: 'Lexend', sans-serif;\n    font-style: normal;\n    color: var(--text);\n    max-width: 460px;\n    box-sizing: border-box;\n  }\n  #dmt-booking-form-widget * {\n    box-sizing: border-box;\n    font-family: 'Lexend', sans-serif;\n    font-style: normal !important;\n  }\n\n  \/* ---------- BOOKING CARD ---------- *\/\n  .dmt-book-card {\n    background-color: #EFEBE1 !important;\n    border: 1px solid #C7BEA6;\n    color: var(--text);\n    border-radius: 22px;\n    padding: 32px;\n  }\n  .dmt-book-card .dmt-book-head { margin-bottom: 22px; }\n  .dmt-book-card .dmt-book-head .label {\n    font-size: 11.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--text-soft);\n  }\n  .dmt-book-card .dmt-book-head h3 {\n    font-size: 21px; font-weight: 700; margin: 8px 0 0; color: var(--text);\n  }\n  .dmt-book-card .dmt-book-head .sub {\n    font-size: 14px; margin-top: 8px; color: var(--text-soft); line-height: 1.5;\n  }\n  .dmt-book-card .dmt-book-head .tour-tag {\n    display: inline-flex;\n    align-items: center;\n    gap: 6px;\n    margin-top: 12px;\n    background-color: #FFFFFF !important;\n    border: 1px solid #C7BEA6;\n    border-radius: 8px;\n    padding: 7px 12px;\n    font-size: 12.5px;\n    font-weight: 600;\n    color: var(--text);\n  }\n\n  .dmt-field { margin-bottom: 16px; }\n  .dmt-field label {\n    display: block;\n    font-size: 12px;\n    font-weight: 500;\n    letter-spacing: 0.04em;\n    color: var(--text-soft);\n    margin-bottom: 7px;\n  }\n  .dmt-field input, .dmt-field textarea {\n    width: 100%;\n    background-color: #FFFFFF !important;\n    border: 1px solid #C7BEA6;\n    border-radius: 10px;\n    padding: 12px 14px;\n    color: var(--text);\n    font-size: 14px;\n    outline: none;\n    transition: border-color .2s;\n  }\n  .dmt-field input::placeholder, .dmt-field textarea::placeholder { color: #A9A290; }\n  .dmt-field input:focus, .dmt-field textarea:focus { border-color: var(--text-soft); }\n  .dmt-row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }\n\n  \/* ---------- PHONE: country code selector ---------- *\/\n  .dmt-phone-group { display: flex; gap: 8px; }\n  .dmt-country-btn {\n    display: flex;\n    align-items: center;\n    gap: 6px;\n    background-color: #FFFFFF !important;\n    border: 1px solid #C7BEA6;\n    border-radius: 10px;\n    padding: 0 10px;\n    cursor: pointer;\n    font-size: 14px;\n    color: var(--text);\n    flex-shrink: 0;\n    white-space: nowrap;\n  }\n  .dmt-country-btn .flag { font-size: 16px; }\n  .dmt-country-btn .chev { font-size: 10px; opacity: 0.6; margin-left: 2px; }\n  .dmt-phone-group input { flex: 1; }\n\n  \/* ---------- Country popup (fixed overlay, fully opaque) ---------- *\/\n  .dmt-country-overlay {\n    position: fixed !important;\n    inset: 0 !important;\n    background-color: rgba(40,37,30,0.55) !important;\n    background-image: none !important;\n    z-index: 999999 !important;\n    display: none;\n    align-items: center;\n    justify-content: center;\n    padding: 20px;\n    opacity: 1 !important;\n    filter: none !important;\n  }\n  .dmt-country-overlay.open { display: flex !important; }\n  .dmt-country-popup {\n    background-color: #FFFFFF !important;\n    background-image: none !important;\n    border-radius: 20px;\n    padding: 18px;\n    width: 320px;\n    max-height: 70vh;\n    display: flex;\n    flex-direction: column;\n    box-shadow: 0 30px 60px rgba(0,0,0,0.35);\n    font-family: 'Lexend', sans-serif !important;\n    opacity: 1 !important;\n    filter: none !important;\n    isolation: isolate;\n    position: relative;\n  }\n  .dmt-country-popup * { opacity: 1 !important; filter: none !important; }\n  .dmt-country-popup-head {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    margin-bottom: 12px;\n    font-weight: 600;\n    font-size: 15px;\n    color: #3A372F !important;\n    flex-shrink: 0;\n  }\n  .dmt-country-search {\n    width: 100%;\n    background-color: #EFEBE1 !important;\n    border: 1px solid #C7BEA6 !important;\n    border-radius: 10px;\n    padding: 10px 12px;\n    font-size: 13.5px;\n    color: #3A372F !important;\n    margin-bottom: 10px;\n    flex-shrink: 0;\n  }\n  .dmt-country-search::placeholder { color: #A9A290 !important; }\n  .dmt-country-list { overflow-y: auto; flex: 1; }\n  .dmt-country-item {\n    display: flex;\n    align-items: center;\n    gap: 10px;\n    padding: 9px 10px;\n    border-radius: 8px;\n    cursor: pointer;\n    font-size: 13.5px;\n    color: #3A372F !important;\n    background-color: transparent !important;\n  }\n  .dmt-country-item:hover { background-color: #EFEBE1 !important; }\n  .dmt-country-item .flag { font-size: 16px; }\n  .dmt-country-item .name { flex: 1; }\n  .dmt-country-item .code { color: #6B6757 !important; font-size: 12.5px; }\n  .dmt-country-popup-close {\n    background: none; border: none; color: #6B6757 !important;\n    font-size: 13px; cursor: pointer;\n  }\n  .dmt-country-popup-close:hover { color: #3A372F !important; }\n\n  \/* ---------- CUSTOM CALENDAR ---------- *\/\n  .dmt-date-display {\n    width: 100%;\n    background-color: #FFFFFF !important;\n    border: 1px solid #C7BEA6;\n    border-radius: 10px;\n    padding: 12px 14px;\n    font-size: 14px;\n    color: var(--text-soft);\n    text-align: left;\n    cursor: pointer;\n    display: flex;\n    align-items: center;\n    gap: 8px;\n  }\n  .dmt-date-display.filled { color: var(--text); font-weight: 500; }\n  .dmt-date-display .ico { font-size: 13px; }\n  .dmt-date-display:hover { border-color: var(--text-soft); }\n\n  .dmt-cal-overlay {\n    position: fixed !important;\n    inset: 0 !important;\n    background-color: rgba(40,37,30,0.55) !important;\n    background-image: none !important;\n    z-index: 999999 !important;\n    display: none;\n    align-items: center;\n    justify-content: center;\n    padding: 20px;\n    opacity: 1 !important;\n    filter: none !important;\n    backdrop-filter: none !important;\n  }\n  .dmt-cal-overlay.open { display: flex !important; }\n  .dmt-cal-popup {\n    background-color: #FFFFFF !important;\n    background-image: none !important;\n    border-radius: 20px;\n    padding: 24px;\n    width: 380px;\n    max-width: 92vw;\n    box-shadow: 0 30px 60px rgba(0,0,0,0.35);\n    font-family: 'Lexend', sans-serif !important;\n    opacity: 1 !important;\n    filter: none !important;\n    isolation: isolate;\n    position: relative;\n  }\n  .dmt-cal-popup * { opacity: 1 !important; filter: none !important; }\n  .dmt-cal-head {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    margin-bottom: 18px;\n    font-weight: 600;\n    font-size: 16px;\n    color: #3A372F !important;\n  }\n  .dmt-cal-nav {\n    width: 34px; height: 34px;\n    border-radius: 8px;\n    border: 1px solid #C7BEA6 !important;\n    background-color: #EFEBE1 !important;\n    color: #3A372F !important;\n    font-size: 16px;\n    cursor: pointer;\n    flex-shrink: 0;\n  }\n  .dmt-cal-nav:hover { background-color: #DAD3C1 !important; }\n  .dmt-cal-weekdays {\n    display: grid;\n    grid-template-columns: repeat(7, minmax(0, 1fr));\n    text-align: center;\n    font-size: 11.5px;\n    font-weight: 600;\n    letter-spacing: 0.04em;\n    color: #6B6757 !important;\n    margin-bottom: 8px;\n  }\n  .dmt-cal-grid {\n    display: grid;\n    grid-template-columns: repeat(7, minmax(0, 1fr));\n    gap: 6px;\n  }\n  .dmt-cal-day {\n    width: 100%;\n    aspect-ratio: 1\/1;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    border-radius: 9px;\n    font-size: 14px;\n    color: #3A372F !important;\n    cursor: pointer;\n    border: none;\n    background-color: transparent !important;\n  }\n  .dmt-cal-day:hover:not(.disabled):not(.empty) { background-color: #EFEBE1 !important; }\n  .dmt-cal-day.empty { visibility: hidden; cursor: default; }\n  .dmt-cal-day.disabled { color: #C9C4B4 !important; cursor: not-allowed; }\n  .dmt-cal-day.selected { background-color: #C7BEA6 !important; color: #3A372F !important; font-weight: 700; }\n  .dmt-cal-day.today { box-shadow: inset 0 0 0 1.5px #C7BEA6; }\n  .dmt-cal-footer { margin-top: 14px; display: flex; justify-content: flex-end; }\n  .dmt-cal-cancel {\n    background: none; border: none; color: #6B6757 !important;\n    font-size: 13px; cursor: pointer; padding: 6px 10px;\n  }\n  .dmt-cal-cancel:hover { color: #3A372F !important; }\n\n  \/* ---------- STEPPER ---------- *\/\n  .dmt-stepper {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    background-color: #FFFFFF !important;\n    border: 1px solid #C7BEA6;\n    border-radius: 10px;\n    padding: 6px 8px;\n  }\n  .dmt-stepper button {\n    width: 32px; height: 32px;\n    border-radius: 8px;\n    border: none;\n    background-color: #EFEBE1 !important;\n    color: var(--text);\n    font-size: 16px;\n    cursor: pointer;\n    transition: background .15s;\n  }\n  .dmt-stepper button:hover { background-color: #DAD3C1 !important; }\n  .dmt-stepper .count { font-size: 15px; font-weight: 600; color: var(--text); }\n\n  \/* ---------- BUTTONS ---------- *\/\n  .dmt-submit-btn {\n    width: 100%;\n    border: none;\n    border-radius: 12px;\n    padding: 15px 18px;\n    font-size: 15px;\n    font-weight: 700;\n    letter-spacing: 0.01em;\n    cursor: pointer;\n    margin-top: 8px;\n    transition: transform .15s, background .15s, opacity .15s;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    gap: 8px;\n  }\n  .dmt-submit-btn:active { transform: translateY(0); }\n  .dmt-submit-btn:disabled { opacity: 0.65; cursor: not-allowed; transform: none; }\n  .dmt-submit-email { background-color: #C7BEA6 !important; color: var(--text); }\n  .dmt-submit-email:hover:not(:disabled) { background-color: #DAD3C1 !important; transform: translateY(-1px); }\n  .dmt-submit-wa {\n    background-color: #FFFFFF !important;\n    color: var(--text);\n    border: 1px solid #C7BEA6;\n    margin-top: 10px;\n    font-size: 14px;\n  }\n  .dmt-submit-wa:hover:not(:disabled) { background-color: #EFEBE1 !important; transform: translateY(-1px); }\n\n  .dmt-spinner {\n    width: 15px; height: 15px;\n    border-radius: 50%;\n    border: 2px solid rgba(58,55,47,0.25);\n    border-top-color: #3A372F;\n    animation: dmt-spin .7s linear infinite;\n    display: inline-block;\n  }\n  @keyframes dmt-spin { to { transform: rotate(360deg); } }\n\n  .dmt-status {\n    margin-top: 14px;\n    font-size: 13px;\n    text-align: center;\n    display: none;\n    padding: 10px;\n    border-radius: 8px;\n  }\n  .dmt-status.show { display: block; }\n  .dmt-status.ok { background-color: #DAD3C1 !important; color: var(--text); }\n  .dmt-status.err { background-color: #F3D9D3 !important; color: #7A342A; }\n\n  .dmt-trust {\n    display: flex;\n    gap: 18px;\n    margin-top: 22px;\n    padding-top: 20px;\n    border-top: 1px solid #C7BEA6;\n    font-size: 12px;\n    color: var(--text-soft);\n    flex-wrap: wrap;\n  }\n  .dmt-trust div { display: flex; align-items: center; gap: 6px; }\n\n  \/* ---------- CONFIRMATION POPUP (after successful submission) ---------- *\/\n  .dmt-confirm-overlay {\n    position: fixed !important;\n    inset: 0 !important;\n    background-color: rgba(40,37,30,0.6) !important;\n    background-image: none !important;\n    z-index: 9999999 !important;\n    display: none;\n    align-items: center;\n    justify-content: center;\n    padding: 20px;\n    opacity: 1 !important;\n    filter: none !important;\n  }\n  .dmt-confirm-overlay.open { display: flex !important; }\n  .dmt-confirm-popup {\n    background-color: #FFFFFF !important;\n    background-image: none !important;\n    border-radius: 22px;\n    padding: 36px 32px 30px;\n    width: 380px;\n    max-width: 92vw;\n    text-align: center;\n    box-shadow: 0 30px 70px rgba(0,0,0,0.4);\n    font-family: 'Lexend', sans-serif !important;\n    opacity: 1 !important;\n    filter: none !important;\n    isolation: isolate;\n    position: relative;\n    transform: scale(0.94);\n    transition: transform .25s ease;\n  }\n  .dmt-confirm-overlay.open .dmt-confirm-popup { transform: scale(1); }\n  .dmt-confirm-popup * { opacity: 1 !important; filter: none !important; }\n  .dmt-confirm-icon {\n    width: 62px; height: 62px;\n    border-radius: 50%;\n    background-color: #EFEBE1 !important;\n    border: 1px solid #C7BEA6;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-size: 28px;\n    margin: 0 auto 18px;\n    color: #3A372F !important;\n  }\n  .dmt-confirm-popup h4 {\n    font-size: 19px;\n    font-weight: 700;\n    color: #3A372F !important;\n    margin: 0 0 10px;\n  }\n  .dmt-confirm-popup p {\n    font-size: 14px;\n    line-height: 1.6;\n    color: #6B6757 !important;\n    margin: 0 0 24px;\n  }\n  .dmt-confirm-popup .tour-recap {\n    background-color: #EFEBE1 !important;\n    border: 1px solid #C7BEA6;\n    border-radius: 12px;\n    padding: 12px 14px;\n    font-size: 13px;\n    color: #3A372F !important;\n    margin-bottom: 22px;\n    text-align: left;\n  }\n  .dmt-confirm-popup .tour-recap strong { font-weight: 600; }\n  .dmt-confirm-close-btn {\n    width: 100%;\n    border: none;\n    border-radius: 12px;\n    padding: 13px 18px;\n    font-size: 14.5px;\n    font-weight: 700;\n    cursor: pointer;\n    background-color: #C7BEA6 !important;\n    color: #3A372F !important;\n    transition: background .15s, transform .15s;\n  }\n  .dmt-confirm-close-btn:hover { background-color: #DAD3C1 !important; transform: translateY(-1px); }\n  .dmt-confirm-popup-x {\n    position: absolute;\n    top: 14px; right: 14px;\n    width: 28px; height: 28px;\n    border-radius: 50%;\n    background-color: #EFEBE1 !important;\n    border: none;\n    color: #3A372F !important;\n    font-size: 13px;\n    cursor: pointer;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n  }\n\n  \/* ---------- MOBILE STICKY BUTTON + BOTTOM SHEET ---------- *\/\n  .dmt-sticky-book-btn { display: none; }\n  .dmt-sheet-overlay { display: none; }\n  .dmt-sheet-handle { display: none; }\n  .dmt-sheet-close { display: none; }\n\n  @media (max-width: 860px) {\n    .dmt-sticky-book-btn {\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      position: fixed;\n      left: 16px;\n      right: 16px;\n      bottom: 16px;\n      z-index: 99998;\n      background-color: #DAD3C1 !important;\n      color: #3A372F !important;\n      border: 1px solid #C7BEA6;\n      border-radius: 16px;\n      padding: 16px 20px;\n      box-shadow: 0 12px 30px rgba(58,55,47,0.22);\n      cursor: pointer;\n    }\n    .dmt-sticky-book-btn .sticky-label {\n      font-size: 12.5px;\n      color: #6B6757 !important;\n      font-weight: 400;\n    }\n    .dmt-sticky-book-btn .sticky-cta {\n      font-size: 15.5px;\n      font-weight: 700;\n      color: #3A372F !important;\n      display: flex;\n      align-items: center;\n      gap: 6px;\n    }\n    .dmt-sticky-book-btn .arrow { color: #3A372F !important; }\n    .dmt-sticky-book-btn { flex-direction: column; align-items: flex-start; gap: 2px; }\n    .dmt-sticky-book-btn .sticky-cta { align-self: stretch; justify-content: space-between; }\n    .dmt-sticky-book-btn.hidden { transform: translateY(150%); }\n    .dmt-sticky-book-btn { transition: transform .25s ease; }\n\n    .dmt-sheet-overlay {\n      position: fixed; inset: 0;\n      background-color: rgba(40,37,30,0.55) !important;\n      z-index: 99996;\n      opacity: 0;\n      visibility: hidden;\n      transition: opacity .25s ease;\n    }\n    .dmt-sheet-overlay.open { opacity: 1; visibility: visible; }\n\n    .dmt-book-card {\n      position: fixed !important;\n      left: 0; right: 0; bottom: 0;\n      top: auto !important;\n      z-index: 99997;\n      max-height: 88vh;\n      overflow-y: auto;\n      border-radius: 24px 24px 0 0 !important;\n      box-shadow: 0 -16px 40px rgba(0,0,0,0.3);\n      transform: translateY(105%);\n      transition: transform .32s cubic-bezier(.32,.72,0,1);\n      max-width: 100% !important;\n      width: 100%;\n      padding-top: 14px !important;\n    }\n    .dmt-book-card.open { transform: translateY(0); }\n\n    .dmt-sheet-handle {\n      display: block;\n      width: 40px;\n      height: 4px;\n      border-radius: 4px;\n      background-color: #C7BEA6 !important;\n      margin: 0 auto 14px;\n    }\n    .dmt-sheet-close {\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      position: absolute;\n      top: 14px; right: 16px;\n      width: 30px; height: 30px;\n      border-radius: 50%;\n      background-color: #EFEBE1 !important;\n      border: none;\n      color: #3A372F !important;\n      font-size: 14px;\n      cursor: pointer;\n    }\n\n    \/* Body padding so content isn't hidden behind the sticky button *\/\n    body { padding-bottom: 90px; }\n  }\n<\/style>\n\n<div id=\"dmt-booking-form-widget\">\n\n  <!-- STICKY MOBILE BUTTON -->\n  <button type=\"button\" class=\"dmt-sticky-book-btn\" id=\"dmt-sticky-book-btn\">\n    <span class=\"sticky-label\">Book this tour<\/span>\n    <span class=\"sticky-cta\">Book now <span class=\"arrow\">\u2192<\/span><\/span>\n  <\/button>\n\n  <!-- Overlay behind the mobile sheet -->\n  <div class=\"dmt-sheet-overlay\" id=\"dmt-sheet-overlay\"><\/div>\n\n  <div class=\"dmt-book-card\" id=\"dmt-book-card\">\n    <div class=\"dmt-sheet-handle\" id=\"dmt-sheet-handle\"><\/div>\n    <button type=\"button\" class=\"dmt-sheet-close\" id=\"dmt-sheet-close\">\u2715<\/button>\n    <div class=\"dmt-book-head\">\n      <span class=\"label\">Reservation<\/span>\n      <h3>Book now<\/h3>\n      <div class=\"sub\">Send us your details and we'll confirm availability and pricing for your group.<\/div>\n      <div class=\"tour-tag\">\ud83d\udccd <span id=\"dmt-tour-name-display\">This tour<\/span><\/div>\n    <\/div>\n\n    <form id=\"dmt-booking-form\">\n      <div class=\"dmt-field\">\n        <label for=\"dmt-name\">Your name<\/label>\n        <input type=\"text\" id=\"dmt-name\" placeholder=\"Your name\" required>\n      <\/div>\n\n      <div class=\"dmt-field\">\n        <label for=\"dmt-email\">Your email<\/label>\n        <input type=\"email\" id=\"dmt-email\" placeholder=\"you@email.com\" required>\n      <\/div>\n\n      <div class=\"dmt-field\">\n        <label for=\"dmt-phone\">Your phone<\/label>\n        <div class=\"dmt-phone-group\">\n          <button type=\"button\" class=\"dmt-country-btn\" id=\"dmt-country-btn\">\n            <span class=\"flag\" id=\"dmt-country-flag\">\ud83c\uddf2\ud83c\udde6<\/span>\n            <span class=\"code\" id=\"dmt-country-code\">+212<\/span>\n            <span class=\"chev\">\u25be<\/span>\n          <\/button>\n          <input type=\"tel\" id=\"dmt-phone\" placeholder=\"6 12 34 56 78\" required>\n        <\/div>\n      <\/div>\n\n      <div class=\"dmt-field\">\n        <label>Travel dates<\/label>\n        <div class=\"dmt-row2\">\n          <div class=\"dmt-date-box\">\n            <button type=\"button\" class=\"dmt-date-display\" id=\"dmt-date-from-btn\">\n              <span class=\"ico\">\ud83d\udcc5<\/span>\n              <span id=\"dmt-date-from-label\">From<\/span>\n            <\/button>\n          <\/div>\n          <div class=\"dmt-date-box\">\n            <button type=\"button\" class=\"dmt-date-display\" id=\"dmt-date-to-btn\">\n              <span class=\"ico\">\ud83d\udcc5<\/span>\n              <span id=\"dmt-date-to-label\">To<\/span>\n            <\/button>\n          <\/div>\n        <\/div>\n        <input type=\"hidden\" id=\"dmt-date-from\">\n        <input type=\"hidden\" id=\"dmt-date-to\">\n      <\/div>\n\n      <div class=\"dmt-field\">\n        <label>Number of participants<\/label>\n        <div class=\"dmt-stepper\">\n          <button type=\"button\" id=\"dmt-minus\">\u2212<\/button>\n          <span class=\"count\" id=\"dmt-count\">2<\/span>\n          <button type=\"button\" id=\"dmt-plus\">+<\/button>\n        <\/div>\n      <\/div>\n\n      <div class=\"dmt-field\">\n        <label for=\"dmt-message\">Your message (optional)<\/label>\n        <textarea id=\"dmt-message\" rows=\"3\" placeholder=\"Anything else we should know?\"><\/textarea>\n      <\/div>\n\n      <button type=\"submit\" class=\"dmt-submit-btn dmt-submit-email\" id=\"dmt-submit-email-btn\">\u2709\ufe0f Send booking request<\/button>\n      <button type=\"button\" class=\"dmt-submit-btn dmt-submit-wa\" id=\"dmt-send-wa\">\ud83d\udcac Send via WhatsApp<\/button>\n      <div class=\"dmt-status\" id=\"dmt-status\"><\/div>\n    <\/form>\n\n    <div class=\"dmt-trust\">\n      <div>\u2713 Fast reply<\/div>\n      <div>\u2713 No obligation<\/div>\n      <div>\u2713 Pay on arrival<\/div>\n    <\/div>\n  <\/div>\n<\/div>\n\n<!-- CUSTOM CALENDAR POPUP -->\n<div class=\"dmt-cal-overlay\" id=\"dmt-cal-overlay\">\n  <div class=\"dmt-cal-popup\">\n    <div class=\"dmt-cal-head\">\n      <button type=\"button\" class=\"dmt-cal-nav\" id=\"dmt-cal-prev\">\u2039<\/button>\n      <span id=\"dmt-cal-title\">Month Year<\/span>\n      <button type=\"button\" class=\"dmt-cal-nav\" id=\"dmt-cal-next\">\u203a<\/button>\n    <\/div>\n    <div class=\"dmt-cal-weekdays\">\n      <span>Su<\/span><span>Mo<\/span><span>Tu<\/span><span>We<\/span><span>Th<\/span><span>Fr<\/span><span>Sa<\/span>\n    <\/div>\n    <div class=\"dmt-cal-grid\" id=\"dmt-cal-grid\"><\/div>\n    <div class=\"dmt-cal-footer\">\n      <button type=\"button\" class=\"dmt-cal-cancel\" id=\"dmt-cal-cancel\">Cancel<\/button>\n    <\/div>\n  <\/div>\n<\/div>\n\n<!-- COUNTRY CODE POPUP -->\n<div class=\"dmt-country-overlay\" id=\"dmt-country-overlay\">\n  <div class=\"dmt-country-popup\">\n    <div class=\"dmt-country-popup-head\">\n      <span>Select country code<\/span>\n      <button type=\"button\" class=\"dmt-country-popup-close\" id=\"dmt-country-popup-close\">\u2715<\/button>\n    <\/div>\n    <input type=\"text\" class=\"dmt-country-search\" id=\"dmt-country-search\" placeholder=\"Search country...\">\n    <div class=\"dmt-country-list\" id=\"dmt-country-list\"><\/div>\n  <\/div>\n<\/div>\n\n<!-- SUCCESS CONFIRMATION POPUP (shown after the booking request is sent) -->\n<div class=\"dmt-confirm-overlay\" id=\"dmt-confirm-overlay\">\n  <div class=\"dmt-confirm-popup\">\n    <button type=\"button\" class=\"dmt-confirm-popup-x\" id=\"dmt-confirm-popup-x\">\u2715<\/button>\n    <div class=\"dmt-confirm-icon\">\u2713<\/div>\n    <h4>Request sent successfully!<\/h4>\n    <p>Thank you, your booking request has been received. Our team will get back to you shortly to confirm availability and pricing.<\/p>\n    <div class=\"tour-recap\" id=\"dmt-confirm-recap\"><\/div>\n    <button type=\"button\" class=\"dmt-confirm-close-btn\" id=\"dmt-confirm-close-btn\">Got it, thanks!<\/button>\n  <\/div>\n<\/div>\n\n<script>\n(function(){\n  const root = document.getElementById('dmt-booking-form-widget');\n  if (!root) return;\n\n  \/\/ ---------- Recipient details (edit here if needed) ----------\n  const WHATSAPP_NUMBER = \"212693896597\"; \/\/ +212 6 93 89 65 97, without \"+\"\n  const EMAIL_TO = \"contact@definitelymoroccotours.com\";\n  \/\/ FormSubmit endpoint: sends the form directly to EMAIL_TO, no mail client popup\n  const FORMSUBMIT_ENDPOINT = \"https:\/\/formsubmit.co\/ajax\/\" + EMAIL_TO;\n\n  \/\/ ---------- Auto-detect tour name from page title ----------\n  function detectTourName(){\n    let title = document.title || \"\";\n    title = title.split(\" - Definitely Morocco Tours\")[0];\n    title = title.split(\" | \")[0];\n    title = title.split(\" \u2013 \")[0];\n    title = title.trim();\n    return title || \"this tour\";\n  }\n  const TOUR_NAME = detectTourName();\n  const tourNameDisplay = document.getElementById('dmt-tour-name-display');\n  if (tourNameDisplay) tourNameDisplay.textContent = TOUR_NAME;\n\n  \/\/ ---------- Mobile bottom sheet ----------\n  const stickyBtn = document.getElementById('dmt-sticky-book-btn');\n  const sheetOverlay = document.getElementById('dmt-sheet-overlay');\n  const sheetClose = document.getElementById('dmt-sheet-close');\n  const bookCard = document.getElementById('dmt-book-card');\n\n  function openSheet(){\n    bookCard.classList.add('open');\n    sheetOverlay.classList.add('open');\n    stickyBtn.classList.add('hidden');\n    document.body.style.overflow = 'hidden';\n  }\n  function closeSheet(){\n    bookCard.classList.remove('open');\n    sheetOverlay.classList.remove('open');\n    stickyBtn.classList.remove('hidden');\n    document.body.style.overflow = '';\n  }\n  if (stickyBtn) stickyBtn.addEventListener('click', openSheet);\n  if (sheetClose) sheetClose.addEventListener('click', closeSheet);\n  if (sheetOverlay) sheetOverlay.addEventListener('click', closeSheet);\n\n  \/\/ ---------- Stepper participants ----------\n  let count = 2;\n  const countEl = root.querySelector('#dmt-count');\n  root.querySelector('#dmt-minus').addEventListener('click', function(){\n    count = Math.max(1, count - 1);\n    countEl.textContent = count;\n  });\n  root.querySelector('#dmt-plus').addEventListener('click', function(){\n    count = Math.min(20, count + 1);\n    countEl.textContent = count;\n  });\n\n  \/\/ ---------- Country code selector ----------\n  const COUNTRIES = [\n    {name:\"Morocco\", code:\"+212\", flag:\"\ud83c\uddf2\ud83c\udde6\"},\n    {name:\"France\", code:\"+33\", flag:\"\ud83c\uddeb\ud83c\uddf7\"},\n    {name:\"Spain\", code:\"+34\", flag:\"\ud83c\uddea\ud83c\uddf8\"},\n    {name:\"United States\", code:\"+1\", flag:\"\ud83c\uddfa\ud83c\uddf8\"},\n    {name:\"United Kingdom\", code:\"+44\", flag:\"\ud83c\uddec\ud83c\udde7\"},\n    {name:\"Germany\", code:\"+49\", flag:\"\ud83c\udde9\ud83c\uddea\"},\n    {name:\"Italy\", code:\"+39\", flag:\"\ud83c\uddee\ud83c\uddf9\"},\n    {name:\"Portugal\", code:\"+351\", flag:\"\ud83c\uddf5\ud83c\uddf9\"},\n    {name:\"Netherlands\", code:\"+31\", flag:\"\ud83c\uddf3\ud83c\uddf1\"},\n    {name:\"Belgium\", code:\"+32\", flag:\"\ud83c\udde7\ud83c\uddea\"},\n    {name:\"Switzerland\", code:\"+41\", flag:\"\ud83c\udde8\ud83c\udded\"},\n    {name:\"Canada\", code:\"+1\", flag:\"\ud83c\udde8\ud83c\udde6\"},\n    {name:\"Brazil\", code:\"+55\", flag:\"\ud83c\udde7\ud83c\uddf7\"},\n    {name:\"Mexico\", code:\"+52\", flag:\"\ud83c\uddf2\ud83c\uddfd\"},\n    {name:\"Argentina\", code:\"+54\", flag:\"\ud83c\udde6\ud83c\uddf7\"},\n    {name:\"China\", code:\"+86\", flag:\"\ud83c\udde8\ud83c\uddf3\"},\n    {name:\"Japan\", code:\"+81\", flag:\"\ud83c\uddef\ud83c\uddf5\"},\n    {name:\"South Korea\", code:\"+82\", flag:\"\ud83c\uddf0\ud83c\uddf7\"},\n    {name:\"India\", code:\"+91\", flag:\"\ud83c\uddee\ud83c\uddf3\"},\n    {name:\"Australia\", code:\"+61\", flag:\"\ud83c\udde6\ud83c\uddfa\"},\n    {name:\"United Arab Emirates\", code:\"+971\", flag:\"\ud83c\udde6\ud83c\uddea\"},\n    {name:\"Saudi Arabia\", code:\"+966\", flag:\"\ud83c\uddf8\ud83c\udde6\"},\n    {name:\"Qatar\", code:\"+974\", flag:\"\ud83c\uddf6\ud83c\udde6\"},\n    {name:\"Egypt\", code:\"+20\", flag:\"\ud83c\uddea\ud83c\uddec\"},\n    {name:\"Algeria\", code:\"+213\", flag:\"\ud83c\udde9\ud83c\uddff\"},\n    {name:\"Tunisia\", code:\"+216\", flag:\"\ud83c\uddf9\ud83c\uddf3\"},\n    {name:\"Turkey\", code:\"+90\", flag:\"\ud83c\uddf9\ud83c\uddf7\"},\n    {name:\"Russia\", code:\"+7\", flag:\"\ud83c\uddf7\ud83c\uddfa\"},\n    {name:\"Sweden\", code:\"+46\", flag:\"\ud83c\uddf8\ud83c\uddea\"},\n    {name:\"Norway\", code:\"+47\", flag:\"\ud83c\uddf3\ud83c\uddf4\"},\n    {name:\"Denmark\", code:\"+45\", flag:\"\ud83c\udde9\ud83c\uddf0\"},\n    {name:\"Poland\", code:\"+48\", flag:\"\ud83c\uddf5\ud83c\uddf1\"},\n    {name:\"Ireland\", code:\"+353\", flag:\"\ud83c\uddee\ud83c\uddea\"},\n    {name:\"Austria\", code:\"+43\", flag:\"\ud83c\udde6\ud83c\uddf9\"},\n    {name:\"South Africa\", code:\"+27\", flag:\"\ud83c\uddff\ud83c\udde6\"},\n    {name:\"Israel\", code:\"+972\", flag:\"\ud83c\uddee\ud83c\uddf1\"},\n    {name:\"Singapore\", code:\"+65\", flag:\"\ud83c\uddf8\ud83c\uddec\"},\n    {name:\"New Zealand\", code:\"+64\", flag:\"\ud83c\uddf3\ud83c\uddff\"}\n  ];\n\n  let selectedCountry = COUNTRIES[0];\n  const countryBtn = root.querySelector('#dmt-country-btn');\n  const countryFlag = root.querySelector('#dmt-country-flag');\n  const countryCode = root.querySelector('#dmt-country-code');\n  const countryOverlay = document.getElementById('dmt-country-overlay');\n  const countryList = document.getElementById('dmt-country-list');\n  const countrySearch = document.getElementById('dmt-country-search');\n  const countryPopupClose = document.getElementById('dmt-country-popup-close');\n\n  function renderCountryList(filter){\n    countryList.innerHTML = '';\n    const f = (filter || '').trim().toLowerCase();\n    COUNTRIES\n      .filter(function(c){ return !f || c.name.toLowerCase().indexOf(f) !== -1 || c.code.indexOf(f) !== -1; })\n      .forEach(function(c){\n        const item = document.createElement('div');\n        item.className = 'dmt-country-item';\n        item.innerHTML = '<span class=\"flag\">'+c.flag+'<\/span><span class=\"name\">'+c.name+'<\/span><span class=\"code\">'+c.code+'<\/span>';\n        item.addEventListener('click', function(){\n          selectedCountry = c;\n          countryFlag.textContent = c.flag;\n          countryCode.textContent = c.code;\n          countryOverlay.classList.remove('open');\n        });\n        countryList.appendChild(item);\n      });\n  }\n  renderCountryList('');\n\n  countryBtn.addEventListener('click', function(){\n    countrySearch.value = '';\n    renderCountryList('');\n    countryOverlay.classList.add('open');\n    setTimeout(function(){ countrySearch.focus(); }, 50);\n  });\n  countrySearch.addEventListener('input', function(){\n    renderCountryList(countrySearch.value);\n  });\n  countryPopupClose.addEventListener('click', function(){\n    countryOverlay.classList.remove('open');\n  });\n  countryOverlay.addEventListener('click', function(e){\n    if (e.target === countryOverlay) countryOverlay.classList.remove('open');\n  });\n\n  \/\/ ---------- Custom calendar ----------\n  const calOverlay = document.getElementById('dmt-cal-overlay');\n  const calGrid = document.getElementById('dmt-cal-grid');\n  const calTitle = document.getElementById('dmt-cal-title');\n  const calPrev = document.getElementById('dmt-cal-prev');\n  const calNext = document.getElementById('dmt-cal-next');\n  const calCancel = document.getElementById('dmt-cal-cancel');\n\n  const dateFromBtn = root.querySelector('#dmt-date-from-btn');\n  const dateToBtn = root.querySelector('#dmt-date-to-btn');\n  const dateFromLabel = root.querySelector('#dmt-date-from-label');\n  const dateToLabel = root.querySelector('#dmt-date-to-label');\n  const dateFromInput = root.querySelector('#dmt-date-from');\n  const dateToInput = root.querySelector('#dmt-date-to');\n\n  const MONTH_NAMES = [\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"];\n  let calViewDate = new Date();\n  let activeTarget = null;\n  let selectedFrom = null, selectedTo = null;\n\n  function fmt(d){\n    return d.toLocaleDateString('en-US', { day: 'numeric', month: 'short', year: 'numeric' });\n  }\n  function toISO(d){\n    return d.getFullYear() + '-' + String(d.getMonth()+1).padStart(2,'0') + '-' + String(d.getDate()).padStart(2,'0');\n  }\n  function dayKey(d){\n    return d.getFullYear()*10000 + (d.getMonth()+1)*100 + d.getDate();\n  }\n  function sameDay(a,b){\n    return a && b && dayKey(a) === dayKey(b);\n  }\n\n  function renderCalendar(){\n    const year = calViewDate.getFullYear();\n    const month = calViewDate.getMonth();\n    calTitle.textContent = MONTH_NAMES[month] + \" \" + year;\n    calGrid.innerHTML = '';\n\n    const firstDay = new Date(year, month, 1).getDay();\n    const daysInMonth = new Date(year, month+1, 0).getDate();\n    const now = new Date();\n    const todayKey = now.getFullYear()*10000 + (now.getMonth()+1)*100 + now.getDate();\n\n    for (let i=0; i<firstDay; i++){\n      const empty = document.createElement('div');\n      empty.className = 'dmt-cal-day empty';\n      calGrid.appendChild(empty);\n    }\n    for (let d=1; d<=daysInMonth; d++){\n      const cellDate = new Date(year, month, d);\n      const cellKey = year*10000 + (month+1)*100 + d;\n      const btn = document.createElement('button');\n      btn.type = 'button';\n      btn.className = 'dmt-cal-day';\n      btn.textContent = d;\n      if (cellKey < todayKey) btn.classList.add('disabled');\n      if (cellKey === todayKey) btn.classList.add('today');\n      if (activeTarget === 'from' && sameDay(cellDate, selectedFrom)) btn.classList.add('selected');\n      if (activeTarget === 'to' && sameDay(cellDate, selectedTo)) btn.classList.add('selected');\n      if (!btn.classList.contains('disabled')){\n        btn.addEventListener('click', function(){\n          if (activeTarget === 'from'){\n            selectedFrom = cellDate;\n            dateFromInput.value = toISO(cellDate);\n            dateFromLabel.textContent = fmt(cellDate);\n            dateFromBtn.classList.add('filled');\n          } else {\n            selectedTo = cellDate;\n            dateToInput.value = toISO(cellDate);\n            dateToLabel.textContent = fmt(cellDate);\n            dateToBtn.classList.add('filled');\n          }\n          calOverlay.classList.remove('open');\n        });\n      }\n      calGrid.appendChild(btn);\n    }\n  }\n\n  function openCalendar(target){\n    activeTarget = target;\n    calViewDate = (target === 'from' && selectedFrom) ? new Date(selectedFrom) :\n                  (target === 'to' && selectedTo) ? new Date(selectedTo) : new Date();\n    renderCalendar();\n    calOverlay.classList.add('open');\n  }\n\n  dateFromBtn.addEventListener('click', function(){ openCalendar('from'); });\n  dateToBtn.addEventListener('click', function(){ openCalendar('to'); });\n  calPrev.addEventListener('click', function(){ calViewDate.setMonth(calViewDate.getMonth()-1); renderCalendar(); });\n  calNext.addEventListener('click', function(){ calViewDate.setMonth(calViewDate.getMonth()+1); renderCalendar(); });\n  calCancel.addEventListener('click', function(){ calOverlay.classList.remove('open'); });\n  calOverlay.addEventListener('click', function(e){ if (e.target === calOverlay) calOverlay.classList.remove('open'); });\n\n  \/\/ ---------- Confirmation popup ----------\n  const confirmOverlay = document.getElementById('dmt-confirm-overlay');\n  const confirmRecap = document.getElementById('dmt-confirm-recap');\n  const confirmCloseBtn = document.getElementById('dmt-confirm-close-btn');\n  const confirmPopupX = document.getElementById('dmt-confirm-popup-x');\n\n  function openConfirmPopup(data){\n    confirmRecap.innerHTML =\n      '<div><strong>Tour:<\/strong> ' + TOUR_NAME + '<\/div>' +\n      '<div style=\"margin-top:6px;\"><strong>Dates:<\/strong> ' + data.dateFrom + ' \u2192 ' + data.dateTo + '<\/div>' +\n      '<div style=\"margin-top:6px;\"><strong>Participants:<\/strong> ' + data.participants + '<\/div>';\n    confirmOverlay.classList.add('open');\n  }\n  function closeConfirmPopup(){\n    confirmOverlay.classList.remove('open');\n  }\n  confirmCloseBtn.addEventListener('click', closeConfirmPopup);\n  confirmPopupX.addEventListener('click', closeConfirmPopup);\n  confirmOverlay.addEventListener('click', function(e){\n    if (e.target === confirmOverlay) closeConfirmPopup();\n  });\n\n  \/\/ ---------- Form submission (direct email via FormSubmit, well structured) ----------\n  const form = root.querySelector('#dmt-booking-form');\n  const statusEl = root.querySelector('#dmt-status');\n  const submitEmailBtn = root.querySelector('#dmt-submit-email-btn');\n\n  function collectFormData(){\n    const name = root.querySelector('#dmt-name').value.trim();\n    const email = root.querySelector('#dmt-email').value.trim();\n    const phone = selectedCountry.code + \" \" + root.querySelector('#dmt-phone').value.trim();\n    const dateFrom = dateFromInput.value || \"Not specified\";\n    const dateTo = dateToInput.value || \"Not specified\";\n    const message = root.querySelector('#dmt-message').value.trim();\n    return { name: name, email: email, phone: phone, dateFrom: dateFrom, dateTo: dateTo, participants: count, message: message };\n  }\n\n  function buildWhatsAppMessage(data){\n    return [\n      \"New booking request\",\n      \"Tour: \" + TOUR_NAME,\n      \"Name: \" + data.name,\n      \"Email: \" + data.email,\n      \"Phone: \" + data.phone,\n      \"From: \" + data.dateFrom + \"  To: \" + data.dateTo,\n      \"Participants: \" + data.participants,\n      data.message ? \"Message: \" + data.message : \"\"\n    ].filter(Boolean).join(\"\\n\");\n  }\n\n  function setLoading(isLoading){\n    submitEmailBtn.disabled = isLoading;\n    submitEmailBtn.innerHTML = isLoading\n      ? '<span class=\"dmt-spinner\"><\/span> Sending...'\n      : '\u2709\ufe0f Send booking request';\n  }\n\n  \/\/ Main action = direct email via FormSubmit (AJAX, no redirect, no mail client)\n  form.addEventListener('submit', function(e){\n    e.preventDefault();\n    const data = collectFormData();\n\n    setLoading(true);\n    statusEl.classList.remove('show', 'ok', 'err');\n\n    const payload = {\n      _subject: \"New booking request \u2014 \" + TOUR_NAME,\n      _template: \"table\",\n      _captcha: \"false\",\n      \"Tour\": TOUR_NAME,\n      \"Full name\": data.name,\n      \"Email\": data.email,\n      \"Phone\": data.phone,\n      \"Travel dates\": data.dateFrom + \" \u2192 \" + data.dateTo,\n      \"Participants\": data.participants,\n      \"Message\": data.message || \"\u2014\"\n    };\n\n    fetch(FORMSUBMIT_ENDPOINT, {\n      method: \"POST\",\n      headers: { \"Content-Type\": \"application\/json\", \"Accept\": \"application\/json\" },\n      body: JSON.stringify(payload)\n    })\n    .then(function(res){ return res.json().then(function(json){ return { ok: res.ok, json: json }; }); })\n    .then(function(result){\n      setLoading(false);\n      if (result.ok) {\n        form.reset();\n        count = 2; countEl.textContent = count;\n        selectedFrom = null; selectedTo = null;\n        dateFromLabel.textContent = 'From'; dateToLabel.textContent = 'To';\n        dateFromBtn.classList.remove('filled'); dateToBtn.classList.remove('filled');\n        openConfirmPopup(data);\n      } else {\n        statusEl.textContent = \"Something went wrong sending your request. Please try WhatsApp instead, or try again.\";\n        statusEl.classList.add('show', 'err');\n      }\n    })\n    .catch(function(){\n      setLoading(false);\n      statusEl.textContent = \"Connection issue \u2014 please try WhatsApp instead, or try again.\";\n      statusEl.classList.add('show', 'err');\n    });\n  });\n\n  \/\/ Secondary action = WhatsApp\n  root.querySelector('#dmt-send-wa').addEventListener('click', function(){\n    const data = collectFormData();\n    const waUrl = \"https:\/\/wa.me\/\" + WHATSAPP_NUMBER + \"?text=\" + encodeURIComponent(buildWhatsAppMessage(data));\n    window.open(waUrl, \"_blank\");\n\n    statusEl.textContent = \"Opening WhatsApp with your request pre-filled.\";\n    statusEl.classList.remove('err');\n    statusEl.classList.add('show', 'ok');\n  });\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n    <\/div>\n  <\/div>\n<\/div>\n\n\n<!-- LIGHTBOX -->\n<div class=\"dmt-lightbox\" id=\"dmt-lightbox\">\n  <button class=\"dmt-lightbox-close\" id=\"dmt-lightbox-close\">&times;<\/button>\n  <img decoding=\"async\" id=\"dmt-lightbox-img\" src=\"\" alt=\"\">\n<\/div>\n\n<script>\n(function(){\n  \/\/ Gallery lightbox\n  const lightbox = document.getElementById('dmt-lightbox');\n  const lightboxImg = document.getElementById('dmt-lightbox-img');\n  document.getElementById('dmt-gallery').querySelectorAll('.dmt-gallery-link').forEach(function(link){\n    link.addEventListener('click', function(e){\n      e.preventDefault();\n      lightboxImg.src = link.getAttribute('href');\n      lightbox.classList.add('open');\n    });\n  });\n  document.getElementById('dmt-lightbox-close').addEventListener('click', function(){\n    lightbox.classList.remove('open');\n  });\n  lightbox.addEventListener('click', function(e){\n    if (e.target === lightbox) lightbox.classList.remove('open');\n  });\n\n  \/\/ Accordion (all closed by default)\n  document.getElementById('dmt-accordion').querySelectorAll('.dmt-acc-item').forEach(function(item){\n    const header = item.querySelector('.dmt-acc-header');\n    const body = item.querySelector('.dmt-acc-body');\n    header.addEventListener('click', function(){\n      const isOpen = item.classList.contains('open');\n      \/\/ close all others\n      item.parentElement.querySelectorAll('.dmt-acc-item').forEach(function(other){\n        other.classList.remove('open');\n        other.querySelector('.dmt-acc-body').style.maxHeight = null;\n      });\n      if (!isOpen) {\n        item.classList.add('open');\n        body.style.maxHeight = body.scrollHeight + 'px';\n      }\n    });\n  });\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>5 Days \u00b7 4 Nights \u00b7 Sahara Desert Trip from Marrakech to Merzouga Desert \u2014 5 Days \/ 4 Nights<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-29391","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/definitelymoroccotours.com\/fr\/wp-json\/wp\/v2\/pages\/29391","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/definitelymoroccotours.com\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/definitelymoroccotours.com\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/definitelymoroccotours.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/definitelymoroccotours.com\/fr\/wp-json\/wp\/v2\/comments?post=29391"}],"version-history":[{"count":7,"href":"https:\/\/definitelymoroccotours.com\/fr\/wp-json\/wp\/v2\/pages\/29391\/revisions"}],"predecessor-version":[{"id":29400,"href":"https:\/\/definitelymoroccotours.com\/fr\/wp-json\/wp\/v2\/pages\/29391\/revisions\/29400"}],"wp:attachment":[{"href":"https:\/\/definitelymoroccotours.com\/fr\/wp-json\/wp\/v2\/media?parent=29391"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}