diff --git a/website/helpers/product.py b/website/helpers/product.py
index d6f16fb..a107d9b 100644
--- a/website/helpers/product.py
+++ b/website/helpers/product.py
@@ -4,10 +4,9 @@
 from __future__ import unicode_literals
 
 import webnotes
-from webnotes.utils import cstr
+from webnotes.utils import cstr, cint
 from webnotes.webutils import build_html, delete_page_cache
 
-
 @webnotes.whitelist(allow_guest=True)
 def get_product_info(item_code):
 	"""get product price / stock info"""
@@ -20,10 +19,20 @@
 			in_stock = in_stock[0][0] > 0 and 1 or 0
 	else:
 		in_stock = -1
+		
+	price = price_list and webnotes.conn.sql("""select ref_rate, ref_currency from
+		`tabItem Price` where parent=%s and price_list_name=%s""", 
+		(item_code, price_list), as_dict=1) or []
+	
+	price = price and price[0] or None
+	
+	if price:
+		price["ref_currency"] = not cint(webnotes.conn.get_default("hide_currency_symbol")) \
+			and (webnotes.conn.get_value("Currency", price.ref_currency, "symbol") or price.ref_currency) \
+			or ""
+
 	return {
-		"price": price_list and webnotes.conn.sql("""select ref_rate, ref_currency from
-			`tabItem Price` where parent=%s and price_list_name=%s""", 
-			(item_code, price_list), as_dict=1) or [],
+		"price": price,
 		"stock": in_stock
 	}
 
diff --git a/website/templates/css/product_page.css b/website/templates/css/product_page.css
index 566b6b5..71be9ee 100644
--- a/website/templates/css/product_page.css
+++ b/website/templates/css/product_page.css
@@ -7,4 +7,7 @@
 			font-size: 18px;
 			line-height: 200%;
 		}
+		.item-price {
+			margin-top: 20px;
+		}
 	</style>
\ No newline at end of file
diff --git a/website/templates/html/product_page.html b/website/templates/html/product_page.html
index 23091ad..3fda8cd 100644
--- a/website/templates/html/product_page.html
+++ b/website/templates/html/product_page.html
@@ -35,23 +35,25 @@
 				{{ web_long_description or web_short_description or 
 					"[No description given]" }}
 				</div>
-				{% if obj.doclist.get({"doctype":"Item Website Specification"}) %}
+				<div class="item-price hide"></div>
+				<div class="item-stock"></div>
+			</div>
+		</div>
+		{% if obj.doclist.get({"doctype":"Item Website Specification"}) -%}
+		<div class="row" style="margin-top: 20px">
+			<div class="span12">
 				<h4>Specifications</h4>
 				<table class="table table-bordered" style="width: 100%">
 				{% for d in obj.doclist.get(
-					{"doctype":"Item Website Specification"}) %}
+					{"doctype":"Item Website Specification"}) -%}
 					<tr>
 						<td style="width: 30%;">{{ d.label }}</td>
 						<td>{{ d.description }}</td>
 					</tr>
-				{% endfor %}
+				{%- endfor %}
 				</table>
-				{% endif %}
-				<div class="item-price hide">
-					<p>Price:</p>
-				</div>
-				<div class="item-stock"></div>
 			</div>
 		</div>
+		{%- endif %}
 	</div>
 {% endblock %}
\ No newline at end of file
diff --git a/website/templates/js/product_page.js b/website/templates/js/product_page.js
index 653cfa3..69e9cd5 100644
--- a/website/templates/js/product_page.js
+++ b/website/templates/js/product_page.js
@@ -26,8 +26,8 @@
 		success: function(data) {
 			if(data.message) {
 				if(data.message.price) {
-					$("<h4>").html(data.message.price[0].ref_currency + " " 
-						+ data.message.price[0].ref_rate).appendTo(".item-price");
+					$("<h4>").html(data.message.price.ref_currency + " " 
+						+ data.message.price.ref_rate).appendTo(".item-price");
 					$(".item-price").toggle(true);
 				}
 				if(data.message.stock==0) {
