diff --git a/code/modules/client/preference_setup/loadout/loadout_suit.dm b/code/modules/client/preference_setup/loadout/loadout_suit.dm
index 9ff0f0d78c..3eb3b50401 100644
--- a/code/modules/client/preference_setup/loadout/loadout_suit.dm
+++ b/code/modules/client/preference_setup/loadout/loadout_suit.dm
@@ -267,4 +267,16 @@
for(var/track_style in typesof(/obj/item/clothing/suit/storage/toggle/track))
var/obj/item/clothing/suit/storage/toggle/track/track = track_style
tracks[initial(track.name)] = track
- gear_tweaks += new/datum/gear_tweak/path(sortAssoc(tracks))
\ No newline at end of file
+ gear_tweaks += new/datum/gear_tweak/path(sortAssoc(tracks))
+
+/datum/gear/suit/flannel
+ display_name = "grey flannel"
+ path = /obj/item/clothing/suit/storage/flannel
+
+/datum/gear/suit/flannel/red
+ display_name = "red flannel"
+ path = /obj/item/clothing/suit/storage/flannel/red
+
+/datum/gear/suit/flannel/aqua
+ display_name = "aqua flannel"
+ path = /obj/item/clothing/suit/storage/flannel/aqua
\ No newline at end of file
diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm
index 413685df45..93a1775e80 100644
--- a/code/modules/clothing/suits/miscellaneous.dm
+++ b/code/modules/clothing/suits/miscellaneous.dm
@@ -719,4 +719,81 @@
icon_state = "trackjacketwhite"
item_state = "trackjacketwhite"
icon_open = "trackjacketwhite_open"
- icon_closed = "trackjacketwhite"
\ No newline at end of file
+ icon_closed = "trackjacketwhite"
+
+//Flannels
+
+/obj/item/clothing/suit/storage/flannel
+ name = "Flannel shirt"
+ desc = "A comfy, grey flannel shirt. Unleash your inner hipster."
+ icon_state = "flannel"
+ item_state = "gy_suit"
+ var/rolled = 0
+ var/tucked = 0
+ var/buttoned = 0
+
+/obj/item/clothing/suit/storage/flannel/verb/roll_sleeves()
+ set name = "Roll Sleeves"
+ set category = "Object"
+ set src in usr
+ if(!istype(usr, /mob/living))
+ return
+ if(usr.stat)
+ return
+
+ if(rolled == 0)
+ rolled = 1
+ usr << "You roll up the sleeves of your [src]."
+ else
+ rolled = 0
+ usr << "You roll down the sleeves of your [src]."
+ update_icon()
+
+/obj/item/clothing/suit/storage/flannel/verb/tuck()
+ set name = "Toggle Shirt Tucking"
+ set category = "Object"
+ set src in usr
+ if(!istype(usr, /mob/living)||usr.stat)
+ return
+
+ if(tucked == 0)
+ tucked = 1
+ usr << "You tuck in your your [src]."
+ else
+ tucked = 0
+ usr << "You untuck your [src]."
+ update_icon()
+
+/obj/item/clothing/suit/storage/flannel/verb/button()
+ set name = "Toggle Shirt Buttons"
+ set category = "Object"
+ set src in usr
+ if(!istype(usr, /mob/living)||usr.stat)
+ return
+
+ if(buttoned == 0)
+ buttoned = 1
+ usr << "You unbutton your [src]."
+ else
+ buttoned = 0
+ usr<<"You button your [src]."
+ update_icon()
+
+/obj/item/clothing/suit/storage/flannel/update_icon()
+ icon_state = initial(icon_state)
+ if(rolled)
+ icon_state += "r"
+ if(tucked)
+ icon_state += "t"
+ if(buttoned)
+ icon_state += "b"
+
+/obj/item/clothing/suit/storage/flannel/red
+ desc = "A comfy, red flannel shirt. Unleash your inner hipster."
+ icon_state = "flannel_red"
+ item_state = "r_suit"
+
+/obj/item/clothing/suit/storage/flannel/aqua
+ desc = "A comfy, aqua flannel shirt. Unleash your inner hipster."
+ icon_state = "flannel_aqua"
+ item_state = "b_suit"
\ No newline at end of file
diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi
index 93a38573cd..438273e2ea 100644
Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ
diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi
index 9ea8f949ad..7bf4d19316 100644
Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ