{"id":2932,"date":"2025-10-25T13:24:03","date_gmt":"2025-10-25T13:24:03","guid":{"rendered":"https:\/\/agadirdeserttour.com\/?page_id=2932"},"modified":"2025-10-25T13:29:26","modified_gmt":"2025-10-25T13:29:26","slug":"agadir-transfer-to-essaouira","status":"publish","type":"page","link":"https:\/\/agadirdeserttour.com\/es\/traslado-de-agadir-a-essaouira\/","title":{"rendered":"Traslado de Agadir a Essaouira"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"2932\" class=\"elementor elementor-2932\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8bdb5f1 e-con-full e-flex e-con e-parent\" data-id=\"8bdb5f1\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f1e6131 elementor-widget elementor-widget-html\" data-id=\"f1e6131\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!doctype html>\r\n<html lang=\"en\">\r\n<head>\r\n<meta charset=\"utf-8\">\r\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1\">\r\n<title>Traslado Agadir a Essaouira | Traslados Privados 24\/7<\/title>\r\n<meta name=\"description\" content=\"Reserve traslados fiables de Agadir a Essaouira. Recogida privada puerta a puerta 24\/7. Conductores profesionales, tarifa plana $70, confirmaci\u00f3n inmediata.\">\r\n\r\n<!-- EmailJS SDK -->\r\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/@emailjs\/browser@3\/dist\/email.min.js\"><\/script>\r\n<script>\r\n  (function(){\r\n    emailjs.init(\"veBaT0LTiBlDrRK_i\");\r\n  })();\r\n<\/script>\r\n\r\n<style>\r\n\/* ===== Professional Redesign ===== *\/\r\n.aga-transfer{\r\n  --bg:#f8fafc;\r\n  --ink:#0f172a;\r\n  --muted:#475569;\r\n  --line:#e2e8f0;\r\n  --card:#ffffff;\r\n  --accent:#dc2626;       \/* Professional red accent *\/\r\n  --accent-700:#b91c1c;\r\n  --accent-soft:rgba(220,38,38,.08);\r\n  --ring:rgba(220,38,38,.15);\r\n  --success:#059669;\r\n  \r\n  font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;\r\n  color: var(--ink);\r\n  background: var(--bg);\r\n  line-height: 1.6;\r\n  padding: 0 0 80px;\r\n}\r\n.aga-transfer *{ box-sizing: border-box; }\r\n.aga-transfer__wrap{ width:min(1200px,94%); margin-inline:auto; }\r\n\r\n\/* ===== ENHANCED HERO BANNER - MOBILE FIXED ===== *\/\r\n.aga-hero{\r\n  position:relative; isolation:isolate; overflow:hidden;\r\n  min-height: 65vh;\r\n  display:grid; place-items:center;\r\n  color:#fff; text-align:center;\r\n  background:\r\n    linear-gradient(135deg, rgba(0,0,0,.65) 0%, rgba(0,0,0,.4) 100%),\r\n    url('http:\/\/agadirdeserttour.com\/wp-content\/uploads\/2025\/10\/ChatGPT-Image-25-mai-2025-15_27_44.png');\r\n  background-size: cover; \r\n  background-position:center; \r\n  background-repeat:no-repeat;\r\n}\r\n@media (min-width: 768px) {\r\n  .aga-hero { background-attachment: fixed; }\r\n}\r\n.aga-hero__inner{ \r\n  width:min(1100px,92%); \r\n  padding: clamp(60px, 10vw, 140px) 20px;\r\n  position: relative;\r\n  z-index: 2;\r\n}\r\n.aga-hero__eyebrow{\r\n  display:inline-block; \r\n  padding:10px 20px; \r\n  border-radius:999px; \r\n  font-weight:700; \r\n  font-size:13px; \r\n  letter-spacing:.5px; \r\n  text-transform:uppercase;\r\n  background:rgba(255,255,255,.15); \r\n  border:1px solid rgba(255,255,255,.3); \r\n  color:#fff; \r\n  margin-bottom:16px;\r\n  backdrop-filter: blur(10px);\r\n}\r\n.aga-hero__title{\r\n  margin:0 0 16px; \r\n  font-weight:800; \r\n  letter-spacing:-.03em;\r\n  font-size: clamp(32px, 5.5vw, 62px); \r\n  line-height:1.05;\r\n  text-shadow: 0 2px 4px rgba(0,0,0,.3);\r\n}\r\n.aga-hero__title strong{ color:#ffd700; }\r\n.aga-hero__sub{\r\n  margin:0 auto; \r\n  max-width: 68ch; \r\n  color:#f1f5f9; \r\n  font-size: clamp(16px, 2vw, 20px);\r\n  font-weight: 400;\r\n  line-height: 1.5;\r\n}\r\n\r\n\/* Enhanced Section Head *\/\r\n.aga-transfer__head{ \r\n  text-align:center; \r\n  margin:40px 0 30px; \r\n  padding: 0 20px;\r\n}\r\n.aga-transfer__eyebrow{\r\n  display:inline-block; \r\n  padding:8px 20px; \r\n  border-radius:999px;\r\n  background:var(--accent-soft); \r\n  color:var(--accent); \r\n  font-weight:700; \r\n  font-size:13px; \r\n  letter-spacing:.5px; \r\n  text-transform:uppercase;\r\n  border:1px solid rgba(220,38,38,.2);\r\n  margin-bottom: 16px;\r\n}\r\n.aga-transfer__title{\r\n  margin:12px 0 10px; \r\n  font-weight:800; \r\n  letter-spacing:-.025em;\r\n  font-size: clamp(28px, 4.5vw, 44px);\r\n  color: var(--ink);\r\n}\r\n.aga-transfer__sub{\r\n  margin:0 auto; \r\n  max-width: 70ch; \r\n  color:var(--muted); \r\n  font-size: 18px;\r\n  font-weight: 400;\r\n  line-height: 1.5;\r\n}\r\n\r\n\/* Enhanced Grid *\/\r\n.aga-transfer__grid{\r\n  display:grid; \r\n  grid-template-columns: 1.4fr 1fr; \r\n  gap:32px; \r\n  align-items:start;\r\n}\r\n@media (max-width: 1024px){\r\n  .aga-transfer__grid{ grid-template-columns: 1fr; gap:28px; }\r\n}\r\n\r\n\/* Enhanced Card *\/\r\n.card{\r\n  background: var(--card);\r\n  border:1px solid var(--line);\r\n  border-radius:20px;\r\n  box-shadow: 0 8px 30px rgba(2,8,23,.08);\r\n  overflow: hidden;\r\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\r\n}\r\n.card:hover {\r\n  transform: translateY(-2px);\r\n  box-shadow: 0 12px 40px rgba(2,8,23,.12);\r\n}\r\n\r\n\/* Enhanced Form *\/\r\n.form{ padding: 32px; }\r\n@media (max-width: 640px){ .form{ padding: 24px; } }\r\n@media (min-width: 640px){ .form{ padding: 36px; } }\r\n.form__grid{ display:grid; gap:20px; grid-template-columns: 1fr; }\r\n@media (min-width: 760px){ .form__grid--two{ grid-template-columns: 1fr 1fr; gap:20px; } }\r\n.form__section-title {\r\n  font-size: 18px;\r\n  font-weight: 700;\r\n  color: var(--ink);\r\n  margin: 24px 0 16px;\r\n  padding-bottom: 8px;\r\n  border-bottom: 2px solid var(--accent-soft);\r\n}\r\nlabel{\r\n  display:block; \r\n  font-weight:600; \r\n  font-size:14px; \r\n  letter-spacing:.3px; \r\n  color:#334155; \r\n  margin-bottom:8px;\r\n}\r\n.input, .textarea, .select{\r\n  width:100%; \r\n  border:2px solid var(--line); \r\n  border-radius:12px; \r\n  background:#fff; \r\n  color:var(--ink);\r\n  padding:14px 16px; \r\n  font: 500 15px\/1.4 inherit; \r\n  outline: none; \r\n  transition: all .2s ease;\r\n}\r\n.textarea{ min-height: 120px; resize: vertical; }\r\n.select{\r\n  appearance: none;\r\n  background-image:\r\n    linear-gradient(45deg, transparent 50%, var(--muted) 50%),\r\n    linear-gradient(135deg, var(--muted) 50%, transparent 50%);\r\n  background-position: calc(100% - 20px) calc(1em + 4px), calc(100% - 15px) calc(1em + 4px);\r\n  background-size: 6px 6px, 6px 6px; \r\n  background-repeat: no-repeat;\r\n}\r\n.input:focus, .textarea:focus, .select:focus{ \r\n  border-color: var(--accent); \r\n  box-shadow: 0 0 0 4px var(--ring); \r\n  background: #fff;\r\n}\r\n.help{ \r\n  font-size:13px; \r\n  color:var(--muted); \r\n  margin-top:6px; \r\n  font-style: italic;\r\n}\r\n\r\n\/* Enhanced Price & Actions *\/\r\n.form__footer{\r\n  display:grid;\r\n  grid-template-columns: 1fr;\r\n  gap:16px;\r\n  margin-top:24px;\r\n  padding: 20px;\r\n  background: var(--accent-soft);\r\n  border-radius: 16px;\r\n}\r\n.price-box{\r\n  display:flex; \r\n  align-items:center; \r\n  gap:12px; \r\n  background: #fff; \r\n  border:2px solid var(--line); \r\n  border-radius:12px; \r\n  padding:12px 16px;\r\n  min-width: 180px;\r\n  justify-content: center;\r\n}\r\n.price-box b{ \r\n  font-size:20px; \r\n  font-weight:700; \r\n  letter-spacing:.2px; \r\n  color: var(--accent);\r\n}\r\n.price-box input{\r\n  width:100px; \r\n  border:none; \r\n  outline:none; \r\n  background:transparent; \r\n  font-weight:800; \r\n  font-size:20px; \r\n  color:var(--ink);\r\n}\r\n\r\n\/* Enhanced Buttons *\/\r\n.form__actions {\r\n  display: flex;\r\n  justify-content: center;\r\n  align-items: center;\r\n}\r\n\r\n.btn{\r\n  display:inline-flex; \r\n  align-items:center; \r\n  justify-content:center; \r\n  gap:8px;\r\n  padding:16px 32px; \r\n  border-radius:12px; \r\n  text-decoration:none; \r\n  font-weight:700; \r\n  font-size:16px;\r\n  cursor:pointer; \r\n  border:2px solid transparent;\r\n  transition: all .25s ease;\r\n  position: relative;\r\n  overflow: hidden;\r\n  text-align: center;\r\n  min-height: 56px;\r\n  min-width: 200px;\r\n}\r\n.btn::before {\r\n  content: '';\r\n  position: absolute;\r\n  top: 0;\r\n  left: -100%;\r\n  width: 100%;\r\n  height: 100%;\r\n  background: linear-gradient(90deg, transparent, rgba(255,255,255,.2), transparent);\r\n  transition: left 0.5s;\r\n}\r\n.btn:hover::before { left: 100%; }\r\n\r\n.btn--primary{ \r\n  background:var(--accent); \r\n  color:#fff !important;\r\n  box-shadow:0 8px 20px rgba(220,38,38,.25); \r\n}\r\n.btn--primary:hover{ \r\n  background:var(--accent-700); \r\n  transform: translateY(-2px); \r\n  box-shadow:0 12px 30px rgba(220,38,38,.35); \r\n}\r\n\r\n\/* WhatsApp Button Styles *\/\r\n.btn--whatsapp{ \r\n  background: linear-gradient(135deg, #25D366 0%, #128C7E 100%); \r\n  color:#fff !important;\r\n  box-shadow:0 8px 20px rgba(37,211,102,.25);\r\n  border: 2px solid #25D366;\r\n  font-weight: 700;\r\n  letter-spacing: 0.3px;\r\n}\r\n.btn--whatsapp:hover{ \r\n  background: linear-gradient(135deg, #128C7E 0%, #075E54 100%); \r\n  transform: translateY(-2px); \r\n  box-shadow:0 12px 30px rgba(37,211,102,.35);\r\n  border-color: #128C7E;\r\n}\r\n\r\n\/* Enhanced Info Section *\/\r\n.info{ padding: 32px; }\r\n@media (max-width: 640px){ .info{ padding: 24px; } }\r\n.info__title{ \r\n  margin:0 0 12px; \r\n  font-weight:700; \r\n  letter-spacing:-.01em; \r\n  font-size: 22px; \r\n  color: var(--ink);\r\n}\r\n.info__list{ \r\n  margin: 16px 0 0; \r\n  padding:0 0 0 20px; \r\n  color:var(--muted);\r\n  line-height: 1.6;\r\n}\r\n.info__list li { margin-bottom: 10px; position: relative; }\r\n.info__list li::marker { color: var(--accent); }\r\n.hr{ height:1px; background:var(--line); border:0; margin:24px 0; }\r\n\r\n\/* Enhanced Badges *\/\r\n.badges{ display:flex; gap:12px; flex-wrap:wrap; margin-top: 20px; justify-content:center; }\r\n.badge{\r\n  display:inline-flex; align-items:center; gap:8px; padding:10px 16px; border-radius:999px;\r\n  background:var(--accent-soft); border:1px solid rgba(220,38,38,.2); color:#991b1b; \r\n  font-weight:600; font-size:13px; transition: transform 0.2s ease;\r\n}\r\n.badge:hover { transform: translateY(-1px); }\r\n.badge svg{ width:16px; height:16px; }\r\n\r\n\/* Enhanced small text *\/\r\n.small{ font-size:13px; color:var(--muted); line-height: 1.4; }\r\n\r\n\/* Success state *\/\r\n.input:valid { border-color: rgba(5, 150, 105, 0.3); }\r\n\r\n\/* Loading and Success States *\/\r\n.btn--loading { position: relative; color: transparent !important; }\r\n.btn--loading::after{\r\n  content:''; position:absolute; width:20px; height:20px; top:50%; left:50%;\r\n  margin:-10px 0 0 -10px; border:2px solid #ffffff; border-radius:50%;\r\n  border-right-color:transparent; animation: spin 0.8s linear infinite;\r\n}\r\n@keyframes spin { from{transform:rotate(0deg);} to{transform:rotate(360deg);} }\r\n\r\n.success-message {\r\n  background: #d1fae5; border: 1px solid #a7f3d0; color: #065f46;\r\n  padding: 16px; border-radius: 12px; margin-top: 16px; display: none;\r\n}\r\n.error-message {\r\n  background: #fee2e2; border: 1px solid #fecaca; color: #991b1b;\r\n  padding: 16px; border-radius: 12px; margin-top: 16px; display: none;\r\n}\r\n\r\n\/* WhatsApp Icon - FIXED *\/\r\n.whatsapp-icon {\r\n  width: 20px;\r\n  height: 20px;\r\n  fill: currentColor;\r\n  flex-shrink: 0;\r\n}\r\n\r\n\/* Mobile optimizations *\/\r\n@media (max-width: 640px) {\r\n  .aga-hero { min-height: 50vh; background-attachment: scroll; background-position: center center; }\r\n  .aga-hero__inner { padding: 40px 20px; }\r\n  .aga-transfer__wrap { width: 95%; }\r\n  .form__grid--two { grid-template-columns: 1fr; gap: 16px; }\r\n  .btn { padding: 14px 24px; font-size: 15px; min-height: 50px; min-width: 180px; }\r\n}\r\n\r\n\/* Ensure proper button alignment *\/\r\n.button-content { display:flex !important; align-items:center !important; justify-content:center !important; gap:8px; width:100%; }\r\n<\/style>\r\n<\/head>\r\n<body>\r\n\r\n<section class=\"aga-transfer\" id=\"agadir-airport-transfer\" aria-label=\"Agadir a Essaouira Traslado reserva\">\r\n  <!-- ENHANCED HERO BANNER - MOBILE OPTIMIZED -->\r\n  <div class=\"aga-hero\" role=\"banner\" aria-label=\"Agadir a Essaouira H\u00e9roe del traslado\">\r\n    <div class=\"aga-hero__inner\">\r\n      <span class=\"aga-hero__eyebrow\">Transferencias Premium<\/span>\r\n      <h1 class=\"aga-hero__title\">\r\n        De Agadir a <strong>Essaouira<\/strong>\r\n      <\/h1>\r\n      <p class=\"aga-hero__sub\">\r\n        Disfrute de traslados fluidos con conductores profesionales desde la ciudad o el aeropuerto de Agadir hasta la ciudad o el aeropuerto de Essaouira. Viajes costeros r\u00e1pidos, fiables y c\u00f3modos.\r\n      <\/p>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <div class=\"aga-transfer__wrap\">\r\n    <!-- Enhanced Heading -->\r\n    <header class=\"aga-transfer__head\">\r\n      <span class=\"aga-transfer__eyebrow\">Asegure su transferencia<\/span>\r\n      <h2 class=\"aga-transfer__title\">Reserve su traslado a Essaouira<\/h2>\r\n      <p class=\"aga-transfer__sub\">Rellene el siguiente formulario para confirmar su reserva. El precio es de <strong>$70 tarifa plana<\/strong> con confirmaci\u00f3n inmediata.<\/p>\r\n      <div class=\"badges\" aria-label=\"Funciones Premium\">\r\n        <span class=\"badge\" title=\"Servicio personal de bienvenida\">\r\n          <svg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"><path d=\"M8 11l4 4 9-9\"\/><path d=\"M21 7v6a6 6 0 0 1-6 6H7l-4 4V9a6 6 0 0 1 6-6h6\"\/><\/svg>\r\n          Encuentro personal\r\n        <\/span>\r\n        <span class=\"badge\" title=\"Servicio 24 horas\">\r\n          <svg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\"><circle cx=\"12\" cy=\"12\" r=\"9\"\/><path d=\"M12 7v5l3 3\"\/><\/svg>\r\n          Disponibilidad 24\/7\r\n        <\/span>\r\n        <span class=\"badge\" title=\"Tarifa plana\">\r\n          <svg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\">\r\n            <path d=\"M12 1v22M5 6h14a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2z\"\/>\r\n          <\/svg>\r\n          $70 Tarifa plana\r\n        <\/span>\r\n      <\/div>\r\n    <\/header>\r\n\r\n    <!-- Enhanced Grid -->\r\n    <div class=\"aga-transfer__grid\">\r\n      <!-- Enhanced Form -->\r\n      <form class=\"card form\" id=\"transferForm\" aria-label=\"Essaouira traslado formulario de reserva\" novalidate action=\"\">\r\n        \r\n        <div class=\"form__section-title\">Detalles de la transferencia<\/div>\r\n        \r\n        <!-- Row 1 -->\r\n        <div class=\"form__grid form__grid--two\">\r\n          <div>\r\n            <label for=\"pickupType\">Lugar de recogida *<\/label>\r\n            <select id=\"pickupType\" name=\"pickupType\" class=\"select\" required>\r\n              <option value=\"\">Seleccione el lugar de recogida<\/option>\r\n              <option>Aeropuerto Internacional de Agadir (AGA)<\/option>\r\n              <option>Ciudad de Agadir - Hotel<\/option>\r\n              <option>Ciudad de Agadir - Residencia \/ Airbnb<\/option>\r\n              <option>Otra ubicaci\u00f3n en Agadir<\/option>\r\n            <\/select>\r\n            <p class=\"help\">Especifique d\u00f3nde nos encontraremos en Agadir<\/p>\r\n          <\/div>\r\n\r\n          <div>\r\n            <label for=\"pickupAddress\">Direcci\u00f3n de recogida *<\/label>\r\n            <input id=\"pickupAddress\" name=\"pickupAddress\" class=\"input\" placeholder=\"por ejemplo, Terminal de llegadas AGA, nombre y zona del hotel\" required>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <!-- Row 2 -->\r\n        <div class=\"form__grid form__grid--two\">\r\n          <div>\r\n            <label for=\"destination\">Destino en Essaouira *<\/label>\r\n            <input id=\"destination\" name=\"destination\" class=\"input\" placeholder=\"Introduzca su direcci\u00f3n de Essaouira, hotel o aeropuerto de Essaouira\" required>\r\n            <p class=\"help\">Hotel, residencia o aeropuerto de Essaouira<\/p>\r\n          <\/div>\r\n\r\n          <div>\r\n            <label for=\"flightNumber\">N\u00famero de vuelo (si procede)<\/label>\r\n            <input id=\"flightNumber\" name=\"flightNumber\" class=\"input\" placeholder=\"por ejemplo, AT460 \/ FR1234\">\r\n            <p class=\"help\">Supervisamos el estado de los vuelos para recogerlos a tiempo<\/p>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <!-- Row 3 -->\r\n        <div class=\"form__grid form__grid--two\">\r\n          <div>\r\n            <label for=\"date\">Fecha de transferencia *<\/label>\r\n            <input type=\"date\" id=\"date\" name=\"date\" class=\"input\" required>\r\n          <\/div>\r\n          <div>\r\n            <label for=\"time\">Tiempo de transferencia *<\/label>\r\n            <input type=\"time\" id=\"time\" name=\"time\" class=\"input\" placeholder=\"08:30\" required>\r\n            <p class=\"help\">Hora de recogida preferida<\/p>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"form__section-title\">Informaci\u00f3n para pasajeros<\/div>\r\n        \r\n        <!-- Row 4 -->\r\n        <div class=\"form__grid form__grid--two\">\r\n          <div>\r\n            <label for=\"fullName\">Nombre completo *<\/label>\r\n            <input id=\"fullName\" name=\"fullName\" class=\"input\" placeholder=\"Su nombre completo seg\u00fan identificaci\u00f3n\" required>\r\n          <\/div>\r\n          <div>\r\n            <label for=\"email\">Direcci\u00f3n de correo electr\u00f3nico<\/label>\r\n            <input type=\"email\" id=\"email\" name=\"email\" class=\"input\" placeholder=\"you@example.com\" required>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <!-- Row 5 -->\r\n        <div class=\"form__grid form__grid--two\">\r\n          <div>\r\n            <label for=\"mobile\">N\u00famero de m\u00f3vil *<\/label>\r\n            <input type=\"tel\" id=\"mobile\" name=\"mobile\" class=\"input\" placeholder=\"+212 6 00 00 00 00\" required>\r\n            <p class=\"help\">Incluya el prefijo del pa\u00eds para los n\u00fameros internacionales<\/p>\r\n          <\/div>\r\n\r\n          <div>\r\n            <label for=\"passengers\">N\u00famero de pasajeros *<\/label>\r\n            <input type=\"number\" min=\"1\" value=\"1\" id=\"passengers\" name=\"passengers\" class=\"input\" required>\r\n            <p class=\"help\">Tarifa plana de $70 independientemente del n\u00famero de pasajeros<\/p>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <!-- Message -->\r\n        <div>\r\n          <label for=\"message\">Requisitos especiales<\/label>\r\n          <textarea id=\"message\" name=\"message\" class=\"textarea\" placeholder=\"Cualquier petici\u00f3n especial (asientos para ni\u00f1os, equipaje adicional, necesidades de accesibilidad, etc.)\"><\/textarea>\r\n        <\/div>\r\n\r\n        <!-- Success and Error Messages -->\r\n        <div id=\"successMessage\" class=\"success-message\">\r\n          \u2705 \u00a1Gracias! Su solicitud de traslado se ha enviado correctamente. En breve nos pondremos en contacto con usted para confirmar su reserva.\r\n        <\/div>\r\n        \r\n        <div id=\"errorMessage\" class=\"error-message\">\r\n          \u274c Se ha producido un error al enviar tu solicitud. Por favor, int\u00e9ntelo de nuevo o p\u00f3ngase en contacto con nosotros directamente a trav\u00e9s de WhatsApp.\r\n        <\/div>\r\n\r\n        <!-- Enhanced Price & Actions -->\r\n        <div class=\"form__footer\">\r\n          <div class=\"price-box\" title=\"Tarifa plana\">\r\n            <span class=\"small\">Importe total:<\/span>\r\n            <b>$<\/b>\r\n            <input type=\"number\" id=\"price\" step=\"0.01\" min=\"0\" value=\"70.00\" aria-label=\"Precio total\" readonly>\r\n          <\/div>\r\n\r\n          <div class=\"form__actions\">\r\n            <button type=\"submit\" class=\"btn btn--primary\" id=\"emailSubmit\">\r\n              <div class=\"button-content\">\r\n                <span>Reserve ahora<\/span>\r\n              <\/div>\r\n            <\/button>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <p class=\"small\" style=\"text-align: center; margin-top: 16px;\">Al enviar este formulario, acepta nuestras condiciones de servicio y nuestra pol\u00edtica de privacidad. Nos pondremos en contacto con usted para confirmar los detalles de su transferencia.<\/p>\r\n      <input type=\"hidden\" name=\"trp-form-language\" value=\"es\"\/><\/form>\r\n\r\n      <!-- Enhanced Info Column -->\r\n      <aside class=\"card info\" aria-label=\"Informaci\u00f3n de servicio\">\r\n        <h2 class=\"info__title\">Traslado de Agadir a Essaouira<\/h2>\r\n        <p><strong>Qu\u00e9 esperar<\/strong><br>\r\n        Proporcionamos un servicio de traslado muy bueno desde la ciudad de Agadir o el aeropuerto internacional de Agadir hasta la ciudad de Essaouira o el aeropuerto de Essaouira.<\/p>\r\n\r\n        <p>\u00a1Tenemos todo cubierto con los traslados privados disponibles desde y hacia el Aeropuerto Internacional de Agadir (AGA)! Tanto si viaja solo, en pareja, en familia o con un gran grupo de amigos, tenga la seguridad de que tenemos todo lo que necesita.<\/p>\r\n\r\n        <p>Una vez reservado su traslado a Essaouira con OKEYTOURS, todo lo que necesita hacer es buscar a su conductor sosteniendo un cartel personalizado con su nombre en \u00e9l, e ir directamente a su destino en ning\u00fan momento.<\/p>\r\n\r\n        <p>Para m\u00e1s traslados y destinos, visite Traslados al aeropuerto en la p\u00e1gina de inicio.<\/p>\r\n\r\n        <p>Para transferencias o destinos diferentes, p\u00f3ngase en contacto con nosotros, proporcionamos todos los destinos y transferencias.<\/p>\r\n\r\n        <ul class=\"info__list\">\r\n          <li><strong>Traslados privados<\/strong> de Agadir a la ciudad de Essaouira o al aeropuerto de Essaouira<\/li>\r\n          <li><strong>Todos los tipos de pasajeros<\/strong> individuales, parejas, familias y grupos<\/li>\r\n          <li><strong>Servicio operativo 24\/7<\/strong> con conductores profesionales<\/li>\r\n          <li><strong>Tarifa plana<\/strong> - $70 independientemente del n\u00famero de pasajeros<\/li>\r\n          <li><strong>Seguimiento del vuelo en tiempo real<\/strong> para hacer frente a los retrasos<\/li>\r\n          <li><strong>Encuentro y saludo personalizados<\/strong> con paneles identificativos<\/li>\r\n        <\/ul>\r\n\r\n        <hr class=\"hr\">\r\n\r\n        <h3 class=\"info__title\" style=\"font-size:20px;\">Reserve en menos de 60 segundos<\/h3>\r\n        <p class=\"small\">Nuestro equipo de atenci\u00f3n al cliente est\u00e1 disponible para responder a sus preguntas y confirmar su reserva al instante a trav\u00e9s de WhatsApp.<\/p>\r\n        <a class=\"btn btn--whatsapp\" href=\"https:\/\/wa.me\/212691436813\" target=\"_blank\" rel=\"noopener\" style=\"width: 100%; justify-content: center;\">\r\n          <div class=\"button-content\">\r\n            <svg class=\"whatsapp-icon\" viewbox=\"0 0 24 24\">\r\n              <path fill=\"currentColor\" d=\"M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893-.001-3.189-1.262-6.187-3.55-8.444\"\/>\r\n            <\/svg>\r\n            <span>Chatear en WhatsApp<\/span>\r\n          <\/div>\r\n        <\/a>\r\n      <\/aside>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<script>\r\n\/* ===== Enhanced Auto Price Calculation + EmailJS Integration ===== *\/\r\n(function(){\r\n  const FLAT_RATE = 70;\r\n\r\n  const form = document.getElementById('transferForm');\r\n  const emailBtn = document.getElementById('emailSubmit');\r\n  const paxEl = document.getElementById('passengers');\r\n  const priceEl = document.getElementById('price');\r\n  const successMessage = document.getElementById('successMessage');\r\n  const errorMessage = document.getElementById('errorMessage');\r\n\r\n  function updatePrice(){\r\n    \/\/ Flat rate - always $70 regardless of passenger count\r\n    priceEl.value = FLAT_RATE.toFixed(2);\r\n  }\r\n  paxEl.addEventListener('input', updatePrice);\r\n  updatePrice();\r\n\r\n  function validateRequired(){\r\n    const requiredIds = ['pickupType','pickupAddress','destination','date','time','fullName','email','mobile','passengers'];\r\n    let ok = true;\r\n    requiredIds.forEach(id=>{\r\n      const el = document.getElementById(id);\r\n      if(!el.value || (id==='passengers' && parseInt(el.value,10) < 1)){\r\n        el.setAttribute('aria-invalid','true'); \r\n        el.style.borderColor = '#dc2626'; \r\n        ok = false;\r\n      } else { \r\n        el.removeAttribute('aria-invalid'); \r\n        el.style.borderColor = ''; \r\n      }\r\n    });\r\n    return ok;\r\n  }\r\n\r\n  function buildSummary(){\r\n    const data = {\r\n      pickupType: document.getElementById('pickupType').value,\r\n      pickupAddress: document.getElementById('pickupAddress').value,\r\n      destination: document.getElementById('destination').value,\r\n      flightNumber: document.getElementById('flightNumber').value,\r\n      date: document.getElementById('date').value,\r\n      time: document.getElementById('time').value,\r\n      fullName: document.getElementById('fullName').value,\r\n      email: document.getElementById('email').value,\r\n      mobile: document.getElementById('mobile').value,\r\n      passengers: Math.max(1, parseInt(document.getElementById('passengers').value || 1, 10)),\r\n      price: priceEl.value,\r\n      message: document.getElementById('message').value\r\n    };\r\n\r\n    return {\r\n      summaryText: `NEW ESSAOUIRA TRANSFER REQUEST\r\n\r\nTRANSFER DETAILS:\r\n\u2022 Pickup Type: ${data.pickupType}\r\n\u2022 Pickup Address: ${data.pickupAddress}\r\n\u2022 Destination: ${data.destination}\r\n\u2022 Flight Number: ${data.flightNumber || 'Not provided'}\r\n\u2022 Date: ${data.date}\r\n\u2022 Time: ${data.time}\r\n\r\nPASSENGER INFORMATION:\r\n\u2022 Name: ${data.fullName}\r\n\u2022 Email: ${data.email}\r\n\u2022 Mobile: ${data.mobile}\r\n\u2022 Number of Passengers: ${data.passengers}\r\n\r\nPRICING:\r\n\u2022 Total Amount: $${parseFloat(data.price || 0).toFixed(2)} (Flat Rate)\r\n\r\nSPECIAL REQUIREMENTS:\r\n${data.message || 'No special requirements provided'}\r\n\r\nThank you for choosing our premium transfer service to Essaouira!`,\r\n      emailData: data\r\n    };\r\n  }\r\n\r\n  \/\/ EmailJS Function\r\n  form.addEventListener('submit', async function(e){\r\n    e.preventDefault();\r\n    \r\n    if(!validateRequired()){ \r\n      alert('Please complete all required fields marked with *'); \r\n      return; \r\n    }\r\n    \r\n    updatePrice();\r\n    \r\n    \/\/ Show loading state\r\n    emailBtn.classList.add('btn--loading');\r\n    emailBtn.disabled = true;\r\n    \r\n    \/\/ Hide previous messages\r\n    successMessage.style.display = 'none';\r\n    errorMessage.style.display = 'none';\r\n    \r\n    const { summaryText, emailData } = buildSummary();\r\n    \r\n    try {\r\n      const response = await emailjs.send(\r\n        'service_s4uoscs',  \/\/ Service ID\r\n        'template_wphj7tx', \/\/ Template ID\r\n        {\r\n          from_name: emailData.fullName,\r\n          from_email: emailData.email,\r\n          phone: emailData.mobile,\r\n          pickup_type: emailData.pickupType,\r\n          pickup_address: emailData.pickupAddress,\r\n          destination: emailData.destination,\r\n          flight_number: emailData.flightNumber || 'Not provided',\r\n          date: emailData.date,\r\n          time: emailData.time,\r\n          passengers: emailData.passengers,\r\n          total_price: `$${emailData.price}`,\r\n          message: emailData.message || 'No special requirements',\r\n          full_summary: summaryText\r\n        }\r\n      );\r\n      console.log('Email sent successfully:', response);\r\n      successMessage.style.display = 'block';\r\n      form.reset();\r\n      updatePrice();\r\n      successMessage.scrollIntoView({ behavior: 'smooth', block: 'center' });\r\n    } catch (error) {\r\n      console.error('Email sending failed:', error);\r\n      errorMessage.style.display = 'block';\r\n      errorMessage.scrollIntoView({ behavior: 'smooth', block: 'center' });\r\n    } finally {\r\n      emailBtn.classList.remove('btn--loading');\r\n      emailBtn.disabled = false;\r\n    }\r\n  });\r\n})();\r\n<\/script>\r\n\r\n<!-- ===== Enhanced JSON-LD for SEO ===== -->\r\n<script type=\"application\/ld+json\">{\n    \"@context\": \"https:\\\/\\\/schema.org\",\n    \"@type\": \"Service\",\n    \"name\": \"Agadir to Essaouira Transfer Service\",\n    \"provider\": {\n        \"@type\": \"LocalBusiness\",\n        \"name\": \"Agadir Desert Tour\",\n        \"url\": \"https:\\\/\\\/agadirdeserttour.com\\\/\",\n        \"telephone\": \"+212691436813\",\n        \"address\": {\n            \"@type\": \"PostalAddress\",\n            \"addressLocality\": \"Agadir\",\n            \"addressCountry\": \"MA\"\n        }\n    },\n    \"areaServed\": [\n        \"Agadir\",\n        \"Essaouira\"\n    ],\n    \"serviceType\": \"Private transfer service\",\n    \"description\": \"Premium private transfers from Agadir city or airport to Essaouira city or Essaouira Airport. 24\\\/7 professional service.\",\n    \"offers\": {\n        \"@type\": \"Offer\",\n        \"priceCurrency\": \"USD\",\n        \"price\": \"70.00\",\n        \"description\": \"Flat rate transfer service to Essaouira\"\n    }\n}<\/script>\r\n\r\n<\/body>\r\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>Agadir Transfer to Essaouira | Private Transfers 24\/7 Premium Transfers Agadir to Essaouira Experience seamless transfers with professional drivers from Agadir city or airport to Essaouira city or Essaouira Airport. Fast, reliable, and comfortable coastal journeys. Secure Your Transfer Book Your Transfer to Essaouira Complete the form below for a confirmed booking. Price is $70 [&hellip;]<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-2932","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/agadirdeserttour.com\/es\/wp-json\/wp\/v2\/pages\/2932","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/agadirdeserttour.com\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/agadirdeserttour.com\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/agadirdeserttour.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/agadirdeserttour.com\/es\/wp-json\/wp\/v2\/comments?post=2932"}],"version-history":[{"count":4,"href":"https:\/\/agadirdeserttour.com\/es\/wp-json\/wp\/v2\/pages\/2932\/revisions"}],"predecessor-version":[{"id":2944,"href":"https:\/\/agadirdeserttour.com\/es\/wp-json\/wp\/v2\/pages\/2932\/revisions\/2944"}],"wp:attachment":[{"href":"https:\/\/agadirdeserttour.com\/es\/wp-json\/wp\/v2\/media?parent=2932"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}