<!– ============================================================
moroccantraveltrips.com
Lista de ciudades de Marruecos — Guía regional completa 2026
Arquitectura unificada — Leaflet aislado — Responsive estable
============================================================ –>
<!– Fuentes –>
<link rel=”preconnect” href=”https://fonts.googleapis.com”>
<link rel=”preconnect” href=”https://fonts.gstatic.com” crossorigin>
<link href=”https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&family=Source+Serif+4:opsz,wght@8..60,300;8..60,400;8..60,600&family=DM+Sans:wght@300;400;500;600&display=swap” rel=”stylesheet”>
<!– Leaflet CSS –>
<link rel=”stylesheet” href=”https://unpkg.com/leaflet@1.9.4/dist/leaflet.css” crossorigin=””>
<style>
/* ============================================================
AISLAMIENTO LEAFLET — fuera del scope .vmr-es
Resuelve el conflicto box-sizing causado por el wildcard
============================================================ */
#vmres-map-el,
#vmres-map-el * {
box-sizing: content-box !important;
font-size: 12px !important;
line-height: 1.5 !important;
list-style: disc !important;
}
.leaflet-container {
font-family: system-ui, sans-serif !important;
background: #e8e0d8 !important;
}
.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
box-shadow: 0 4px 16px rgba(0,0,0,.18) !important;
}
/* ============================================================
SCOPE PRINCIPAL : .vmr-es
Contenedor único — cero contaminación en el resto de la página
============================================================ */
.vmr-es {
–br: #8B4513;
–br-lt: #F5ECE3;
–br-dk: #5C2E0A;
–gd: #C8962A;
–gd-lt: #FBF5DF;
–gd-dk: #8B6914;
–tl: #1E5A7D;
–tl-lt: #EAF3FA;
–tl-dk: #123D56;
–grn: #4A7A3D;
–sand: #F5EFE6;
–sand2: #EDE3D4;
–ink: #1C140C;
–inkm: #3A2E22;
–inks: #7A6A55;
–surf: #FFFFFF;
–bdr: #DDD0BE;
–rr: 12px;
–rs: 8px;
–sh: 0 3px 18px rgba(28,20,12,.07);
–shm: 0 10px 40px rgba(28,20,12,.14);
font-family: ‘DM Sans’, system-ui, sans-serif !important;
font-size: 16px !important;
line-height: 1.75 !important;
color: var(–inkm) !important;
max-width: 960px !important;
margin: 0 auto !important;
padding: 0 !important;
background: transparent !important;
display: block !important;
}
.vmr-es *:not(#vmres-map-el):not(#vmres-map-el *) {
box-sizing: border-box !important;
list-style: none !important;
}
.vmr-es a {
color: var(–br) !important;
font-weight: 600 !important;
text-decoration-color: var(–gd) !important;
}
/* ── CABECERA ── */
.vmr-es .es-mast {
background: linear-gradient(155deg, var(–tl-dk) 0%, var(–br-dk) 52%, var(–gd-dk) 100%) !important;
border-radius: var(–rr) !important;
padding: 52px 40px 44px !important;
margin: 0 0 28px !important;
position: relative !important;
overflow: hidden !important;
display: block !important;
}
.vmr-es .es-mast::before {
content: ” !important;
position: absolute !important;
inset: 0 !important;
background: url(“data:image/svg+xml,%3Csvg width=’60’ height=’60’ xmlns=’http://www.w3.org/2000/svg’%3E%3Cg fill=’%23fff’ fill-opacity=’.04’%3E%3Cpath d=’M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z’/%3E%3C/g%3E%3C/svg%3E”) !important;
pointer-events: none !important;
}
.vmr-es .es-mast-pre {
display: inline-flex !important;
align-items: center !important;
gap: 6px !important;
background: rgba(255,255,255,.12) !important;
border: 1px solid rgba(255,255,255,.22) !important;
border-radius: 99px !important;
padding: 4px 14px !important;
font-size: .7rem !important;
font-weight: 700 !important;
text-transform: uppercase !important;
letter-spacing: .1em !important;
color: rgba(255,255,255,.92) !important;
margin: 0 0 16px !important;
position: relative !important;
z-index: 2 !important;
}
.vmr-es .es-mast-title {
font-family: ‘Playfair Display’, Georgia, serif !important;
font-size: 2.4rem !important;
font-weight: 700 !important;
color: #fff !important;
display: block !important;
margin: 0 0 12px !important;
line-height: 1.18 !important;
text-shadow: 0 2px 18px rgba(0,0,0,.32) !important;
position: relative !important;
z-index: 2 !important;
}
.vmr-es .es-mast-sub {
font-size: .95rem !important;
color: rgba(255,255,255,.84) !important;
max-width: 630px !important;
display: block !important;
line-height: 1.65 !important;
position: relative !important;
z-index: 2 !important;
margin: 0 0 22px !important;
}
.vmr-es .es-stats {
display: flex !important;
gap: 16px !important;
flex-wrap: wrap !important;
position: relative !important;
z-index: 2 !important;
margin: 0 !important;
padding: 0 !important;
}
.vmr-es .es-stat {
background: rgba(255,255,255,.1) !important;
border: 1px solid rgba(255,255,255,.18) !important;
border-radius: var(–rs) !important;
padding: 10px 18px !important;
text-align: center !important;
min-width: 80px !important;
margin: 0 !important;
}
.vmr-es .es-stat-n {
font-family: ‘Playfair Display’, Georgia, serif !important;
font-size: 1.5rem !important;
font-weight: 700 !important;
color: #C8962A !important;
display: block !important;
line-height: 1 !important;
margin: 0 0 3px !important;
}
.vmr-es .es-stat-l {
font-size: .68rem !important;
color: rgba(255,255,255,.75) !important;
text-transform: uppercase !important;
letter-spacing: .06em !important;
display: block !important;
margin: 0 !important;
}
/* ── RESPUESTA RÁPIDA ── */
.vmr-es .es-qa {
background: var(–sand) !important;
border: 2px solid var(–gd) !important;
border-radius: var(–rr) !important;
padding: 20px 24px !important;
margin: 0 0 26px !important;
display: block !important;
}
.vmr-es .es-qa-badge {
font-size: .68rem !important;
font-weight: 700 !important;
text-transform: uppercase !important;
letter-spacing: .09em !important;
color: var(–gd-dk) !important;
display: block !important;
margin: 0 0 7px !important;
}
.vmr-es .es-qa-title {
font-family: ‘Playfair Display’, Georgia, serif !important;
font-size: 1.2rem !important;
font-weight: 700 !important;
color: var(–ink) !important;
display: block !important;
margin: 0 0 9px !important;
line-height: 1.3 !important;
}
.vmr-es .es-qa-body {
font-size: .93rem !important;
color: var(–inkm) !important;
line-height: 1.72 !important;
display: block !important;
margin: 0 !important;
}
/* ── ÍNDICE ── */
.vmr-es .es-toc {
background: var(–surf) !important;
border: 1px solid var(–bdr) !important;
border-radius: var(–rr) !important;
padding: 20px 24px !important;
margin: 0 0 28px !important;
box-shadow: var(–sh) !important;
display: block !important;
}
.vmr-es .es-toc-title {
font-family: ‘Playfair Display’, Georgia, serif !important;
font-size: .86rem !important;
font-weight: 700 !important;
text-transform: uppercase !important;
letter-spacing: .08em !important;
color: var(–inks) !important;
display: block !important;
margin: 0 0 13px !important;
}
.vmr-es .es-toc-grid {
display: grid !important;
grid-template-columns: 1fr 1fr !important;
gap: 4px 20px !important;
margin: 0 !important;
padding: 0 !important;
}
.vmr-es .es-toc-item {
display: block !important;
font-size: .86rem !important;
padding: 3px 0 !important;
margin: 0 !important;
}
.vmr-es .es-toc-item a {
color: var(–tl) !important;
font-weight: 500 !important;
text-decoration: none !important;
}
.vmr-es .es-toc-item a:hover { text-decoration: underline !important; }
/* ── TÍTULOS ── */
.vmr-es .es-h2 {
font-family: ‘Playfair Display’, Georgia, serif !important;
font-size: 1.55rem !important;
font-weight: 700 !important;
color: var(–ink) !important;
margin: 44px 0 16px !important;
padding: 0 0 12px !important;
border-bottom: 2px solid var(–sand2) !important;
display: flex !important;
align-items: center !important;
gap: 10px !important;
line-height: 1.2 !important;
}
.vmr-es .es-h2::before {
content: ” !important;
display: inline-block !important;
width: 4px !important;
height: 22px !important;
background: linear-gradient(to bottom, var(–gd), var(–br)) !important;
border-radius: 3px !important;
flex-shrink: 0 !important;
margin: 0 !important;
}
.vmr-es .es-h3 {
font-family: ‘Playfair Display’, Georgia, serif !important;
font-size: 1.15rem !important;
font-weight: 700 !important;
color: var(–tl-dk) !important;
margin: 26px 0 10px !important;
display: block !important;
line-height: 1.25 !important;
}
/* ── TEXTO CUERPO ── */
.vmr-es .es-p {
font-family: ‘Source Serif 4’, Georgia, serif !important;
font-size: 1rem !important;
color: var(–inkm) !important;
margin: 0 0 15px !important;
line-height: 1.82 !important;
display: block !important;
}
/* ── TARJETAS CIUDADES IMPERIALES ── */
.vmr-es .es-cards {
display: grid !important;
grid-template-columns: repeat(2, 1fr) !important;
gap: 18px !important;
margin: 18px 0 !important;
padding: 0 !important;
}
.vmr-es .es-card {
background: var(–surf) !important;
border: 1px solid var(–bdr) !important;
border-radius: var(–rr) !important;
overflow: hidden !important;
box-shadow: var(–sh) !important;
display: flex !important;
flex-direction: column !important;
margin: 0 !important;
padding: 0 !important;
transition: box-shadow .25s ease, transform .25s ease !important;
}
.vmr-es .es-card:hover {
box-shadow: var(–shm) !important;
transform: translateY(-3px) !important;
}
.vmr-es .es-card-img {
width: 100% !important;
height: 160px !important;
object-fit: cover !important;
display: block !important;
border: none !important;
margin: 0 !important;
padding: 0 !important;
flex-shrink: 0 !important;
}
.vmr-es .es-card-body {
padding: 16px !important;
flex: 1 !important;
margin: 0 !important;
display: flex !important;
flex-direction: column !important;
}
.vmr-es .es-card-name {
font-family: ‘Playfair Display’, Georgia, serif !important;
font-size: 1.05rem !important;
font-weight: 700 !important;
color: var(–tl-dk) !important;
display: block !important;
margin: 0 0 7px !important;
line-height: 1.25 !important;
}
.vmr-es .es-card-desc {
font-size: .84rem !important;
color: var(–inks) !important;
line-height: 1.62 !important;
display: block !important;
margin: 0 0 10px !important;
flex: 1 !important;
}
.vmr-es .es-card-meta {
background: var(–sand) !important;
border-radius: var(–rs) !important;
padding: 9px 12px !important;
margin: 0 !important;
font-size: .78rem !important;
line-height: 1.6 !important;
display: block !important;
}
.vmr-es .es-card-meta strong {
color: var(–tl-dk) !important;
font-weight: 700 !important;
}
.vmr-es .es-tag {
display: inline-block !important;
margin: 8px 0 0 !important;
background: var(–gd-lt) !important;
border: 1px solid var(–gd) !important;
color: var(–gd-dk) !important;
font-size: .67rem !important;
font-weight: 700 !important;
text-transform: uppercase !important;
letter-spacing: .07em !important;
padding: 3px 10px !important;
border-radius: 99px !important;
}
/* ── BLOQUES DE CIUDAD ── */
.vmr-es .es-city {
border-bottom: 1px solid var(–bdr) !important;
padding: 22px 0 !important;
margin: 0 !important;
display: block !important;
}
.vmr-es .es-city:last-of-type { border-bottom: none !important; }
.vmr-es .es-city-img {
width: 100% !important;
height: 200px !important;
object-fit: cover !important;
border-radius: var(–rs) !important;
display: block !important;
margin: 0 0 12px !important;
border: none !important;
}
.vmr-es .es-infobar {
background: var(–sand) !important;
border-left: 4px solid var(–gd) !important;
border-radius: 0 var(–rs) var(–rs) 0 !important;
padding: 10px 14px !important;
margin: 10px 0 0 !important;
font-size: .82rem !important;
line-height: 1.62 !important;
display: block !important;
}
.vmr-es .es-infobar strong {
color: var(–tl-dk) !important;
font-weight: 700 !important;
display: block !important;
margin: 0 0 2px !important;
}
/* ── TABLA ── */
.vmr-es .es-tw {
overflow-x: auto !important;
-webkit-overflow-scrolling: touch !important;
border-radius: var(–rs) !important;
border: 1px solid var(–bdr) !important;
box-shadow: var(–sh) !important;
margin: 16px 0 !important;
display: block !important;
}
.vmr-es .es-t {
width: 100% !important;
border-collapse: collapse !important;
font-size: .84rem !important;
min-width: 520px !important;
margin: 0 !important;
background: var(–surf) !important;
}
.vmr-es .es-t thead tr {
background: linear-gradient(135deg, var(–tl-dk), var(–tl)) !important;
}
.vmr-es .es-t th {
color: #fff !important;
padding: 11px 14px !important;
text-align: left !important;
font-size: .72rem !important;
font-weight: 700 !important;
letter-spacing: .06em !important;
text-transform: uppercase !important;
border: none !important;
white-space: nowrap !important;
margin: 0 !important;
}
.vmr-es .es-t td {
padding: 10px 14px !important;
border: none !important;
border-bottom: 1px solid var(–bdr) !important;
color: var(–inkm) !important;
vertical-align: top !important;
line-height: 1.55 !important;
margin: 0 !important;
}
.vmr-es .es-t tr:nth-child(even) td { background: var(–sand) !important; }
.vmr-es .es-t tr:last-child td { border-bottom: none !important; }
.vmr-es .es-t td:first-child { font-weight: 700 !important; color: var(–tl-dk) !important; }
/* ── ITINERARIOS ── */
.vmr-es .es-routes {
display: grid !important;
grid-template-columns: repeat(2, 1fr) !important;
gap: 14px !important;
margin: 16px 0 !important;
padding: 0 !important;
}
.vmr-es .es-route {
background: var(–surf) !important;
border: 1px solid var(–bdr) !important;
border-top: 4px solid var(–br) !important;
border-radius: var(–rs) !important;
padding: 16px !important;
margin: 0 !important;
box-shadow: var(–sh) !important;
}
.vmr-es .es-route:nth-child(2) { border-top-color: var(–tl) !important; }
.vmr-es .es-route:nth-child(3) { border-top-color: var(–grn) !important; }
.vmr-es .es-route:nth-child(4) { border-top-color: var(–gd-dk) !important; }
.vmr-es .es-route-name {
font-family: ‘Playfair Display’, Georgia, serif !important;
font-size: 1rem !important;
font-weight: 700 !important;
color: var(–ink) !important;
display: block !important;
margin: 0 0 9px !important;
line-height: 1.25 !important;
}
.vmr-es .es-route-row {
display: flex !important;
gap: 8px !important;
font-size: .83rem !important;
margin: 0 0 5px !important;
padding: 0 !important;
color: var(–inkm) !important;
}
.vmr-es .es-route-row .rl {
font-weight: 700 !important;
color: var(–ink) !important;
width: 80px !important;
flex-shrink: 0 !important;
margin: 0 !important;
}
.vmr-es .es-route-desc {
font-size: .8rem !important;
color: var(–inks) !important;
line-height: 1.58 !important;
margin: 9px 0 0 !important;
display: block !important;
padding-top: 9px !important;
border-top: 1px solid var(–bdr) !important;
}
/* ── MAPA LEAFLET ── */
.vmr-es .es-map-wrap {
border-radius: var(–rr) !important;
overflow: hidden !important;
border: 1px solid var(–bdr) !important;
box-shadow: var(–shm) !important;
margin: 18px 0 28px !important;
display: block !important;
}
.vmr-es .es-map-hdr {
background: linear-gradient(135deg, var(–tl-dk), var(–tl)) !important;
padding: 14px 20px !important;
display: block !important;
}
.vmr-es .es-map-hdr-t {
font-family: ‘Playfair Display’, Georgia, serif !important;
font-size: 1rem !important;
font-weight: 700 !important;
color: #fff !important;
display: block !important;
margin: 0 0 3px !important;
}
.vmr-es .es-map-hdr-s {
font-size: .76rem !important;
color: rgba(255,255,255,.72) !important;
display: block !important;
margin: 0 !important;
}
#vmres-map-el {
height: 480px !important;
width: 100% !important;
display: block !important;
}
.vmr-es .es-map-leg {
background: var(–sand) !important;
padding: 10px 18px !important;
display: flex !important;
gap: 16px !important;
flex-wrap: wrap !important;
align-items: center !important;
font-size: .77rem !important;
color: var(–inks) !important;
}
.vmr-es .es-map-leg span {
display: inline-flex !important;
align-items: center !important;
gap: 6px !important;
}
.vmr-es .es-map-leg i {
width: 11px !important;
height: 11px !important;
border-radius: 50% !important;
display: inline-block !important;
flex-shrink: 0 !important;
}
/* ── SECCIÓN ALFABÉTICA ── */
.vmr-es .es-alpha {
background: var(–surf) !important;
border: 1px solid var(–bdr) !important;
border-radius: var(–rr) !important;
padding: 22px 24px !important;
margin: 18px 0 !important;
box-shadow: var(–sh) !important;
display: block !important;
}
.vmr-es .es-alpha-intro {
font-size: .87rem !important;
color: var(–inks) !important;
margin: 0 0 16px !important;
display: block !important;
line-height: 1.6 !important;
}
.vmr-es .es-alpha-grid {
display: grid !important;
grid-template-columns: repeat(4, 1fr) !important;
gap: 5px 14px !important;
margin: 0 0 4px !important;
padding: 0 !important;
}
.vmr-es .es-alpha-item {
display: block !important;
font-size: .83rem !important;
color: var(–inkm) !important;
padding: 5px 0 !important;
margin: 0 !important;
border-bottom: 1px solid var(–sand2) !important;
line-height: 1.4 !important;
}
.vmr-es .es-alpha-item .al {
font-size: .62rem !important;
font-weight: 700 !important;
color: var(–inks) !important;
text-transform: uppercase !important;
letter-spacing: .04em !important;
display: block !important;
}
.vmr-es .es-alpha-more {
display: none !important;
grid-template-columns: repeat(4, 1fr) !important;
gap: 5px 14px !important;
margin: 5px 0 0 !important;
padding: 0 !important;
}
.vmr-es .es-alpha-more.open {
display: grid !important;
}
.vmr-es .es-alpha-btn-wrap {
text-align: center !important;
margin: 14px 0 0 !important;
padding: 0 !important;
display: block !important;
}
.vmr-es .es-alpha-btn {
display: inline-flex !important;
align-items: center !important;
gap: 7px !important;
background: var(–tl-lt) !important;
border: 1.5px solid var(–tl) !important;
color: var(–tl-dk) !important;
font-weight: 700 !important;
font-size: .83rem !important;
padding: 9px 22px !important;
border-radius: 99px !important;
cursor: pointer !important;
letter-spacing: .02em !important;
font-family: ‘DM Sans’, system-ui, sans-serif !important;
transition: background .2s ease, color .2s ease !important;
}
.vmr-es .es-alpha-btn:hover {
background: var(–tl) !important;
color: #fff !important;
}
.vmr-es .es-alpha-lang {
display: block !important;
font-size: .74rem !important;
color: var(–inks) !important;
margin: 14px 0 0 !important;
padding: 10px 14px !important;
background: var(–sand) !important;
border-radius: var(–rs) !important;
line-height: 1.58 !important;
}
/* ── PREGUNTAS FRECUENTES ── */
.vmr-es .es-faqs {
display: flex !important;
flex-direction: column !important;
gap: 9px !important;
margin: 14px 0 !important;
}
.vmr-es details.es-fq {
background: var(–surf) !important;
border: 1px solid var(–bdr) !important;
border-radius: var(–rs) !important;
overflow: hidden !important;
box-shadow: var(–sh) !important;
margin: 0 !important;
display: block !important;
}
.vmr-es details.es-fq summary {
padding: 13px 17px !important;
font-weight: 600 !important;
font-size: .92rem !important;
color: var(–ink) !important;
border-left: 3px solid var(–gd) !important;
cursor: pointer !important;
list-style: none !important;
display: flex !important;
justify-content: space-between !important;
align-items: center !important;
background: var(–surf) !important;
margin: 0 !important;
line-height: 1.4 !important;
user-select: none !important;
}
.vmr-es details.es-fq summary::-webkit-details-marker { display: none !important; }
.vmr-es details.es-fq summary::marker { display: none !important; }
.vmr-es details.es-fq summary::after {
content: ‘+’ !important;
font-size: 1.15rem !important;
color: var(–gd-dk) !important;
flex-shrink: 0 !important;
margin-left: 10px !important;
font-weight: 300 !important;
}
.vmr-es details.es-fq[open] summary::after { content: ‘−’ !important; }
.vmr-es details.es-fq[open] summary { background: var(–sand) !important; }
.vmr-es .es-fq-a {
padding: 8px 17px 15px !important;
font-size: .88rem !important;
color: var(–inks) !important;
line-height: 1.72 !important;
display: block !important;
border-top: 1px solid var(–bdr) !important;
margin: 0 !important;
}
/* ── LLAMADA A LA ACCIÓN ── */
.vmr-es .es-cta {
background: linear-gradient(135deg, var(–tl-dk) 0%, var(–grn) 100%) !important;
border-radius: var(–rr) !important;
padding: 30px 28px !important;
margin: 32px 0 !important;
display: flex !important;
align-items: center !important;
justify-content: space-between !important;
gap: 20px !important;
flex-wrap: wrap !important;
}
.vmr-es .es-cta-l { flex: 1 !important; min-width: 220px !important; margin: 0 !important; }
.vmr-es .es-cta-title {
font-family: ‘Playfair Display’, Georgia, serif !important;
font-size: 1.3rem !important;
font-weight: 700 !important;
color: #fff !important;
display: block !important;
margin: 0 0 7px !important;
line-height: 1.3 !important;
}
.vmr-es .es-cta-sub {
font-size: .85rem !important;
color: rgba(255,255,255,.82) !important;
display: block !important;
margin: 0 !important;
line-height: 1.55 !important;
}
.vmr-es .es-cta-btn {
display: inline-flex !important;
align-items: center !important;
gap: 8px !important;
background: linear-gradient(135deg, #C1441F, #a03819) !important;
color: #fff !important;
font-weight: 700 !important;
font-size: .88rem !important;
padding: 13px 22px !important;
border-radius: 99px !important;
text-decoration: none !important;
white-space: nowrap !important;
box-shadow: 0 4px 16px rgba(193,68,31,.38) !important;
margin: 0 !important;
border: none !important;
letter-spacing: .02em !important;
}
/* ── NOTA ── */
.vmr-es .es-disc {
background: var(–sand) !important;
border: 1px solid var(–bdr) !important;
border-radius: var(–rs) !important;
padding: 12px 16px !important;
font-size: .74rem !important;
color: var(–inks) !important;
margin: 26px 0 0 !important;
line-height: 1.65 !important;
display: block !important;
}
/* ── RESPONSIVE ── */
@media (max-width: 700px) {
.vmr-es .es-cards { grid-template-columns: 1fr !important; }
.vmr-es .es-routes { grid-template-columns: 1fr !important; }
.vmr-es .es-toc-grid { grid-template-columns: 1fr !important; }
.vmr-es .es-mast { padding: 34px 20px 28px !important; }
.vmr-es .es-mast-title { font-size: 1.85rem !important; }
.vmr-es .es-h2 { font-size: 1.3rem !important; }
.vmr-es .es-cta { flex-direction: column !important; align-items: flex-start !important; }
#vmres-map-el { height: 340px !important; }
.vmr-es .es-map-leg { gap: 10px !important; }
.vmr-es .es-stats { gap: 10px !important; }
.vmr-es .es-alpha-grid,
.vmr-es .es-alpha-more { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 420px) {
.vmr-es { font-size: 15px !important; }
.vmr-es .es-t th,
.vmr-es .es-t td { padding: 8px 9px !important; }
.vmr-es .es-card-img { height: 130px !important; }
.vmr-es .es-mast-title { font-size: 1.55rem !important; }
.vmr-es .es-alpha-grid,
.vmr-es .es-alpha-more { grid-template-columns: repeat(2, 1fr) !important; }
}
</style>
<!– ══════════════ CONTENIDO ══════════════ –>
<div class=”vmr-es”>
<!– CABECERA –>
<div class=”es-mast”>
<span class=”es-mast-pre”>🗺️ Guía de viaje a Marruecos · 2026</span>
<span class=”es-mast-title”>Lista de ciudades de Marruecos</span>
<span class=”es-mast-sub”>Guía regional completa de las principales ciudades de Marruecos — desde las capitales imperiales y los puertos atlánticos hasta los oasis del Sáhara y las ciudades de montaña.</span>
<div class=”es-stats”>
<div class=”es-stat”><span class=”es-stat-n”>12</span><span class=”es-stat-l”>Regiones</span></div>
<div class=”es-stat”><span class=”es-stat-n”>4</span><span class=”es-stat-l”>Ciudades imperiales</span></div>
<div class=”es-stat”><span class=”es-stat-n”>37M+</span><span class=”es-stat-l”>Habitantes</span></div>
<div class=”es-stat”><span class=”es-stat-n”>710K km²</span><span class=”es-stat-l”>Superficie</span></div>
</div>
</div>
<!– RESUMEN –>
<div class=”es-qa”>
<span class=”es-qa-badge”>📍 Resumen general</span>
<span class=”es-qa-title”>Marruecos tiene 12 regiones administrativas y cuatro ciudades imperiales</span>
<span class=”es-qa-body”>La red urbana marroquí gira en torno a cuatro ciudades imperiales — <strong>Fez, Marrakech, Meknes y Rabat</strong> — junto a la capital económica <strong>Casablanca</strong>, la puerta del norte <strong>Tánger</strong>, y decenas de ciudades costeras, de montaña y desérticas. El país está dividido oficialmente en <strong>12 regiones administrativas</strong>, subdivididas a su vez en provincias y prefecturas. Todos los datos demográficos de esta guía son estimaciones indicativas para 2024 y no constituyen cifras oficiales del censo.</span>
</div>
<!– ÍNDICE –>
<div class=”es-toc”>
<span class=”es-toc-title”>📑 Índice de contenidos</span>
<div class=”es-toc-grid”>
<div class=”es-toc-item”><a href=”#es-imperial”>Las ciudades imperiales</a></div>
<div class=”es-toc-item”><a href=”#es-urban”>Grandes metrópolis</a></div>
<div class=”es-toc-item”><a href=”#es-north”>Norte de Marruecos</a></div>
<div class=”es-toc-item”><a href=”#es-coast”>Costa atlántica</a></div>
<div class=”es-toc-item”><a href=”#es-south”>Sur de Marruecos</a></div>
<div class=”es-toc-item”><a href=”#es-sahara”>Sáhara y sureste</a></div>
<div class=”es-toc-item”><a href=”#es-map”>Mapa interactivo</a></div>
<div class=”es-toc-item”><a href=”#es-regions”>Regiones administrativas</a></div>
<div class=”es-toc-item”><a href=”#es-alpha”>Ciudades en orden alfabético</a></div>
<div class=”es-toc-item”><a href=”#es-routes”>Itinerarios sugeridos</a></div>
<div class=”es-toc-item”><a href=”#es-faq”>Preguntas frecuentes</a></div>
</div>
</div>
<!– INTRO –>
<span class=”es-p”>El paisaje urbano de Marruecos refleja siglos de comercio, saber y diversidad geográfica. Entender <a href=”https://moroccantraveltrips.com/es/donde-esta-marruecos/”>dónde está Marruecos</a> en el mapa del mundo ayuda a comprender por qué su red de ciudades resulta tan singular: el país ocupa el extremo noroeste de África, en la confluencia del Atlántico y el Mediterráneo, a escasos 14 km de Europa a través del estrecho de Gibraltar. Las <a href=”https://moroccantraveltrips.com/es/caracteristicas-fisicas-de-marruecos/”>características físicas de Marruecos</a> — el Atlas, el Rif, los valles saharianos y una extensa fachada costera — han moldeado directamente la identidad de cada ciudad a lo largo de los siglos. Desde las medinas amuralladas de las ciudades imperiales hasta las playas de surf de la fachada atlántica, pasando por el silencio de los oasis saharianos, cada ciudad lleva una identidad forjada por su región. Esta guía organiza las principales ciudades de Marruecos por región administrativa y temática turística, con estimaciones demográficas indicativas para 2024.</span>
<!– ══ 1. CIUDADES IMPERIALES ══ –>
<div class=”es-h2″ id=”es-imperial”>🏛️ Las cuatro ciudades imperiales de Marruecos</div>
<span class=”es-p”>Cuatro ciudades — Fez, Marrakech, Meknes y Rabat — sirvieron sucesivamente como capital real y conforman la columna vertebral histórica del reino alauí. Todas cuentan con reconocimiento en el Patrimonio Mundial de la UNESCO o un valor patrimonial excepcional, y siguen siendo referentes culturales indiscutibles de <a href=”https://moroccantraveltrips.com/es/por-que-es-conocido-marruecos/”>por qué es conocido Marruecos</a> en todo el mundo.</span>
<div class=”es-cards”>
<div class=”es-card”>
<img decoding=”async” class=”es-card-img”
src=”https://moroccantraveltrips.com/wp-content/uploads/2026/01/Fez.jpg”
alt=”Vista panorámica de la medina de Fez — la ciudad imperial más antigua de Marruecos”
width=”440″ height=”160″ loading=”lazy”>
<div class=”es-card-body”>
<span class=”es-card-name”>Fez — La capital espiritual</span>
<span class=”es-card-desc”>La ciudad imperial más antigua de Marruecos, sede de la universidad en funcionamiento continuo más antigua del mundo (Al-Qarawiyyin, fundada en 859) y de una medina laberíntica declarada Patrimonio de la Humanidad con más de 9.000 callejuelas.</span>
<div class=”es-card-meta”>
<strong>Población</strong> ~1,18 millones (est. 2024) · Región: Fez-Meknes<br>
<strong>Lugares imprescindibles</strong> Medina Fes el-Bali, Al-Qarawiyyin, tenerías Chouara
</div>
<span class=”es-tag”>Patrimonio Mundial UNESCO</span>
</div>
</div>
<div class=”es-card”>
<img decoding=”async” class=”es-card-img”
src=”https://moroccantraveltrips.com/wp-content/uploads/2026/01/Marrakech.webp”
alt=”Vista de Marrakech — la Ciudad Roja, principal polo turístico de Marruecos”
width=”440″ height=”160″ loading=”lazy”>
<div class=”es-card-body”>
<span class=”es-card-name”>Marrakech — La Ciudad Roja</span>
<span class=”es-card-desc”>La ciudad más visitada de Marruecos, famosa por sus murallas ocre-rojo, la legendaria plaza Jemaa el-Fna y una medina bulliciosa donde artesanos, mercados de especias y riads convertidos en hoteles boutique conviven a cada paso.</span>
<div class=”es-card-meta”>
<strong>Población</strong> ~1,01 millones (est. 2024) · Región: Marrakech-Safi<br>
<strong>Lugares imprescindibles</strong> Jemaa el-Fna, mezquita Koutoubia, palacio Bahia
</div>
<span class=”es-tag”>Destino turístico</span>
</div>
</div>
<div class=”es-card”>
<img decoding=”async” class=”es-card-img”
src=”https://moroccantraveltrips.com/wp-content/uploads/2026/01/Rabat.webp”
alt=”Vista de Rabat — capital política y administrativa de Marruecos en el Atlántico”
width=”440″ height=”160″ loading=”lazy”>
<div class=”es-card-body”>
<span class=”es-card-name”>Rabat — La capital moderna</span>
<span class=”es-card-desc”>Capital administrativa desde 1912, sede del Palacio Real, embajadas y ministerios. La ciudad combina un casco histórico declarado Patrimonio de la Humanidad con amplias avenidas modernas a orillas del Atlántico.</span>
<div class=”es-card-meta”>
<strong>Población</strong> ~516.000 (est. 2024) · Región: Rabat-Salé-Kenitra<br>
<strong>Lugares imprescindibles</strong> Torre Hassan, Kasbah de los Oudayas, necrópolis Chellah
</div>
<span class=”es-tag”>Capital política</span>
</div>
</div>
<div class=”es-card”>
<img decoding=”async” class=”es-card-img”
src=”https://moroccantraveltrips.com/wp-content/uploads/2026/01/Meknes.jpg”
alt=”Monumentos históricos de Meknes — cuarta ciudad imperial de Marruecos”
width=”440″ height=”160″ loading=”lazy”>
<div class=”es-card-body”>
<span class=”es-card-name”>Meknes — La joya arquitectónica</span>
<span class=”es-card-desc”>Construida por el sultán Moulay Ismail en el siglo XVII, Meknes asombra con sus puertas monumentales, graneros y establos de dimensiones excepcionales — a menudo llamada el «Versalles marroquí». Más tranquila y menos turística que las otras ciudades imperiales.</span>
<div class=”es-card-meta”>
<strong>Población</strong> ~557.000 (est. 2024) · Región: Fez-Meknes<br>
<strong>Lugares imprescindibles</strong> Bab Mansour, Heri es-Souani, Volubilis (30 km)
</div>
<span class=”es-tag”>Ciudad histórica</span>
</div>
</div>
</div>
<!– ══ 2. GRANDES METRÓPOLIS ══ –>
<div class=”es-h2″ id=”es-urban”>🏙️ Grandes metrópolis y polos económicos</div>
<span class=”es-p”>Más allá de las ciudades imperiales, varias grandes aglomeraciones impulsan la economía, el comercio y la conectividad internacional del Marruecos contemporáneo.</span>
<div class=”es-city”>
<img decoding=”async” class=”es-city-img”
src=”https://moroccantraveltrips.com/wp-content/uploads/2026/01/Casablanca.jpg”
alt=”Skyline de Casablanca — capital económica y mayor ciudad de Marruecos”
width=”900″ height=”200″ loading=”lazy”>
<div class=”es-h3″>Casablanca — La capital económica</div>
<span class=”es-p”>La mayor ciudad de Marruecos y su centro financiero. Casablanca alberga la Bolsa de Casablanca, los principales bancos del país y uno de los puertos más importantes de la fachada atlántica africana. La mezquita Hassan II — la séptima más grande del mundo — se eleva majestuosamente sobre el océano desde un promontorio costero.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 3,2 millones (est. 2024) · Región: Casablanca-Settat · Papel: Polo financiero e industrial</div>
</div>
<div class=”es-city”>
<div class=”es-h3″>Tánger — La puerta del norte</div>
<span class=”es-p”>Dominando el estrecho de Gibraltar en la confluencia del Atlántico y el Mediterráneo, Tánger es el principal nexo entre Marruecos y Europa. La ciudad cuenta con un gran puerto de aguas profundas, el terminal marroquí de la línea de alta velocidad Tánger-Casablanca y una próspera zona industrial (Tanger Med) en constante expansión. Si te preguntas si <a href=”https://moroccantraveltrips.com/es/es-seguro-viajar-a-marruecos/”>es seguro viajar a Marruecos</a>, Tánger es un excelente punto de entrada para comprobarlo: bien conectada con Europa y con una infraestructura turística moderna.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 1,28 millones (est. 2024) · Región: Tánger-Tetuán-Al Hoceima · Papel: Puerta marítima estratégica</div>
</div>
<div class=”es-city”>
<div class=”es-h3″>Agadir — Estación turística del Atlántico</div>
<span class=”es-p”>Reconstruida tras el devastador terremoto de 1960, Agadir es el principal balneario de Marruecos. Combina una extensa playa de arena fina, una consolidada infraestructura hotelera, un activo puerto pesquero y excelentes conexiones por carretera hacia el Anti-Atlas y la costa meridional.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 505.000 (est. 2024) · Región: Souss-Massa · Papel: Turismo y servicios</div>
</div>
<!– ══ 3. NORTE ══ –>
<div class=”es-h2″ id=”es-north”>⛰️ Norte de Marruecos — Ciudades de montaña y Mediterráneo</div>
<div class=”es-city”>
<div class=”es-h3″>Tetuán — La paloma blanca</div>
<span class=”es-p”>Enclavada entre el Rif y el Mediterráneo, Tetuán conserva una rica herencia andaluza. Su medina, inscrita en la Lista del Patrimonio Mundial de la UNESCO en 1997, refleja el legado arquitectónico de los exiliados moros expulsados de Granada a finales del siglo XV.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 469.000 (est. 2024) · Región: Tánger-Tetuán-Al Hoceima · Carácter: Mediterráneo y andaluz</div>
</div>
<div class=”es-city”>
<div class=”es-h3″>Chefchaouen — La ciudad azul del Rif</div>
<span class=”es-p”>Uno de los destinos más fotografiados de Marruecos, Chefchaouen es famosa por sus callejuelas de fachadas azules y su ambiente pausado encaramado en el Rif. Suficientemente pequeña para recorrerse a pie en un día, recompensa a quienes se quedan más tiempo: tiendas de artesanía, rutas de senderismo y un auténtico ritmo de vida serrano.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 36.000 (est. 2024) · Región: Tánger-Tetuán-Al Hoceima · Carácter: Pintoresco pueblo de montaña</div>
</div>
<div class=”es-city”>
<div class=”es-h3″>Al Hoceima — La bahía mediterránea</div>
<span class=”es-p”>Enmarcada por imponentes acantilados calcáreos y un parque nacional protegido, Al Hoceima es una de las localidades costeras más espectaculares de Marruecos. Sus playas, calas y carácter aún alejado del turismo masivo atraen a viajeros en busca de un Mediterráneo auténtico.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 396.000 (est. 2024) · Región: Tánger-Tetuán-Al Hoceima · Carácter: Litoral y naturaleza</div>
</div>
<!– ══ 4. COSTA ATLÁNTICA ══ –>
<div class=”es-h2″ id=”es-coast”>🌊 Ciudades de la costa atlántica</div>
<div class=”es-city”>
<div class=”es-h3″>Esauira — Puerto fortificado y ciudad de las artes</div>
<span class=”es-p”>Construida sobre un promontorio rocoso azotado por el viento del Atlántico, Esauira es una ciudad amurallada declarada Patrimonio de la Humanidad, célebre por su medina en azul y blanco, su animado puerto pesquero y una floreciente escena artística. El Festival Gnawa de Músicas del Mundo, celebrado cada junio, atrae a cerca de medio millón de visitantes.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 83.000 (est. 2024) · Región: Marrakech-Safi · Carácter: Ciudad costera y artística · Patrimonio UNESCO</div>
</div>
<div class=”es-city”>
<div class=”es-h3″>Safi — Puerto y capital de la cerámica</div>
<span class=”es-p”>Safi es a la vez un activo puerto pesquero y fosfatero, y la ciudad de referencia de la alfarería tradicional marroquí. Su kasbah y su fortaleza de época portuguesa ofrecen vistas privilegiadas sobre una ciudad que combina dinamismo industrial y artesanía de primer nivel.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 352.000 (est. 2024) · Región: Marrakech-Safi · Papel: Puerto industrial y centro artesanal</div>
</div>
<div class=”es-city”>
<div class=”es-h3″>Kenitra — Puerto atlántico moderno</div>
<span class=”es-p”>Situada cerca de la desembocadura del río Sebou, Kenitra es un importante hub industrial y logístico en el corredor Rabat-Casablanca, con un sector automovilístico y aeronáutico en fuerte expansión.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 508.000 (est. 2024) · Región: Rabat-Salé-Kenitra · Papel: Puerto y base industrial</div>
</div>
<!– ══ 5. SUR ══ –>
<div class=”es-h2″ id=”es-south”>🏺 Sur de Marruecos — Puertas del desierto y oasis</div>
<div class=”es-city”>
<div class=”es-h3″>Taroudant — La ciudad de las murallas intactas</div>
<span class=”es-p”>Rodeada por algunas de las murallas mejor conservadas de Marruecos, Taroudant es conocida como la «pequeña Marrakech» — más íntima, más tranquila y sin las multitudes turísticas. Sus dos zocos y sus tenerías ofrecen una visión auténtica de la artesanía tradicional del valle del Souss.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 71.000 (est. 2024) · Región: Souss-Massa · Atractivo: Murallas medievales intactas</div>
</div>
<div class=”es-city”>
<div class=”es-h3″>Tiznit — Joyería bereber y patrimonio</div>
<span class=”es-p”>Tiznit es la capital de la joyería en plata bereber de Marruecos. El zoco de los joyeros de su medina es uno de los más auténticos del sur, y los paisajes del Anti-Atlas circundante convierten a la ciudad en una excelente base para explorar la región.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 55.000 (est. 2024) · Región: Souss-Massa · Atractivo: Talleres de plata y acceso al Anti-Atlas</div>
</div>
<div class=”es-city”>
<div class=”es-h3″>Guelmim — La puerta del Sáhara</div>
<span class=”es-p”>Conocida históricamente como la «puerta del Sáhara», Guelmim marca la transición entre el Anti-Atlas y el desierto. Su mercado de camellos — celebrado cada sábado — es uno de los últimos mercados de dromedarios auténticos que quedan en Marruecos.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 98.000 (est. 2024) · Región: Guelmim-Oued Noun · Papel: Entrada a las rutas saharianas</div>
</div>
<div class=”es-city”>
<div class=”es-h3″>Dajla — La península del Sáhara atlántico</div>
<span class=”es-p”>Construida sobre una estrecha península de 40 km que bordea una gran laguna protegida, Dajla es la ciudad más meridional de Marruecos. Se ha convertido en un destino de fama mundial para el kitesurf, el windsurf y la exploración del desierto costero.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 56.000 (est. 2024) · Región: Dajla-Oued Ed-Dahab · Atractivo: Deportes náuticos y desierto costero</div>
</div>
<!– ══ 6. SÁHARA ══ –>
<div class=”es-h2″ id=”es-sahara”>🏜️ Ciudades del sureste sahariano</div>
<div class=”es-city”>
<div class=”es-h3″>Uarzazat — Capital del cine y puerta del desierto</div>
<span class=”es-p”>Situada a 1.160 m de altitud en el flanco sur del Alto Atlas, Uarzazat es el punto de partida de la Ruta de las Mil Kasbahs y alberga los estudios CLA, donde se rodaron <em>Lawrence de Arabia</em>, <em>Gladiator</em> y <em>Juego de Tronos</em>. El ksar de Aït Benhaddou, Patrimonio de la Humanidad, se encuentra a 30 km.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 57.000 (est. 2024) · Región: Draa-Tafilalet · Fama: Industria cinematográfica y rutas de kasbahs</div>
</div>
<div class=”es-city”>
<div class=”es-h3″>Errachidia — Capital del valle del Ziz</div>
<span class=”es-p”>Principal ciudad administrativa del sureste, Errachidia conecta los puertos de montaña del Alto Atlas con los oasis del valle del Ziz y sirve como base práctica para explorar los palmares y ksour de la zona de transición desértica.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 92.000 (est. 2024) · Región: Draa-Tafilalet · Papel: Capital administrativa y logística</div>
</div>
<div class=”es-city”>
<div class=”es-h3″>Zagora — Ciudad etapa de las rutas caravaneras</div>
<span class=”es-p”>El célebre cartel «Tombuctú 52 días» resume a la perfección el papel histórico de Zagora: punto de partida de las grandes rutas caravaneras transaharianas. El palmar del valle del Draa, que se extiende hacia el sur, es uno de los más bellos de Marruecos.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> 35.000 (est. 2024) · Región: Draa-Tafilalet · Atractivo: Palmar del Draa y acceso a las dunas</div>
</div>
<div class=”es-city”>
<div class=”es-h3″>Merzouga — Las dunas del Erg Chebbi</div>
<span class=”es-p”>Pequeña aldea a las puertas del Erg Chebbi — el campo de dunas más espectacular de Marruecos, con alturas de hasta 150 m — Merzouga es el destino ideal para los vivacs bajo las estrellas, los paseos en dromedario al atardecer y la observación astronómica bajo uno de los cielos más despejados del norte de África.</span>
<div class=”es-infobar”><strong>Población (aprox.)</strong> ~2.000 (est. 2024) · Región: Draa-Tafilalet · Atractivo: Dunas del Erg Chebbi, campamentos en el desierto</div>
</div>
<!– ══ 7. MAPA INTERACTIVO ══ –>
<div class=”es-h2″ id=”es-map”>🗺️ Mapa interactivo de las ciudades de Marruecos</div>
<span class=”es-p”>El mapa siguiente localiza las principales ciudades presentadas en esta guía. Situado en el noroeste de África, en el cruce del Atlántico y el Mediterráneo, Marruecos muestra de inmediato su posición geográfica estratégica. Haz clic en cualquier marcador para ver el nombre de la ciudad, su región y una breve descripción.</span>
<div class=”es-map-wrap”>
<div class=”es-map-hdr”>
<span class=”es-map-hdr-t”>Marruecos — Ciudades por región</span>
<span class=”es-map-hdr-s”>Haz clic en un marcador para ver los detalles · Usa +/− o pellizca para hacer zoom</span>
</div>
<div id=”vmres-map-el”></div>
<div class=”es-map-leg”>
<span><i style=”background:#8B0000″></i> Ciudades imperiales</span>
<span><i style=”background:#1E5A7D”></i> Grandes metrópolis</span>
<span><i style=”background:#4A7A3D”></i> Ciudades costeras</span>
<span><i style=”background:#C8962A”></i> Desierto & Sur</span>
<span><i style=”background:#6B4E8B”></i> Ciudades del Norte</span>
</div>
</div>
<!– ══ 8. REGIONES ══ –>
<div class=”es-h2″ id=”es-regions”>📊 Las 12 regiones administrativas de Marruecos</div>
<span class=”es-p”>Marruecos está dividido oficialmente en doce regiones administrativas, cada una con un consejo regional y una capital regional, subdivididas en provincias y prefecturas. Datos demográficos indicativos para 2024.</span>
<div class=”es-tw”>
<table class=”es-t”>
<thead>
<tr>
<th>Región</th>
<th>Principales ciudades</th>
<th>Población (aprox. 2024)</th>
<th>Carácter geográfico</th>
</tr>
</thead>
<tbody>
<tr><td>Tánger-Tetuán-Al Hoceima</td><td>Tánger, Tetuán, Al Hoceima, Fnidek</td><td>4,03 millones</td><td>Costas mediterránea y atlántica</td></tr>
<tr><td>Oriental</td><td>Oujda, Nador, Berkane, Taourirt</td><td>2,29 millones</td><td>Frontera este y mesetas</td></tr>
<tr><td>Fez-Meknes</td><td>Fez, Meknes, Taza, Sefrou</td><td>4,47 millones</td><td>Corazón histórico y Atlas Medio</td></tr>
<tr><td>Rabat-Salé-Kenitra</td><td>Rabat, Salé, Kenitra, Khemisset</td><td>5,13 millones</td><td>Zona de la capital y llanura atlántica</td></tr>
<tr><td>Beni Mellal-Jenifra</td><td>Beni Mellal, Jenifra, Kasba Tadla</td><td>2,53 millones</td><td>Atlas central y tierras agrícolas</td></tr>
<tr><td>Casablanca-Settat</td><td>Casablanca, Settat, Berrechid, El Jadida</td><td>7,69 millones</td><td>Núcleo económico y corredor atlántico</td></tr>
<tr><td>Marrakech-Safi</td><td>Marrakech, Safi, Esauira, Youssoufia</td><td>4,89 millones</td><td>Piedemonte atlásico y franja costera</td></tr>
<tr><td>Draa-Tafilalet</td><td>Errachidia, Uarzazat, Zagora, Tinghir</td><td>1,66 millones</td><td>Oasis y valles saharianos</td></tr>
<tr><td>Souss-Massa</td><td>Agadir, Taroudant, Tiznit</td><td>3,02 millones</td><td>Costa y llanuras del sur</td></tr>
<tr><td>Guelmim-Oued Noun</td><td>Guelmim, Tan-Tan</td><td>0,45 millones</td><td>Transición hacia las zonas saharianas</td></tr>
<tr><td>Laayún-Saguia el Hamra</td><td>Laayún, Bojador, Tarfaya</td><td>~0,37 millones</td><td>Corredor sahariano atlántico</td></tr>
<tr><td>Dajla-Oued Ed-Dahab</td><td>Dajla</td><td>~0,15 millones</td><td>Sáhara atlántico meridional</td></tr>
</tbody>
</table>
</div>
<!– ══ 9. CIUDADES EN ORDEN ALFABÉTICO ══ –>
<div class=”es-h2″ id=”es-alpha”>🔤 Ciudades de Marruecos en orden alfabético</div>
<span class=”es-p”>A continuación encontrarás la lista completa de ciudades de Marruecos en orden alfabético, incluyendo las principales localidades de las doce regiones administrativas. Esta referencia resulta especialmente útil para planificar rutas o localizar rápidamente una ciudad concreta dentro del país.</span>
<div class=”es-alpha”>
<span class=”es-alpha-intro”>Lista de ciudades de Marruecos ordenadas alfabéticamente · Pulsa «Ver todas las ciudades» para desplegar el listado completo.</span>
<!– Primeras 12 ciudades visibles –>
<div class=”es-alpha-grid”>
<div class=”es-alpha-item”><span class=”al”>A</span>Agadir</div>
<div class=”es-alpha-item”><span class=”al”>A</span>Al Hoceima</div>
<div class=”es-alpha-item”><span class=”al”>B</span>Beni Mellal</div>
<div class=”es-alpha-item”><span class=”al”>B</span>Berrechid</div>
<div class=”es-alpha-item”><span class=”al”>B</span>Berkane</div>
<div class=”es-alpha-item”><span class=”al”>B</span>Bojador</div>
<div class=”es-alpha-item”><span class=”al”>C</span>Casablanca</div>
<div class=”es-alpha-item”><span class=”al”>C</span>Chefchaouen</div>
<div class=”es-alpha-item”><span class=”al”>D</span>Dajla</div>
<div class=”es-alpha-item”><span class=”al”>E</span>El Jadida</div>
<div class=”es-alpha-item”><span class=”al”>E</span>Errachidia</div>
<div class=”es-alpha-item”><span class=”al”>E</span>Esauira</div>
</div>
<!– Resto de ciudades ocultas por defecto –>
<div class=”es-alpha-more” id=”vmres-alpha-more”>
<div class=”es-alpha-item”><span class=”al”>F</span>Fez</div>
<div class=”es-alpha-item”><span class=”al”>F</span>Fnidek</div>
<div class=”es-alpha-item”><span class=”al”>G</span>Guelmim</div>
<div class=”es-alpha-item”><span class=”al”>J</span>Jenifra</div>
<div class=”es-alpha-item”><span class=”al”>K</span>Kasba Tadla</div>
<div class=”es-alpha-item”><span class=”al”>K</span>Kenitra</div>
<div class=”es-alpha-item”><span class=”al”>K</span>Khemisset</div>
<div class=”es-alpha-item”><span class=”al”>L</span>Laayún</div>
<div class=”es-alpha-item”><span class=”al”>M</span>Marrakech</div>
<div class=”es-alpha-item”><span class=”al”>M</span>Meknes</div>
<div class=”es-alpha-item”><span class=”al”>M</span>Merzouga</div>
<div class=”es-alpha-item”><span class=”al”>N</span>Nador</div>
<div class=”es-alpha-item”><span class=”al”>O</span>Oujda</div>
<div class=”es-alpha-item”><span class=”al”>R</span>Rabat</div>
<div class=”es-alpha-item”><span class=”al”>S</span>Safi</div>
<div class=”es-alpha-item”><span class=”al”>S</span>Salé</div>
<div class=”es-alpha-item”><span class=”al”>S</span>Sefrou</div>
<div class=”es-alpha-item”><span class=”al”>T</span>Tan-Tan</div>
<div class=”es-alpha-item”><span class=”al”>T</span>Tánger</div>
<div class=”es-alpha-item”><span class=”al”>T</span>Taourirt</div>
<div class=”es-alpha-item”><span class=”al”>T</span>Tarfaya</div>
<div class=”es-alpha-item”><span class=”al”>T</span>Taroudant</div>
<div class=”es-alpha-item”><span class=”al”>T</span>Taza</div>
<div class=”es-alpha-item”><span class=”al”>T</span>Tetuán</div>
<div class=”es-alpha-item”><span class=”al”>T</span>Tinghir</div>
<div class=”es-alpha-item”><span class=”al”>T</span>Tiznit</div>
<div class=”es-alpha-item”><span class=”al”>U</span>Uarzazat</div>
<div class=”es-alpha-item”><span class=”al”>Z</span>Zagora</div>
</div>
<div class=”es-alpha-btn-wrap”>
<button class=”es-alpha-btn” id=”vmres-alpha-toggle”
onclick=”(function(){
var m=document.getElementById(‘vmres-alpha-more’);
var b=document.getElementById(‘vmres-alpha-toggle’);
var open=m.classList.toggle(‘open’);
b.textContent=open?’▲ Mostrar menos’:’▼ Ver todas las ciudades (28 más)’;
})()”>▼ Ver todas las ciudades (28 más)</button>
</div>
<span class=”es-alpha-lang”>🌍 Esta lista también es buscada internacionalmente como: <em>cities in Morocco</em> (inglés) · <em>alle steden in marokko</em> (neerlandés) · <em>villes du Maroc</em> (francés) · <em>cidades de Marrocos</em> (portugués) · <em>Städte in Marokko</em> (alemán).</span>
</div>
<!– ══ 10. ITINERARIOS ══ –>
<div class=”es-h2″ id=”es-routes”>🧭 Itinerarios sugeridos por las ciudades de Marruecos</div>
<span class=”es-p”>Antes de organizar tu ruta, es útil saber <a href=”https://moroccantraveltrips.com/es/cuando-viajar-a-marruecos/”>cuándo viajar a Marruecos</a>: la primavera (marzo-mayo) y el otoño (septiembre-noviembre) son las estaciones más recomendadas para recorrer las ciudades del interior, mientras que la costa atlántica es agradable prácticamente todo el año. También conviene conocer de antemano <a href=”https://moroccantraveltrips.com/es/que-moneda-se-usa-en-marruecos/”>qué moneda se usa en Marruecos</a> — el dírham marroquí (MAD) — para gestionar mejor tu presupuesto de ciudad en ciudad.</span>
<div class=”es-routes”>
<div class=”es-route”>
<span class=”es-route-name”>Circuito de las ciudades imperiales</span>
<div class=”es-route-row”><span class=”rl”>Ruta</span> Fez → Meknes → Rabat → Casablanca</div>
<div class=”es-route-row”><span class=”rl”>Duración</span> 3 a 5 días</div>
<span class=”es-route-desc”>La introducción clásica al corazón histórico de Marruecos — medinas declaradas Patrimonio de la Humanidad, arquitectura monumental y capital moderna, comunicadas por excelentes enlaces ferroviarios y por carretera.</span>
</div>
<div class=”es-route”>
<span class=”es-route-name”>Ruta del desierto y las kasbahs</span>
<div class=”es-route-row”><span class=”rl”>Ruta</span> Marrakech → Uarzazat → Merzouga → Zagora</div>
<div class=”es-route-row”><span class=”rl”>Duración</span> 4 a 6 días</div>
<span class=”es-route-desc”>Cruce del Alto Atlas por el Tizi n’Tichka, valles de kasbahs y palmares hasta las dunas del Erg Chebbi — el road trip más popular de Marruecos.</span>
</div>
<div class=”es-route”>
<span class=”es-route-name”>Escapada por la costa atlántica</span>
<div class=”es-route-row”><span class=”rl”>Ruta</span> Casablanca → Esauira → Agadir → Tiznit</div>
<div class=”es-route-row”><span class=”rl”>Duración</span> 3 a 4 días</div>
<span class=”es-route-desc”>Puertos pesqueros, ciudades artísticas, largas playas y mercados de joyería en plata — la fachada atlántica de Marruecos en un trayecto compacto y panorámico hacia el sur.</span>
</div>
<div class=”es-route”>
<span class=”es-route-name”>Lo mejor del norte</span>
<div class=”es-route-row”><span class=”rl”>Ruta</span> Tánger → Chefchaouen → Tetuán</div>
<div class=”es-route-row”><span class=”rl”>Duración</span> 2 a 3 días</div>
<span class=”es-route-desc”>Vistas del estrecho de Gibraltar, la icónica ciudad azul de Chefchaouen y la medina de herencia andaluza de Tetuán — el triángulo norte de Marruecos, uno de los más pintorescos del país.</span>
</div>
</div>
<!– CTA –>
<div class=”es-cta”>
<div class=”es-cta-l”>
<span class=”es-cta-title”>Planifica tu itinerario por Marruecos</span>
<span class=”es-cta-sub”>Obtén un circuito personalizado por las ciudades y regiones de Marruecos, diseñado por un profesional del turismo — adaptado a tu ritmo, tu presupuesto y tus intereses.</span>
</div>
<a href=”https://wa.me/212671437971″ class=”es-cta-btn” target=”_blank” rel=”noopener noreferrer”>
<svg viewBox=”0 0 24 24″ fill=”currentColor” width=”18″ height=”18″ aria-hidden=”true”><path d=”M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.67-.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.076 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.413z”/></svg>
📱 WhatsApp +212 671 437 971
</a>
</div>
<!– ══ 11. FAQ ══ –>
<div class=”es-h2″ id=”es-faq”>❓ Preguntas frecuentes — Ciudades de Marruecos</div>
<div class=”es-faqs”>
<details class=”es-fq”>
<summary>¿Cuántas regiones administrativas tiene Marruecos?</summary>
<span class=”es-fq-a”>Marruecos está dividido oficialmente en <strong>12 regiones administrativas</strong>, cada una con un consejo regional y una capital. Por debajo del nivel regional, el país se organiza en 75 provincias y 13 prefecturas, subdivididas a su vez en comunas.</span>
</details>
<details class=”es-fq”>
<summary>¿Cuáles son las cuatro ciudades imperiales de Marruecos?</summary>
<span class=”es-fq-a”>Las cuatro ciudades imperiales son <strong>Fez, Marrakech, Meknes y Rabat</strong>. Cada una sirvió de capital real en distintas épocas de la historia marroquí. Las cuatro poseen un patrimonio arquitectónico y cultural excepcional — tres de ellas tienen una medina inscrita en la Lista del Patrimonio Mundial de la UNESCO.</span>
</details>
<details class=”es-fq”>
<summary>¿Cuál es la ciudad más grande de Marruecos por población?</summary>
<span class=”es-fq-a”><strong>Casablanca</strong> es la mayor ciudad de Marruecos, con una población urbana de aproximadamente 3,2 millones de habitantes (estimación 2024). Es la capital económica del país y su principal puerto, aunque Rabat ejerce como capital política y administrativa.</span>
</details>
<details class=”es-fq”>
<summary>¿Cuáles son las principales ciudades del sur de Marruecos?</summary>
<span class=”es-fq-a”>Las ciudades más destacadas del sur de Marruecos incluyen <strong>Agadir</strong> (principal estación turística), <strong>Taroudant</strong> (ciudad medieval amurallada), <strong>Tiznit</strong> (joyería en plata), <strong>Guelmim</strong> (puerta del Sáhara), <strong>Laayún</strong> y <strong>Dajla</strong> (extremo sur de la costa atlántica).</span>
</details>
<details class=”es-fq”>
<summary>¿Es seguro viajar a Marruecos y visitar sus ciudades?</summary>
<span class=”es-fq-a”>En general sí. Marruecos es uno de los países más seguros del norte de África para el turismo internacional. Las ciudades imperiales, la costa atlántica y los principales destinos del sur cuentan con infraestructura turística consolidada. Consulta nuestra guía completa sobre <a href=”https://moroccantraveltrips.com/es/es-seguro-viajar-a-marruecos/”>si es seguro viajar a Marruecos</a> para conocer todos los detalles antes de tu visita.</span>
</details>
<details class=”es-fq”>
<summary>¿Qué moneda se usa en Marruecos al viajar entre ciudades?</summary>
<span class=”es-fq-a”>La moneda oficial es el <strong>dírham marroquí (MAD)</strong>. No es libremente convertible fuera del país, por lo que conviene cambiarla dentro de Marruecos — en aeropuertos, bancos y casas de cambio oficiales. Consulta nuestra guía sobre <a href=”https://moroccantraveltrips.com/es/que-moneda-se-usa-en-marruecos/”>qué moneda se usa en Marruecos</a> para más información práctica.</span>
</details>
<details class=”es-fq”>
<summary>¿Son oficiales los datos demográficos de esta guía?</summary>
<span class=”es-fq-a”>No. Todos los datos demográficos son <strong>estimaciones indicativas para 2024</strong>, concebidas como valores de referencia para la planificación y la comparación. No son datos oficiales del censo y no deben citarse como tales. La autoridad oficial del censo en Marruecos es el Alto Comisariado al Plan (HCP).</span>
</details>
<details class=”es-fq”>
<summary>¿Qué ciudad de Marruecos es mejor para una primera visita?</summary>
<span class=”es-fq-a”><strong>Marrakech</strong> es el punto de entrada más habitual para los viajeros que visitan Marruecos por primera vez — bien comunicada con vuelos internacionales directos, lo suficientemente compacta para recorrerse a pie y con la mayor concentración de vida en medina, riads, mercados gastronómicos y excursiones (Atlas, desierto, Esauira). <strong>Casablanca</strong> es el principal hub de conexiones a través del aeropuerto Mohammed V.</span>
</details>
</div>
<div class=”es-disc”>
<strong>Nota sobre los datos:</strong> Todos los datos demográficos son estimaciones indicativas para 2024 elaboradas a partir de proyecciones de crecimiento urbano de acceso público. Se proporcionan únicamente como referencia y no deben citarse como resultados oficiales del censo. La autoridad demográfica oficial de Marruecos es el Alto Comisariado al Plan (HCP). La información geográfica y administrativa refleja la estructura actual de las 12 regiones establecida por la reforma territorial de 2015.
</div>
</div><!– /.vmr-es –>
<!– Leaflet JS –>
<script src=”https://unpkg.com/leaflet@1.9.4/dist/leaflet.js” crossorigin=””></script>
<script>
(function () {
‘use strict’;
function initMap() {
var el = document.getElementById(‘vmres-map-el’);
if (!el || typeof L === ‘undefined’) return;
el.style.height = (window.innerWidth <= 700 ? ‘340’ : ‘480’) + ‘px’;
var map = L.map(‘vmres-map-el’, {
center: [31.5, -6.5],
zoom: 5,
scrollWheelZoom: false,
attributionControl: true,
zoomControl: true
});
L.tileLayer(‘https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png’, {
attribution: ‘© <a href=”https://www.openstreetmap.org/copyright”>OpenStreetMap</a> contribuidores’,
maxZoom: 18
}).addTo(map);
setTimeout(function () { map.invalidateSize(); }, 400);
window.addEventListener(‘resize’, function () { map.invalidateSize(); }, { passive: true });
function mkIcon(c) {
return L.divIcon({
className: ”,
html: ‘<div style=”width:13px;height:13px;background:’ + c + ‘;border:2.5px solid #fff;border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.45)”></div>’,
iconSize: [13, 13], iconAnchor: [6, 6], popupAnchor: [0, -10]
});
}
var cities = [
{ n:’Fez’, la:34.033, lo:-5.000, re:’Fez-Meknes’, ca:’Ciudad imperial’, po:’~1,18M’, co:’#8B0000′ },
{ n:’Marrakech’, la:31.628, lo:-7.994, re:’Marrakech-Safi’, ca:’Ciudad imperial’, po:’~1,01M’, co:’#8B0000′ },
{ n:’Rabat’, la:34.020, lo:-6.842, re:’Rabat-Salé-Kenitra’, ca:’Capital política’, po:’~516K’, co:’#8B0000′ },
{ n:’Meknes’, la:33.896, lo:-5.554, re:’Fez-Meknes’, ca:’Ciudad imperial’, po:’~557K’, co:’#8B0000′ },
{ n:’Casablanca’, la:33.589, lo:-7.604, re:’Casablanca-Settat’, ca:’Capital económica’, po:’~3,2M’, co:’#1E5A7D’ },
{ n:’Tánger’, la:35.767, lo:-5.800, re:’Tánger-Tetuán-Al Hoceima’, ca:’Gran metrópolis’, po:’~1,28M’, co:’#1E5A7D’ },
{ n:’Agadir’, la:30.421, lo:-9.599, re:’Souss-Massa’, ca:’Estación turística’, po:’~505K’, co:’#1E5A7D’ },
{ n:’Tetuán’, la:35.578, lo:-5.367, re:’Tánger-Tetuán-Al Hoceima’, ca:’Ciudad del norte’, po:’~469K’, co:’#6B4E8B’ },
{ n:’Chefchaouen’, la:35.168, lo:-5.263, re:’Tánger-Tetuán-Al Hoceima’, ca:’Pueblo de montaña’, po:’~36K’, co:’#6B4E8B’ },
{ n:’Al Hoceima’, la:35.246, lo:-3.929, re:’Tánger-Tetuán-Al Hoceima’, ca:’Ciudad costera’, po:’~396K’, co:’#6B4E8B’ },
{ n:’Esauira’, la:31.508, lo:-9.763, re:’Marrakech-Safi’, ca:’Ciudad artística costera’, po:’~83K’, co:’#4A7A3D’ },
{ n:’Safi’, la:32.299, lo:-9.238, re:’Marrakech-Safi’, ca:’Ciudad portuaria’, po:’~352K’, co:’#4A7A3D’ },
{ n:’Kenitra’, la:34.261, lo:-6.580, re:’Rabat-Salé-Kenitra’, ca:’Puerto industrial’, po:’~508K’, co:’#4A7A3D’ },
{ n:’El Jadida’, la:33.256, lo:-8.506, re:’Casablanca-Settat’, ca:’Puerto atlántico’, po:’~200K’, co:’#4A7A3D’ },
{ n:’Uarzazat’, la:30.919, lo:-6.893, re:’Draa-Tafilalet’, ca:’Capital del cine’, po:’~57K’, co:’#C8962A’ },
{ n:’Merzouga’, la:31.080, lo:-4.012, re:’Draa-Tafilalet’, ca:’Aldea del desierto’, po:’~2K’, co:’#C8962A’ },
{ n:’Zagora’, la:30.329, lo:-5.838, re:’Draa-Tafilalet’, ca:’Puerta del desierto’, po:’~35K’, co:’#C8962A’ },
{ n:’Errachidia’, la:31.929, lo:-4.424, re:’Draa-Tafilalet’, ca:’Capital regional’, po:’~92K’, co:’#C8962A’ },
{ n:’Taroudant’, la:30.472, lo:-8.877, re:’Souss-Massa’, ca:’Ciudad amurallada’, po:’~71K’, co:’#C8962A’ },
{ n:’Tiznit’, la:29.698, lo:-9.732, re:’Souss-Massa’, ca:’Ciudad patrimonial’, po:’~55K’, co:’#C8962A’ },
{ n:’Guelmim’, la:28.988, lo:-10.057,re:’Guelmim-Oued Noun’, ca:’Puerta del Sáhara’, po:’~98K’, co:’#C8962A’ },
{ n:’Dajla’, la:23.718, lo:-15.936,re:’Dajla-Oued Ed-Dahab’, ca:’Ciudad del gran sur’, po:’~56K’, co:’#C8962A’ },
{ n:’Laayún’, la:27.126, lo:-13.162,re:’Laayún-Saguia el Hamra’, ca:’Ciudad del gran sur’, po:’~217K’, co:’#C8962A’ }
];
cities.forEach(function (c) {
var html =
‘<div style=”font-family:system-ui,sans-serif;min-width:160px;padding:2px 0;line-height:1.5″>’ +
‘<strong style=”font-size:.93rem;color:#1C140C;display:block;margin-bottom:3px”>’ + c.n + ‘</strong>’ +
‘<span style=”font-size:.7rem;color:#8B4513;font-weight:700;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:6px”>’ + c.ca + ‘</span>’ +
‘<span style=”font-size:.79rem;color:#555;display:block;margin-bottom:2px”><b>Región:</b> ‘ + c.re + ‘</span>’ +
‘<span style=”font-size:.79rem;color:#555;display:block”><b>Población:</b> ‘ + c.po + ‘</span>’ +
‘</div>’;
L.marker([c.la, c.lo], { icon: mkIcon(c.co) })
.addTo(map)
.bindPopup(html, { maxWidth: 220 });
});
map.on(‘click’, function () { map.scrollWheelZoom.enable(); });
map.on(‘mouseout’, function () { map.scrollWheelZoom.disable(); });
}
if (document.readyState === ‘loading’) {
document.addEventListener(‘DOMContentLoaded’, initMap);
} else {
initMap();
}
})();
</script>