diff --git a/devTools/types/FC/arcology.d.ts b/devTools/types/FC/arcology.d.ts
index a0a48a7315e75a7a456de13732e266dd562d6423..35660ea4796b78d23a93a49010d2c34efabba2eb 100644
--- a/devTools/types/FC/arcology.d.ts
+++ b/devTools/types/FC/arcology.d.ts
@@ -198,7 +198,6 @@ declare namespace FC {
 		hackingEconomicTarget: number;
 		hackingReputationTarget: number;
 		hackingReputation: number;
-		weeks: number;
 	}
 
 	type ArcologyStateFSPeculiarities = {
diff --git a/js/002-config/fc-js-init.js b/js/002-config/fc-js-init.js
index 9b806d761748742271f8ecd3ecd3b012beba8768..8050993cbf9fe9e92e8bfdf055bd86bfb9709408 100644
--- a/js/002-config/fc-js-init.js
+++ b/js/002-config/fc-js-init.js
@@ -18,7 +18,6 @@ App.Art = {};
 App.Budget = {};
 App.Corporate = {};
 App.Data = {};
-App.Data.Arcology = {};
 App.Data.FCTV = {};
 App.Data.HeroSlaves = {};
 App.Data.Medicine = {};
diff --git a/js/003-data/arcologyData.js b/js/003-data/arcologyData.js
deleted file mode 100644
index 6b0b17d9efa8ed3af45f453b87556e042d069445..0000000000000000000000000000000000000000
--- a/js/003-data/arcologyData.js
+++ /dev/null
@@ -1,2 +0,0 @@
-App.Data.Arcology.Terrain = ["marine", "marine", "oceanic", "ravine", "rural", "rural", "rural", "urban", "urban"];
-App.Data.Arcology.Continents = ["Africa", "Asia", "Asia", "Australia", "Western Europe", "Southern Europe", "Central Europe", "Eastern Europe", "Scandinavia", "Japan", "North America", "North America", "South America", "the Middle East"];
diff --git a/js/003-data/slaveBody.js b/js/003-data/slaveBody.js
index 7739c26772281023fe09101af8746e3810d0baf0..951fdced4045256fef715924a736c935cee6398d 100644
--- a/js/003-data/slaveBody.js
+++ b/js/003-data/slaveBody.js
@@ -128,5 +128,3 @@ App.Data.Slave.Ears = {
 	normal: {title: ""},
 	...App.Data.Slave.FancyEars
 };
-
-App.Data.Slave.Races = ["amerindian", "asian", "black", "indo-aryan", "latina", "malay", "middle eastern", "mixed race", "pacific islander", "semitic", "southern european", "white"];
diff --git a/src/002-config/fc-version.js b/src/002-config/fc-version.js
index 85e573e763ef0ac00e4508c27fec43d1cee32882..b3dfb5f093b2f323adc99595fe2af808d50a0b4d 100644
--- a/src/002-config/fc-version.js
+++ b/src/002-config/fc-version.js
@@ -2,5 +2,5 @@ App.Version = {
 	base: "0.10.7.1", // The vanilla version the mod is based off of, this should never be changed.
 	pmod: "4.0.0-alpha.14",
 	commitHash: null,
-	release: 1168, // When getting close to 2000, please remove the check located within the onLoad() function defined at line five of src/js/eventHandlers.js.
+	release: 1167, // When getting close to 2000, please remove the check located within the onLoad() function defined at line five of src/js/eventHandlers.js.
 };
diff --git a/src/arcologyBuilding/presets.js b/src/arcologyBuilding/presets.js
index bf63d5d7921a92c9c02ed2c964f3a19045278f94..058d31aa4cf56e9004a2d4707c0f18208133ddb9 100644
--- a/src/arcologyBuilding/presets.js
+++ b/src/arcologyBuilding/presets.js
@@ -291,23 +291,17 @@ App.Arcology.upgrades = function(building) {
 			const div = document.createElement("div");
 			div.classList.add("choices");
 			const cost = upgrade.cost * V.upgradeMultiplierArcology;
-			div.append(
-				makePurchase(`...${upgrade.desc}`, cost, "capEx", {
-					note: `This huge project will cost ${cashFormat(cost)}`,
-					handler: () => {
-						if (building.usedUpgrades.length === 0) {
-							// the first major upgrade gives skill, successive ones not, mainly because there might be a
-							// different number depending on layout.
-							V.PC.skill.engineering++;
-						}
-						building.usedUpgrades.push(upgrade.id);
-						upgrade.apply();
-						cashX(-cost, "capEx");
-
-						App.UI.reload();
-					},
-				}),
-			);
+			div.append(`...${upgrade.desc}. `, App.UI.DOM.makeElement("span", `This huge project will cost ${cashFormat(cost)} `, "note"),
+				App.UI.DOM.passageLink(`Build ${upgrade.name}`, passage(), () => {
+					if (building.usedUpgrades.length === 0) {
+						// the first major upgrade gives skill, successive ones not, mainly because there might be a
+						// different number depending on layout.
+						V.PC.skill.engineering++;
+					}
+					building.usedUpgrades.push(upgrade.id);
+					upgrade.apply();
+					cashX(-cost, "capEx");
+				}));
 			outerDiv.append(div);
 			count++;
 		}
diff --git a/src/arcologyBuilding/purchaseArcology.js b/src/arcologyBuilding/purchaseArcology.js
deleted file mode 100644
index c5bfdf13a743f7073816ccffb074b436d7b9e3d5..0000000000000000000000000000000000000000
--- a/src/arcologyBuilding/purchaseArcology.js
+++ /dev/null
@@ -1,24 +0,0 @@
-App.Arcology.purchase = function() {
-	const div = document.createElement("div");
-	const linkDiv = document.createElement("div");
-
-	div.append(linkDiv);
-	linkDiv.append(
-		`You can also purchase a new arcology to move to in a new location. You will once again become an unknown figure with no reputation of any kind.`,
-		App.UI.DOM.makeElement("div", App.UI.DOM.link(`See arcologies`, () => {
-			App.UI.DOM.replace(linkDiv, purchase());
-		}), ['indent']),
-	);
-
-	function purchase() {
-		const frag = new DocumentFragment();
-
-		const h3 = App.UI.DOM.makeElement("h3", `Purchase an arcology`);
-
-		frag.append(h3, App.Intro.generateEstablishedArcologies());
-
-		return frag;
-	}
-
-	return div;
-};
diff --git a/src/data/backwardsCompatibility/backwardsCompatibility.js b/src/data/backwardsCompatibility/backwardsCompatibility.js
index 4c8077d9195bc43e35740da90ec3d008d62ec59c..968354fb79c0cfd00e23c06f3ad49e9cbf68a1fe 100644
--- a/src/data/backwardsCompatibility/backwardsCompatibility.js
+++ b/src/data/backwardsCompatibility/backwardsCompatibility.js
@@ -107,8 +107,8 @@ App.Update.backwardsCompatibility = function() {
 		div = App.UI.DOM.appendNewElement("div", f, `Updating mods... `);
 		App.Update.mods(div);
 
-		div = App.UI.DOM.appendNewElement("div", f, `Updating arcology information... `);
-		App.Update.arcology(div);
+		div = App.UI.DOM.appendNewElement("div", f, `Checking for old arcology locations... `);
+		App.Update.arcologyLocation(div);
 
 		div = App.UI.DOM.appendNewElement("div", f, `Cleaning up old FCNN headlines... `);
 		App.Update.FCNN(div);
@@ -1660,7 +1660,7 @@ App.Update.RAassistantData = function(node) {
 	node.append(`Done!`);
 };
 
-App.Update.arcology = function(node) {
+App.Update.arcologyLocation = function(node) {
 	if (V.continent === "Europe") {
 		const prompt = App.UI.DOM.appendNewElement('div', node);
 		prompt.id = "location-prompt"; // so we can replace the whole prompt later after the user clicks a link
@@ -1672,7 +1672,7 @@ App.Update.arcology = function(node) {
 			"Scandinavia",
 			"Central Europe"
 		];
-		prompt.append(`General Arcology location detected: Europe. Please specify exact location of arcology. Currently selected: ${V.continent}. Other possibilities: `,
+		prompt.append(`General Arcology location detected: Europe. Please specify exact location of arcology. Currently selected: ${V.continent}. Other Possibilities: `,
 			App.UI.DOM.generateLinksStrip(altLocations.map(l => makeLinkForLocation(l))));
 	} else {
 		node.append(`Done!`);
@@ -1684,10 +1684,6 @@ App.Update.arcology = function(node) {
 			App.UI.DOM.replace("#location-prompt", `Arcology location specified at ${l}.`);
 		});
 	}
-
-	if (!("weeks" in V.arcologies[0])) {
-		V.arcologies[0].weeks = V.week;
-	}
 };
 
 App.Update.oldVersions = function(node) {
diff --git a/src/endWeek/nextWeek/nextWeek.js b/src/endWeek/nextWeek/nextWeek.js
index 4d577e8dd73f2b17f9153471f82cd3fa66338586..4bf5cea4cd2d5fb5679b83a8301e0aac5db88beb 100644
--- a/src/endWeek/nextWeek/nextWeek.js
+++ b/src/endWeek/nextWeek/nextWeek.js
@@ -329,7 +329,6 @@ App.EndWeek.nextWeek = function() {
 	}
 
 	V.week++;
-	V.arcologies[0].weeks++;
 
 	if (V.playerSurgery > 0) {
 		V.playerSurgery--;
diff --git a/src/events/intro/arcologySelection.js b/src/events/intro/arcologySelection.js
index 725ea29d01524ada4f5ded7dda0d6ed46c30232d..70e79b634c7ee08e8363536af1f3fcf0d79c802d 100644
--- a/src/events/intro/arcologySelection.js
+++ b/src/events/intro/arcologySelection.js
@@ -1,5 +1,4 @@
-/** @param {number} [price] */
-App.Intro.generateEstablishedArcologies = function(price) {
+App.Intro.generateEstablishedArcologies = function() {
 	/* setup */
 	const fsAllowed = {
 		FSGenderRadicalist: () => V.seeDicks !== 0,
@@ -7,6 +6,9 @@ App.Intro.generateEstablishedArcologies = function(price) {
 		FSDegradationist: () => V.seeExtreme !== 0
 	};
 	const allowedFS = App.Data.FutureSociety.playerFSNames.filter(fs => !(fs in fsAllowed) || fsAllowed[fs]());
+	const terrainTypes = ["marine", "marine", "oceanic", "ravine", "rural", "rural", "rural", "urban", "urban"];
+	const continents = ["Africa", "Asia", "Asia", "Australia", "Western Europe", "Southern Europe", "Central Europe", "Eastern Europe", "Scandinavia", "Japan", "North America", "North America", "South America", "the Middle East"];
+	const races = ["amerindian", "asian", "black", "indo-aryan", "latina", "malay", "middle eastern", "mixed race", "pacific islander", "semitic", "southern european", "white"];
 
 	let targets = 4;
 	if (V.PC.career === "arcology owner") {
@@ -14,32 +16,26 @@ App.Intro.generateEstablishedArcologies = function(price) {
 	}
 
 	/* generation */
-	const div = document.createElement("div");
+	const fragment = document.createDocumentFragment();
 	for (let i = 0; i < targets; i++) {
-		div.append(arcologyCard());
+		fragment.append(arcologyCard());
 	}
-	return div;
+	return fragment;
 
 	function arcologyCard() {
-		const div = document.createElement("div");
 		const arcology = generateArcology();
-		const sectionPrice = {
-			"penthouse": 10_000_000,
-			"shops": 1_000_000,
-			"apartments": 500_000,
-			"markets": 250_000,
-			"manufacturing": 100_000,
-		};
-		const rows = (/** @type {App.Arcology.Section} */ section) => section.rows
-			.reduce((acc, cur) => acc + cur.length * sectionPrice[section.id], 0);
-		const _price = price ?? arcology.building.sections
-			.reduce((acc, cur) => acc + rows(cur), 10_000_000); // base price of ¤10,000,000
-
+		const div = document.createElement("div");
 		div.classList.add("card");
-		div.append(
-			App.UI.DOM.makeElement("span", arcology.name, ['bold']),
-			` is an established arcology located in a Free City `,
-		);
+
+		div.append(App.UI.DOM.passageLink(arcology.name, "Intro Summary", () => {
+			V.targetArcology = arcology;
+			V.terrain = arcology.terrain;
+			V.continent = arcology.continent;
+			V.language = arcology.language;
+			arcology.apply();
+		}));
+
+		div.append(" is an established arcology located in a Free City ");
 		if (arcology.terrain === "urban") {
 			div.append(`carved out of an urban area of ${arcology.continent}.`);
 		} else if (arcology.terrain === "rural") {
@@ -138,7 +134,7 @@ App.Intro.generateEstablishedArcologies = function(price) {
 				innerDiv.append(App.UI.DOM.makeElement("span", `Neo-Imperialism,`, ["intro", "question"]), " adopting old world customs and remodeling them under an absolutist Imperial fist.");
 				break;
 			case "FSAztecRevivalist":
-				innerDiv.append(App.UI.DOM.makeElement("span", `Aztec Revivalism,`, ["intro", "question"]), " which aspires to reach the heights of the Aztec Empire at its peak.");
+				innerDiv.append(App.UI.DOM.makeElement("span", `Aztec Revivalism,`, ["intro", "question"]), " which aspires to reach the heights of the Aztec Empire at it's peak.");
 				innerDiv.append(App.UI.DOM.makeElement("div", "It has an established lingua franca: Nahuatl."));
 				break;
 			case "FSEgyptianRevivalist":
@@ -181,40 +177,8 @@ App.Intro.generateEstablishedArcologies = function(price) {
 			default:
 				innerDiv.append(App.UI.DOM.makeElement("span", `Multiculturalism,`, ["intro", "question"]), " a celebration of the total liberty that was the original purpose of the Free Cities.");
 		}
-
-		div.append(
-			innerDiv,
-			App.UI.DOM.makeElement("div", arcology.building.render(), ["intro"]),
-			App.UI.DOM.makeElement("div", makePurchase(`Purchase ${arcology.name}`, _price, "capEx", {
-				handler: () => {
-					V.arcologies[0].name = arcology.name;
-					V.terrain = arcology.terrain;
-					V.continent = arcology.continent;
-					V.language = arcology.language;
-					V.building = arcology.building;
-					V.weatherCladding = 0;
-					V.rep = 0;
-					V.arcologies[0].weeks = 1;
-
-					if (V.secExpEnabled) {
-						V.SecExp.core.authority = 0;
-					}
-
-					arcology.apply();
-					Engine.play("Main");
-				},
-				prereqs: [
-					[
-						V.rival.state === 0 || V.rival.state > 2,
-						`Your inter-arcology war is preventing you from leaving ${V.arcologies[0].name}.`],
-					[
-						V.daughtersVictory !== 1,
-						`You cannot leave ${V.arcologies[0].name} behind while the Daughters of Liberty are still a threat.`
-					],
-				],
-			}), ['center']),
-		);
-
+		div.append(innerDiv);
+		div.append(App.UI.DOM.makeElement("span", arcology.building.render(), "intro"));
 		return div;
 	}
 
@@ -225,8 +189,8 @@ App.Intro.generateEstablishedArcologies = function(price) {
 		arcology.FSProgress = either(10, 30, 50);
 		arcology.prosperity = either(40, 50, 60);
 		arcology.citizens = random(-1, 1);
-		arcology.terrain = App.Data.Arcology.Terrain.random();
-		arcology.continent = App.Data.Arcology.Continents.random();
+		arcology.terrain = terrainTypes.random();
+		arcology.continent = continents.random();
 		arcology.language = getLanguage();
 
 		const env = {terrain: arcology.terrain, established: true, fs: arcology.fs};
@@ -239,7 +203,7 @@ App.Intro.generateEstablishedArcologies = function(price) {
 		function getFS() {
 			const type = allowedFS.pluck();
 			if (type === "FSSupremacist" || type === "FSSubjugationist") {
-				arcology.race = App.Data.Slave.Races.random();
+				arcology.race = races.random();
 			}
 			return type;
 		}
diff --git a/src/events/intro/takeoverTarget.js b/src/events/intro/takeoverTarget.js
index 6544e2bdbce166beea77376e1e9535103a2c8cfe..ae52407a0cde46d8da4457b2195fec3ee10056c5 100644
--- a/src/events/intro/takeoverTarget.js
+++ b/src/events/intro/takeoverTarget.js
@@ -49,6 +49,6 @@ App.Intro.takeoverTarget = function() {
 	App.UI.DOM.appendNewElement("div", card, `With many new arcologies being constructed, you will be able to select which area of the world and type of Free City you'd like your target arcology to be located in.`, ["indent", "note"]);
 	App.UI.DOM.appendNewElement("div", card, `Recommended for new players.`, ["indent", "note"]);
 
-	node.append(App.Intro.generateEstablishedArcologies(0));
+	node.append(App.Intro.generateEstablishedArcologies());
 	return node;
 };
diff --git a/src/gui/options/options.js b/src/gui/options/options.js
index 44b83ade3ccec02e729a69fb7ecd6f9470374e0a..04a1fc99a8197eea9b070ce1599b6b3241b61322 100644
--- a/src/gui/options/options.js
+++ b/src/gui/options/options.js
@@ -132,16 +132,15 @@ App.UI.optionsPassage = function() {
 			App.UI.DOM.appendNewElement("h3", el, `NEW GAME PLUS`);
 			App.UI.DOM.appendNewElement("div", el, `You can begin a new game with up to five (or more) of your current slaves, although starting resources other than these slaves will be reduced.`);
 			App.UI.DOM.appendNewElement("div", el, App.UI.DOM.link(
-				"Activate New Game Plus",
+				"Activate New Game Plus.",
 				() => {
 					V.ui = "start";
 				},
 				[],
 				"New Game Plus"
-			), ["indent"]);
-			App.UI.DOM.appendNewElement("div", el, App.Arcology.purchase());
+			));
 		} else {
-			App.UI.DOM.appendNewElement("div", el, `New Game Plus is not available because this game was not started with a compatible version.`, ["note"]);
+			App.UI.DOM.appendNewElement("div", el, `New Game Plus is not available because this game was not started with a compatible version.`, "note");
 		}
 		return el;
 	}
@@ -978,7 +977,7 @@ App.Intro.contentAndFlavor = function(isIntro) {
 	options.addOption("Extreme content like amputation is currently", "seeExtreme")
 		.addValue("Enabled", 1).on().addValue("Disabled", 0).off()
 		.addComment("Will not affect extreme surgeries already applied in-game.");
-
+	
 	options.addOption("Permanent stretching of holes is currently", "seeStretching")
 		.addValue("Enabled", 1).on().addValue("Disabled", 0).off()
 		.addComment("Will not affect holes already stretched.");
diff --git a/src/gui/sideBar.js b/src/gui/sideBar.js
index 34a617b6e254d9468d555469ab8c23cdc4a101ed..d9c086210a02d3fccc704407847fd3446fab3ab9 100644
--- a/src/gui/sideBar.js
+++ b/src/gui/sideBar.js
@@ -37,9 +37,9 @@ App.Utils.userButton = function(nextButton = V.nextButton, nextLink = V.nextLink
 			link.id = "endWeekButton";
 			el.append(link);
 			el.append(" ");
-			App.UI.DOM.appendNewElement("span", el, App.UI.Hotkeys.hotkeys("endWeek"), ["hotkey"]);
+			App.UI.DOM.appendNewElement("span", el, App.UI.Hotkeys.hotkeys("endWeek"), "hotkey");
 			if (V.rulesAssistantAuto === 1 && DefaultRulesError()) {
-				App.UI.DOM.appendNewElement("div", el, `WARNING: Rules Assistant has rules with errors!`, ["yellow"]);
+				App.UI.DOM.appendNewElement("div", el, `WARNING: Rules Assistant has rules with errors!`, "yellow");
 			}
 		} else {
 			if (nextButton !== " ") {
@@ -51,7 +51,7 @@ App.Utils.userButton = function(nextButton = V.nextButton, nextLink = V.nextLink
 				link.id = "nextButton";
 				el.append(link);
 				el.append(" ");
-				App.UI.DOM.appendNewElement("span", el, App.UI.Hotkeys.hotkeys("nextLink"), ["hotkey"]);
+				App.UI.DOM.appendNewElement("span", el, App.UI.Hotkeys.hotkeys("nextLink"), "hotkey");
 			}
 		}
 	}
diff --git a/src/gui/storyCaption.js b/src/gui/storyCaption.js
index 3f40a2fc8d5ce2168827818303259f23d2f18cee..9498eb90d9f8cb94e07faee0fbcbf06938d3a201 100644
--- a/src/gui/storyCaption.js
+++ b/src/gui/storyCaption.js
@@ -85,12 +85,7 @@ App.UI.storyCaption = function() {
 	function week() {
 		const fragment = new DocumentFragment();
 		const div = document.createElement("div");
-		const tooltip = document.createElement("div");
-		App.UI.DOM.appendNewElement("div", tooltip, capFirstChar(years(V.week)));
-		if (V.arcologies[0].weeks !== V.week) {
-			App.UI.DOM.appendNewElement("div", tooltip, `${capFirstChar(years(V.arcologies[0].weeks))} in ${V.arcologies[0].name}`);
-		}
-		App.UI.DOM.appendNewElement("span", fragment, App.UI.DOM.spanWithTooltip(`Week ${V.week}`, tooltip, ['bold']));
+		App.UI.DOM.appendNewElement("span", fragment, App.UI.DOM.spanWithTooltip(`Week ${V.week}`, capFirstChar(years(V.week))), ['bold']);
 		fragment.append(div);
 		App.UI.DOM.appendNewElement("div", fragment, `Week of ${asDateString(V.week)}`);
 
diff --git a/src/js/economyJS.js b/src/js/economyJS.js
index 0fd8e554c8540d6089d57be605699b282a7f4a0a..99fbadc1e13b4a7a444603dfdd9b132cea44aaaf 100644
--- a/src/js/economyJS.js
+++ b/src/js/economyJS.js
@@ -1402,8 +1402,8 @@ globalThis.NPCSexSupply = function(lowerDemandLeft, lowerTotalDemand, middleDema
 	if (NPCSexSupply.lowerClass > lowerTotalDemand * (0.3 - V.sexSupplyBarriers.lowerClass / 20)) { // Checking if NPCs are supplying more than the standard minimum share of supply
 		if (lowerClassNPCRatio >= lowerClassOptimalRatio + 0.05) { // NPCs provide more than they really care to and some wish to stop providing sexual services, max reduction of 10% of previous
 			NPCSexSupply.lowerClass -= Math.min(NPCSexSupply.lowerClass - Math.trunc((NPCSexSupply.lowerClass * 4 + lowerClassOptimal) / 5), Math.trunc(NPCSexSupply.lowerClass * 0.1));
-		} else if (lowerClassNPCRatio <= lowerClassOptimalRatio - 0.05) { // NPCs see business opportunities and provide more sexual services, minimum increase of 500, max of 10% of previous
-			NPCSexSupply.lowerClass += Math.trunc(Math.clamp((NPCSexSupply.lowerClass * 4 + lowerClassOptimal) / 5 - NPCSexSupply.lowerClass, 500, NPCSexSupply.lowerClass * 0.1) * (1 - V.sexSupplyBarriers.lowerClass / 5)); // Slow down NPC growth through bureaucracy
+		} else if (lowerClassNPCRatio <= lowerClassOptimalRatio - 0.05) { // NPCs see business opportunities and provide more sexual services, minimum increse of 500, max of 10% of previous
+			NPCSexSupply.lowerClass += Math.trunc(Math.clamp((NPCSexSupply.lowerClass * 4 + lowerClassOptimal) / 5 - NPCSexSupply.lowerClass, 500, NPCSexSupply.lowerClass * 0.1) * (1 - V.sexSupplyBarriers.lowerClass / 5)); // Slow down NPC growth through beauraucracy
 		} else {
 			NPCSexSupply.lowerClass = Math.trunc(NPCSexSupply.lowerClass * (1 + normalRandInt(0, 20) / 1000)); // Some random fluxuations whenever the NPC supply is roughly on target.
 		}
@@ -2540,12 +2540,11 @@ globalThis.supplyPoliciesReport = function(NPCclass) {
  * @returns {DocumentFragment}
  */
 globalThis.ownershipReport = function(short) {
-	const fragment = new DocumentFragment();
-	const ownership = V.arcologies[0].ownership;
-	const minority = V.arcologies[0].minority;
+	const fragment = document.createDocumentFragment();
 	let cssClass;
 	let warning = false;
-
+	const ownership = V.arcologies[0].ownership;
+	const minority = V.arcologies[0].minority;
 	if (ownership <= minority + 5) {
 		cssClass = 'warning';
 		warning = true;
@@ -2554,10 +2553,8 @@ globalThis.ownershipReport = function(short) {
 	} else if (ownership >= minority) {
 		cssClass = 'yellow';
 	}
-
 	if (short === true) {
 		const span = document.createElement("span");
-
 		span.className = cssClass;
 		span.append(`${ownership}%`);
 		if (V.assistant.power >= 1 && ownership < 100) {
@@ -2565,19 +2562,18 @@ globalThis.ownershipReport = function(short) {
 		}
 		fragment.append("(", span, ")");
 	} else {
-		fragment.append("You own ", App.UI.DOM.makeElement("span", `${ownership}%`, ["bold"]),
+		fragment.append("You own ", App.UI.DOM.makeElement("span", `${ownership}%`, "bold"),
 			` of ${V.arcologies[0].name}, `);
 		if (minority > 0) {
-			fragment.append("against ", App.UI.DOM.makeElement("span", `${minority}%`, ["bold"]),
+			fragment.append("against ", App.UI.DOM.makeElement("span", `${minority}%`, "bold"),
 				" owned by the second most significant holder.");
 		} else {
 			fragment.append("and there are no other significant holders.");
 		}
 		if (warning) {
-			App.UI.DOM.appendNewElement("span", fragment, " A dangerously narrow margin of control.", ["warning"]);
+			App.UI.DOM.appendNewElement("span", fragment, " A dangerously narrow margin of control.", "warning");
 		}
 	}
-
 	return fragment;
 };
 
diff --git a/src/neighbor/neighborDisplay.js b/src/neighbor/neighborDisplay.js
index 68b35bfb33b5611b0ca3184eda19d353cce5946c..abae89e2f7c7815ea3416e5a226adb701607ded8 100644
--- a/src/neighbor/neighborDisplay.js
+++ b/src/neighbor/neighborDisplay.js
@@ -11,7 +11,7 @@ App.Neighbor.Display = class {
 	 * @returns {Element}
 	 */
 	render() {
-		const container = App.UI.DOM.makeElement("div", null, ["margin-top"]);
+		const container = document.createElement("div");
 		container.id = this.containerID;
 
 		function makeSortLink(/** @type {string} */ title, /** @type {string} */ mode) {