diff --git a/locationmap.css b/locationmap.css
index 565c525..be9a65a 100644
--- a/locationmap.css
+++ b/locationmap.css
@@ -1,3 +1,8 @@
+#locationmap_map {
+  max-width: 100%;
+}
+
 #locationmap_map img {
   max-width: none;
 }
+
diff --git a/locationmap.module b/locationmap.module
index e7f974e..cb2ff32 100644
--- a/locationmap.module
+++ b/locationmap.module
@@ -248,16 +248,6 @@ function locationmap_page() {
   $locationmap_body = variable_get('locationmap_body', $defaults);
   $locationmap_footer = variable_get('locationmap_footer', $defaults);
 
-  $path = drupal_get_path('module', 'locationmap');
-
-  drupal_add_js('//maps.google.com/maps/api/js?v=3&sensor=false',  array('type' => 'external', 'weight' => 5));
-  drupal_add_js($path . '/locationmap.js', array('type' => 'file', 'weight' => 6, 'scope' => 'footer'));
-
-  $locationmap_css_options = array(
-    'preprocess'  => FALSE,
-  );
-  drupal_add_css($path . '/locationmap.css', $locationmap_css_options);
-
   $locationmap_settings = array(
     'address' => variable_get('locationmap_address', 'Fiordland, New Zealand'),
     'info' => $locationmap_info['value'],
@@ -476,9 +466,6 @@ function locationmap_block_image() {
   if ($type == 'interactive') {
     $width = variable_get('locationmap_block_mapwidth', 160);
     $height = variable_get('locationmap_block_mapheight', 120);
-    $path = drupal_get_path('module', 'locationmap');
-    drupal_add_js('//maps.google.com/maps/api/js?v=3&sensor=false',  array('type' => 'external', 'weight' => 5));
-    drupal_add_js($path . '/locationmap.js', array('type' => 'file', 'weight' => 6, 'scope' => 'footer'));
     $locationmap_settings = array(
       'address' => variable_get('locationmap_address', 'Fiordland, New Zealand'),
       'info' => variable_get('locationmap_info', 'Fiordland, New Zealand'),
@@ -569,6 +556,14 @@ function theme_locationmap_block_image_link() {
  * @ingroup themeable
  */
 function theme_locationmap_map($variables) {
+  $path = drupal_get_path('module', 'locationmap');
+  drupal_add_js('//maps.google.com/maps/api/js?v=3&sensor=false',  array('type' => 'external', 'weight' => 5));
+  drupal_add_js($path . '/locationmap.js', array('type' => 'file', 'weight' => 6, 'scope' => 'footer'));
+  $locationmap_css_options = array(
+    'preprocess'  => FALSE,
+  );
+  drupal_add_css($path . '/locationmap.css', $locationmap_css_options);
+
   if (empty($variables['width'])) {
     $width = variable_get('locationmap_width', '500') . 'px';
   } else {
