diff --git a/css/general/layout.css b/css/general/layout.css
index 6d5fa3a1b13e5d428190a773473115da02a90708..bfe09fa76a20e993fd5dfcde0a011fb95fec83da 100644
--- a/css/general/layout.css
+++ b/css/general/layout.css
@@ -1,11 +1,11 @@
 /* Styles that mainly affect where text is, but not how it looks */
 
-h1, h2, h3 {
+h1, h2, h3, h4 {
     margin-bottom: 0;
     margin-top: 0.25em;
 }
 
-h1 + p, h2 + p, h3 + p {
+h1 + p, h2 + p, h3 + p, h4 + p {
     margin-top: 0;
 }
 
@@ -28,7 +28,7 @@ div.double-indent, p.double-indent {
     text-indent: 4em;
 }
 
-/* makes avery line indented */
+/* makes every line indented */
 .choices, .choices {
     margin-left: 2em;
 }
@@ -40,4 +40,5 @@ div.double-indent, p.double-indent {
 div.grid-2columns-auto {
     display: grid;
     grid-template-columns: max-content auto;
+    grid-column-gap: 1em;
 }
diff --git a/src/npc/surgery/organFarm.js b/src/npc/surgery/organFarm.js
index c269adacb042f8c80fb56756d3bb05750e9fe094..22dcf3d2fbc2c8522a7376b87779e2d0c98518b1 100644
--- a/src/npc/surgery/organFarm.js
+++ b/src/npc/surgery/organFarm.js
@@ -3,10 +3,7 @@
  * @returns {DocumentFragment}
  */
 App.Medicine.OrganFarm.growActions = function(slave) {
-	const el = new DocumentFragment();
 	const O = App.Medicine.OrganFarm.Organs;
-	const canImplant = [];
-	const cantImplant = [];
 
 	// find already being grown/ready to implant organs
 	const slaveOrgans = {};
@@ -32,19 +29,26 @@ App.Medicine.OrganFarm.growActions = function(slave) {
 		}
 	}
 
-	const div = document.createElement("div");
-	div.classList.add("grid-2columns-auto");
-
 	// create entries for each organ
-	let growing = [];
+	const canImplant = [];
+	const cantImplant = [];
+	const growing = [];
 	let any = false;
 	O.forEach((organ, key) => {
 		if (slaveOrgans[key] === 0) {
 			if (organ.canGrow(slave)) {
+				const array = [];
+				array.push(App.UI.DOM.makeElement("div", App.UI.DOM.passageLink(organ.name, "Remote Surgery", () => {
+					App.Medicine.OrganFarm.growOrgan(slave, key);
+				})));
+
+				const tooltip = typeof organ.tooltip === "string" ? organ.tooltip : organ.tooltip(slave);
+				array.push(App.UI.DOM.makeElement("div", `Costs ${cashFormat(organ.cost)}${tooltip !== "" ? ` and ${tooltip}` : ""}.`, "detail"));
+
 				if (organ.implantActions.some((o) => { return o.canImplant(slave); })) {
-					canImplant.push(key);
+					canImplant.push(...array);
 				} else {
-					cantImplant.push(key);
+					cantImplant.push(...array);
 				}
 			}
 			any = true;
@@ -59,7 +63,12 @@ App.Medicine.OrganFarm.growActions = function(slave) {
 		}
 	});
 
-	if (growing !== []) {
+	const fragment = new DocumentFragment();
+
+	if (growing.length > 0) {
+		App.UI.DOM.appendNewElement("h4", fragment, "Growing");
+		const div = App.UI.DOM.appendNewElement("div", fragment);
+		div.classList.add("grid-2columns-auto", "choices");
 		// nearer to completion => higher up
 		growing.sort((a, b) => a.time - b.time);
 		for (let i = 0; i < growing.length; i++) {
@@ -67,54 +76,24 @@ App.Medicine.OrganFarm.growActions = function(slave) {
 			App.UI.DOM.appendNewElement("div", div, growing[i].text);
 		}
 	}
-	const chosenOption = App.UI.DOM.makeElement("div");
 	if (canImplant.length > 0) {
-		App.UI.DOM.appendNewElement("div", div, "Can implant immediately");
-		div.append(makePulldown(canImplant));
+		App.UI.DOM.appendNewElement("h4", fragment, "Can be implanted immediately");
+		const div = App.UI.DOM.appendNewElement("div", fragment);
+		div.classList.add("grid-2columns-auto", "choices");
+		div.append(...canImplant);
 	}
 	if (cantImplant.length > 0) {
-		App.UI.DOM.appendNewElement("div", div, "Can't implant immediately");
-		div.append(makePulldown(cantImplant));
+		App.UI.DOM.appendNewElement("h4", fragment, "Cannot be implanted immediately");
+		const div = App.UI.DOM.appendNewElement("div", fragment);
+		div.classList.add("grid-2columns-auto", "choices");
+		div.append(...cantImplant);
 	}
-	el.append(div);
-	el.append(chosenOption);
 
 	if (any) {
-		return el;
+		return fragment;
 	} else {
 		return null;
 	}
-
-	function makePulldown(array) {
-		const selDiv = document.createElement("div");
-		const select = App.UI.DOM.appendNewElement("select", selDiv);
-		array.forEach(key => {
-			const option = App.UI.DOM.appendNewElement("option", select);
-			option.textContent = O.get(key).name;
-			option.value = key;
-		});
-		select.onchange = () => {
-			const O = select.options[select.selectedIndex];
-			const organ = App.Medicine.OrganFarm.Organs.get(O.value);
-			const frag = new DocumentFragment();
-			const tooltip = typeof organ.tooltip === "string" ? organ.tooltip : organ.tooltip(slave);
-
-			App.UI.DOM.appendNewElement(
-				"span",
-				frag,
-				App.UI.DOM.passageLink(
-					organ.name, "Remote Surgery", () => {
-						App.Medicine.OrganFarm.growOrgan(slave, O.value);
-					}
-				)
-			);
-
-			App.UI.DOM.appendNewElement("span", frag, ` Costs ${cashFormat(organ.cost)}${tooltip !== "" ? ` and ${tooltip}` : ""}.`, "detail");
-			jQuery(chosenOption).empty().append(frag);
-		};
-		select.selectedIndex = -1;
-		return selDiv;
-	}
 };
 
 /**
@@ -282,8 +261,8 @@ App.Medicine.OrganFarm.fullMenu = function(slave) {
 	if (growActions != null) {
 		const {him} = getPronouns(slave);
 		App.UI.DOM.appendNewElement("h3", fragment, "Grow new organs");
-		App.UI.DOM.appendNewElement("div", fragment, `The fabricator is ready to grow an organ for ${him}. Extract tissue to begin growing:`);
-		App.UI.DOM.appendNewElement("div", fragment, growActions, "choices");
+		App.UI.DOM.appendNewElement("div", fragment, `The fabricator is ready to grow an organ for ${him}. Extract tissue to begin growing.`);
+		App.UI.DOM.appendNewElement("div", fragment, growActions);
 		anyAction = true;
 	}
 
@@ -342,7 +321,8 @@ App.Medicine.OrganFarm.currentlyGrowing = function() {
 			if (o.weeksToCompletion <= 0) {
 				finishLines.push(`${tank.slaveName}'s ${App.Medicine.OrganFarm.Organs.get(o.type).name}.`);
 			} else {
-				growLines.push(`${tank.slaveName}'s ${App.Medicine.OrganFarm.Organs.get(o.type).name}, ${weeksToCompletion(o.weeksToCompletion)} week(s) left.`);
+				growLines.push(`${tank.slaveName}'s ${App.Medicine.OrganFarm.Organs.get(o.type).name}, ${
+					weeksToCompletion(o.weeksToCompletion)} week(s) left.`);
 			}
 		} else {
 			growLines.push(App.UI.DOM.makeElement("span", `ERROR: No tank with ID ${o.ID} found.`, "error"));