diff --git a/js/003-data/clothes/aSlaveGown.js b/js/003-data/clothes/aSlaveGown.js
index e087ab5746ad415224e354b2ed7f61cbd758c896..1239f89ef331bb018cc94d4439477526e776f82d 100644
--- a/js/003-data/clothes/aSlaveGown.js
+++ b/js/003-data/clothes/aSlaveGown.js
@@ -206,7 +206,7 @@ App.Data.clothes.set("a slave gown",
 							if (slave.hLength > 100) {
 								r.push(`is shaved on one side into a long undercut that falls well past ${his} breasts.`);
 							} else if (slave.hLength > 30) {
-								r.push(`is shaved to one side, the other half falling down to their neck.`);
+								r.push(`is shaved to one side, the other half falling down to ${his} neck.`);
 							} else if (slave.hLength > 10) {
 								r.push(`is shaved to one side, the other half falling just over one eye.`);
 							} else {
diff --git a/src/events/RESS/bedSnuggle.js b/src/events/RESS/bedSnuggle.js
index fd9cda0e9e62d7ddd7c2271440fde60b26717a1e..f55f67a154dadaead22d5272c98609a1540f5f7f 100644
--- a/src/events/RESS/bedSnuggle.js
+++ b/src/events/RESS/bedSnuggle.js
@@ -1,4 +1,3 @@
-
 App.Events.RESSBedSnuggle = class RESSBedSnuggle extends App.Events.BaseEvent {
 	eventPrerequisites() {
 		return []; // always valid if sufficient actors can be cast successfully
@@ -133,7 +132,7 @@ App.Events.RESSBedSnuggle = class RESSBedSnuggle extends App.Events.BaseEvent {
 		if (eventSlave.belly >= 10000) {
 			r.push(r.pop() + `, beneath them, ${his} ${belly}`);
 			if (eventSlave.bellyPreg >= 8000) {
-				r.push(r.pop() + `pregnant`);
+				r.push(`pregnant`);
 			}
 			r.push(`belly rests`);
 			if (V.PC.belly >= 1500) {
diff --git a/src/events/reRecruit/femaleRecruit.js b/src/events/reRecruit/femaleRecruit.js
index 8c440a5fe139e5452d6d9703980bbefbff4bef7e..b11f14adb7a8bdfa3766ebe519499665d72c29eb 100644
--- a/src/events/reRecruit/femaleRecruit.js
+++ b/src/events/reRecruit/femaleRecruit.js
@@ -29,7 +29,7 @@ App.Events.recFemaleRecruit = class recFemaleRecruit extends App.Events.BaseEven
 		App.Events.addParagraph(node, r);
 		r = [];
 
-		r.push(Spoken(slave, `"${title}, my name is ${slave.slaveName}. I'm, um, bored, I guess. I go to clubs and get drunk and fuck guys and it's just kinda boring. I thought it would be different when I turned ${num(slave.actualAge)}, but that was a couple months ago and, well, nothing's different. I saw ${S.HeadGirl.slaveName} and ${he2} was just so grateful and beautiful and ${he2} seemed so confident in what ${he2} was doing and who he was and I talked to ${him2} and ${he} said ${he2} was your Head Girl and... I want to be like ${him2}. Can I be your slave? I'd be good, I'm good at sucking dicks and stuff."`));
+		r.push(Spoken(slave, `"${title}, my name is ${slave.slaveName}. I'm, um, bored, I guess. I go to clubs and get drunk and fuck guys and it's just kinda boring. I thought it would be different when I turned ${num(slave.actualAge)}, but that was a couple months ago and, well, nothing's different. I saw ${S.HeadGirl.slaveName} and ${he2} was just so graceful and beautiful and ${he2} seemed so confident in what ${he2} was doing and who ${he2} was and I talked to ${him2} and ${he2} said ${he2} was your Head Girl and... I want to be like ${him2}. Can I be your slave? I'd be good, I'm good at sucking dicks and stuff."`));
 		r.push(`${He} seems to be a little naïve about sexual slavery, but there's no need to tell ${him} that.`);
 		App.Events.addParagraph(node, r);
 
@@ -102,8 +102,17 @@ App.Events.recFemaleRecruit = class recFemaleRecruit extends App.Events.BaseEven
 			slave.piercing.eyebrow.weight = 1;
 			slave.piercing.navel.weight = 1;
 			slave.behavioralFlaw = "arrogant";
+			if (["apathetic", "hates oral", "repressed"].includes(slave.sexualFlaw)) {
+				slave.sexualFlaw = "none";
+			}
+			slave.energy = random(60, 90);
+			//TODO: make sexual orientation dependent on HG appearance?
+			slave.attrXX = random(60, 90);
+			slave.attrXY = random(60, 90);
 			generateSalonModifications(slave);
-			slave.hStyle = "fashionable for a Free Cities girl, long, with the left half shaved";
+			slave.hStyle = "undercut";
+			//Replaced custom hairstyle with a near-identical standard one that plays nice with images. Original custom hairstyle below.
+			//slave.hStyle = "fashionable for a Free Cities girl, long, with the left half shaved";
 			slave.pubicHStyle = "waxed";
 			slave.underArmHStyle = "waxed";
 			return slave;
diff --git a/src/npc/children/longChildDescription.js b/src/npc/children/longChildDescription.js
index 259dab8acf65f4772b17d3f7e11773151e32e3b2..907a413f5650665577d03c3f3f61cdc494a1d5cb 100644
--- a/src/npc/children/longChildDescription.js
+++ b/src/npc/children/longChildDescription.js
@@ -3649,7 +3649,7 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event
 							r += `is shaved into a long, flowing undercut kept out of ${his} face by a couple of black hairpins. `;
 							break;
 						default:
-							r += `is shaved to one side, the other half falling down to their neck. `;
+							r += `is shaved to one side, the other half falling down to ${his} neck. `;
 							break;
 					}
 				} else if (child.hLength > 10) {
@@ -7365,22 +7365,21 @@ App.Facilities.Nursery.LongChildDescription = function(child, {market = 0, event
 	}
 
 	if (arcology.FSGenderFundamentalistLawBeauty > 0 || arcology.FSGenderRadicalistLawBeauty > 0 || arcology.FSSlimnessEnthusiastLaw > 0 || arcology.FSHedonisticDecadenceLaw2 > 0 || arcology.FSRestartSMR > 0) {
-		r += `${His} body is a perfect example of `;
 		if (arcology.FSGenderFundamentalistLawBeauty + arcology.FSGenderRadicalistLawBeauty > 0) {
 			if (genderLawPass(child)) {
-				r += `the fashionable feminine ideal. `;
+				r += `${His} body is a perfect example of the fashionable feminine ideal. `;
 			}
 		} else if (arcology.FSSlimnessEnthusiastLaw) {
 			if (slimPass(child)) {
-				r += `the fashionable flat ideal. `;
+				r += `${His} body is a perfect example of the fashionable flat ideal. `;
 			}
 		} else if (arcology.FSHedonisticDecadenceLaw2) {
 			if (child.boobs >= 2000 && child.butt >= 5 && child.weight > 95) {
-				r += `the fashionable plump body. `;
+				r += `${His} body is a perfect example of the fashionable plump body. `;
 			}
 		}
 		if (arcology.FSRestartSMR > 0 && arcology.FSRestart > 80 && !child.dick && !child.balls && !child.ovaries && !child.mpreg && child.vagina < 0) {
-			r += `a subhuman who accepted their place in society. `;
+			r += `${His} body is a perfect example of a subhuman who accepted ${his} place in society. `;
 		}
 	}
 
diff --git a/src/npc/descriptions/longSlave.js b/src/npc/descriptions/longSlave.js
index 64970290b67e5f978a9644c8cadaa95855e48d8b..baec1e2db7dbe1cced13c2344ba0d25918db356d 100644
--- a/src/npc/descriptions/longSlave.js
+++ b/src/npc/descriptions/longSlave.js
@@ -263,7 +263,7 @@ App.Desc.longSlave = function(slave, {descType, market = 0, prisonCrime, noArt}
 	}
 
 	if (V.arcologies[0].FSRestartSMR > 0 && V.arcologies[0].FSRestart > 80 && (slave.dick === 0) && (slave.balls === 0) && (slave.ovaries === 0) && (slave.mpreg === 0) && (slave.vagina < 0)) {
-		r.push(`${His} body is a perfect example of a subhuman who has accepted their place in society.`);
+		r.push(`${His} body is a perfect example of a subhuman who has accepted ${his} place in society.`);
 	}
 
 	if (V.arcologies[0].FSIntellectualDependencyLawBeauty === 1) {
diff --git a/src/npc/descriptions/style/hairClothing.js b/src/npc/descriptions/style/hairClothing.js
index bfa07f1a2fcab85bf6cfb29e4ee57aa1d77061cd..fff6b8345b33361b4b2ad63284115e23f5976db7 100644
--- a/src/npc/descriptions/style/hairClothing.js
+++ b/src/npc/descriptions/style/hairClothing.js
@@ -5535,7 +5535,7 @@ App.Desc.hairClothing = function(slave) {
 								r.push(`is shaved into a long, flowing undercut and kept out of ${his} face by a couple of heart-shaped barrettes.`);
 								break;
 							default:
-								r.push(`is shaved to one side, the other half falling down to their neck.`);
+								r.push(`is shaved to one side, the other half falling down to ${his} neck.`);
 						}
 					} else if (slave.hLength > 10) {
 						switch (slave.clothes) {