diff --git a/client/i18n/locales/english/intro.json b/client/i18n/locales/english/intro.json
index 83c39122c31..0f18436d98c 100644
--- a/client/i18n/locales/english/intro.json
+++ b/client/i18n/locales/english/intro.json
@@ -2136,7 +2136,13 @@
]
},
"rxzq": { "title": "97", "intro": [] },
- "xobq": { "title": "98", "intro": [] },
+ "workshop-cat-painting": {
+ "title": "Build a Cat Painting",
+ "intro": [
+ "Mastering CSS positioning is essential for creating visually appealing and responsive web layouts.",
+ "In this workshop, you will build a cat painting. You'll learn about how to work with absolute positioning, the z-index property, and the transform property."
+ ]
+ },
"lab-house-painting": {
"title": "Build a House Painting",
"intro": ["For this lab, you will build a house painting using CSS."]
diff --git a/client/src/pages/learn/front-end-development/workshop-cat-painting/index.md b/client/src/pages/learn/front-end-development/workshop-cat-painting/index.md
new file mode 100644
index 00000000000..e3b0ce54942
--- /dev/null
+++ b/client/src/pages/learn/front-end-development/workshop-cat-painting/index.md
@@ -0,0 +1,11 @@
+---
+title: Introduction to the Build a Cat Painting
+block: workshop-cat-painting
+superBlock: front-end-development
+---
+
+## Introduction to the Build a Cat Painting
+
+Mastering CSS positioning is essential for creating visually appealing and responsive web layouts.
+
+In this workshop, you will build a cat painting. You'll learn about how to work with absolute positioning, the z-index property, and the transform property.
diff --git a/curriculum/challenges/_meta/workshop-cat-painting/meta.json b/curriculum/challenges/_meta/workshop-cat-painting/meta.json
new file mode 100644
index 00000000000..181ae62d52b
--- /dev/null
+++ b/curriculum/challenges/_meta/workshop-cat-painting/meta.json
@@ -0,0 +1,334 @@
+{
+ "name": "Build a Cat Painting",
+ "blockType": "workshop",
+ "blockLayout": "challenge-grid",
+ "isUpcomingChange": true,
+ "usesMultifileEditor": true,
+ "hasEditableBoundaries": true,
+ "dashedName": "workshop-cat-painting",
+ "order": 98,
+ "superBlock": "front-end-development",
+ "challengeOrder": [
+ {
+ "id": "646c48df8674cf2b91020ecc",
+ "title": "Step 1"
+ },
+ {
+ "id": "647d855ac12cd436059acd39",
+ "title": "Step 2"
+ },
+ {
+ "id": "646c586be7180e40ddf74ff6",
+ "title": "Step 3"
+ },
+ {
+ "id": "646c59e942f35541923104bf",
+ "title": "Step 4"
+ },
+ {
+ "id": "646c5d7057c45f432fcdd46c",
+ "title": "Step 5"
+ },
+ {
+ "id": "646c5ace05e4be4211407935",
+ "title": "Step 6"
+ },
+ {
+ "id": "646c5e727e56e743c9aed4a1",
+ "title": "Step 7"
+ },
+ {
+ "id": "6476f5c17f99146071ee884c",
+ "title": "Step 8"
+ },
+ {
+ "id": "6476f7a4827bcc61682f2347",
+ "title": "Step 9"
+ },
+ {
+ "id": "6476fb7cbaafa36d65e9cf35",
+ "title": "Step 10"
+ },
+ {
+ "id": "6476fc5cf14b276e6d04e82a",
+ "title": "Step 11"
+ },
+ {
+ "id": "6476fd4213318f6ee211028a",
+ "title": "Step 12"
+ },
+ {
+ "id": "64770351e8586671ec0911f0",
+ "title": "Step 13"
+ },
+ {
+ "id": "6477062778c85972eb648030",
+ "title": "Step 14"
+ },
+ {
+ "id": "649353647c44ef4867ab4935",
+ "title": "Step 15"
+ },
+ {
+ "id": "647d821de0d97b3283c72b36",
+ "title": "Step 16"
+ },
+ {
+ "id": "646c5ffef5598d449b52ec12",
+ "title": "Step 17"
+ },
+ {
+ "id": "646ce8bb4b35544d501c7184",
+ "title": "Step 18"
+ },
+ {
+ "id": "646ce9d790d2a44de5f99e04",
+ "title": "Step 19"
+ },
+ {
+ "id": "646ceb843412c74edee27a79",
+ "title": "Step 20"
+ },
+ {
+ "id": "6676a8b01e56ec1a1e07c202",
+ "title": "Step 21"
+ },
+ {
+ "id": "6676a8a8d9861319ee901a90",
+ "title": "Step 22"
+ },
+ {
+ "id": "646cecc9eb5c4f4f73dafd07",
+ "title": "Step 23"
+ },
+ {
+ "id": "646cef0c2b98915094df7099",
+ "title": "Step 24"
+ },
+ {
+ "id": "646cf1206cac5f51804f49cf",
+ "title": "Step 25"
+ },
+ {
+ "id": "646cf2249f02ca5233d9af7c",
+ "title": "Step 26"
+ },
+ {
+ "id": "646cf48d8f8e1f535a1821d3",
+ "title": "Step 27"
+ },
+ {
+ "id": "646cf6cbca98e258da65c979",
+ "title": "Step 28"
+ },
+ {
+ "id": "646cf88aa884405a11ea5bcc",
+ "title": "Step 29"
+ },
+ {
+ "id": "646cfc2b8e6fe95c20a819d5",
+ "title": "Step 30"
+ },
+ {
+ "id": "646cfd853634255d02b64cc1",
+ "title": "Step 31"
+ },
+ {
+ "id": "646cfde6ac612e5d60391f50",
+ "title": "Step 32"
+ },
+ {
+ "id": "646dd556d524bc61c0139bd6",
+ "title": "Step 33"
+ },
+ {
+ "id": "646dd6f9caa862627dd87772",
+ "title": "Step 34"
+ },
+ {
+ "id": "646dd7cfd0cfac630c1dd520",
+ "title": "Step 35"
+ },
+ {
+ "id": "646dd8c79ec23463a3d0e356",
+ "title": "Step 36"
+ },
+ {
+ "id": "646dd9d9a729916460724f16",
+ "title": "Step 37"
+ },
+ {
+ "id": "646ddab8afd73764f5241bbf",
+ "title": "Step 38"
+ },
+ {
+ "id": "646ddb61ff08366570cc5902",
+ "title": "Step 39"
+ },
+ {
+ "id": "646ddd3f9f97a0667b964bdb",
+ "title": "Step 40"
+ },
+ {
+ "id": "646dde7dc20dc167489faa69",
+ "title": "Step 41"
+ },
+ {
+ "id": "646ddf888632fa67f1180940",
+ "title": "Step 42"
+ },
+ {
+ "id": "646de5dc8988076a1d992afd",
+ "title": "Step 43"
+ },
+ {
+ "id": "646de6a97b50a86ac487de86",
+ "title": "Step 44"
+ },
+ {
+ "id": "646de7b64467e96b7d35b5cd",
+ "title": "Step 45"
+ },
+ {
+ "id": "646de8478d6f796bfbdccfb2",
+ "title": "Step 46"
+ },
+ {
+ "id": "646de8d204a3426c7d184372",
+ "title": "Step 47"
+ },
+ {
+ "id": "646dea1c98c2426d43a705c3",
+ "title": "Step 48"
+ },
+ {
+ "id": "646deb169847f86df0f95bfc",
+ "title": "Step 49"
+ },
+ {
+ "id": "646dec359bef3b7811fba5a6",
+ "title": "Step 50"
+ },
+ {
+ "id": "646dedbcba062079128b2ecc",
+ "title": "Step 51"
+ },
+ {
+ "id": "646def5e863abf7a14501421",
+ "title": "Step 52"
+ },
+ {
+ "id": "646df03c8f79337ab46f148b",
+ "title": "Step 53"
+ },
+ {
+ "id": "646df0cf26413a7b35e4b8b3",
+ "title": "Step 54"
+ },
+ {
+ "id": "646df1d1aa4ae57bdf1869c4",
+ "title": "Step 55"
+ },
+ {
+ "id": "646dffd8ce9ac77ec1906f2e",
+ "title": "Step 56"
+ },
+ {
+ "id": "64a2687ef267e5934a2f93e3",
+ "title": "Step 57"
+ },
+ {
+ "id": "64a26ac5540c5493f4641f10",
+ "title": "Step 58"
+ },
+ {
+ "id": "646f0417322c0e04983a5149",
+ "title": "Step 59"
+ },
+ {
+ "id": "646f08293804a30685533c6f",
+ "title": "Step 60"
+ },
+ {
+ "id": "646f09293eb3230723a62f77",
+ "title": "Step 61"
+ },
+ {
+ "id": "646f0c9a1e3360092d1bbd33",
+ "title": "Step 62"
+ },
+ {
+ "id": "646f0ce5737243098ad6e494",
+ "title": "Step 63"
+ },
+ {
+ "id": "646f0ef13604420a8744f7d4",
+ "title": "Step 64"
+ },
+ {
+ "id": "646f0f7c5933560af8e7e380",
+ "title": "Step 65"
+ },
+ {
+ "id": "646f102bf87b350b593baa72",
+ "title": "Step 66"
+ },
+ {
+ "id": "646f107abb89d00bb99f387a",
+ "title": "Step 67"
+ },
+ {
+ "id": "64a3bcbc83e574b58c8ed048",
+ "title": "Step 68"
+ },
+ {
+ "id": "646f12da0b4c5d0ca162834a",
+ "title": "Step 69"
+ },
+ {
+ "id": "646f135eab69d90d0c6d4e9b",
+ "title": "Step 70"
+ },
+ {
+ "id": "646f159b2cffb21150b927cb",
+ "title": "Step 71"
+ },
+ {
+ "id": "646f164bf100dd11d226161f",
+ "title": "Step 72"
+ },
+ {
+ "id": "646f1764e2f1d212ba9785a7",
+ "title": "Step 73"
+ },
+ {
+ "id": "646f1802a09a171332e14630",
+ "title": "Step 74"
+ },
+ {
+ "id": "646f4d6c42dc5f214f4e7444",
+ "title": "Step 75"
+ },
+ {
+ "id": "646f4e46e81f7021d5fd9c1d",
+ "title": "Step 76"
+ },
+ {
+ "id": "646f4f6a14e3c522d130a0d2",
+ "title": "Step 77"
+ },
+ {
+ "id": "646f4fe12b7985232bf475a5",
+ "title": "Step 78"
+ },
+ {
+ "id": "646f507e4d1cd323f17db4fc",
+ "title": "Step 79"
+ },
+ {
+ "id": "646f516dbfc1342495515625",
+ "title": "Step 80"
+ }
+ ],
+ "helpCategory": "HTML-CSS"
+}
\ No newline at end of file
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c48df8674cf2b91020ecc.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c48df8674cf2b91020ecc.md
new file mode 100644
index 00000000000..a0ab3e1edc8
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c48df8674cf2b91020ecc.md
@@ -0,0 +1,50 @@
+---
+id: 646c48df8674cf2b91020ecc
+title: Step 1
+challengeType: 0
+dashedName: step-1
+demoType: onLoad
+---
+
+# --description--
+
+You have been provided with a basic boilerplate. Begin by adding a `link` element within your `head` element. For that `link` element, set the `rel` attribute to `stylesheet` and the `href` to `./styles.css`.
+
+# --hints--
+
+Your should have a `link` element.
+
+```js
+assert.exists(document.querySelector("head>link"));
+```
+
+Your `link` element should have a `rel` and `href` attribute set to `stylesheet` and `./styles.css`.
+
+```js
+const link = document.querySelector("head>link");
+assert.equal(link?.getAttribute("rel"), "stylesheet");
+const href = link?.getAttribute("data-href");
+console.log(href)
+assert(href === "./styles.css" || href === "styles.css");
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+--fcc-editable-region--
+
+
+ fCC Cat Painting
+
+--fcc-editable-region--
+
+
+```
+
+```css
+
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c586be7180e40ddf74ff6.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c586be7180e40ddf74ff6.md
new file mode 100644
index 00000000000..4fa9348ffa8
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c586be7180e40ddf74ff6.md
@@ -0,0 +1,51 @@
+---
+id: 646c586be7180e40ddf74ff6
+title: Step 3
+challengeType: 0
+dashedName: step-3
+---
+
+# --description--
+
+Give your `body` element a `background-color` of `#c9d2fc`.
+
+# --hints--
+
+You should have a `body` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('body'));
+```
+
+Your `body` selector should have a `background-color` property set to `#c9d2fc`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('body')?.backgroundColor === 'rgb(201, 210, 252)');
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
+
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c59e942f35541923104bf.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c59e942f35541923104bf.md
new file mode 100644
index 00000000000..d483fe5c8f8
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c59e942f35541923104bf.md
@@ -0,0 +1,66 @@
+---
+id: 646c59e942f35541923104bf
+title: Step 4
+challengeType: 0
+dashedName: step-4
+---
+
+# --description--
+
+Back in your HTML, create a `main` element. Inside that `main` element, add a `div` element with the class `cat-head`.
+
+# --hints--
+
+You should have a `main` element.
+
+```js
+assert(document.querySelectorAll('main').length === 1);
+```
+
+You should have a `div` element.
+
+```js
+assert(document.querySelectorAll('div').length === 1);
+```
+
+Your `div` element should have the class `cat-head`.
+
+```js
+assert(document.querySelector('div')?.getAttribute('class') === 'cat-head');
+```
+
+Your `div` element should be inside your `main` tag.
+
+```js
+assert(document.querySelectorAll('main div').length === 1);
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c5ace05e4be4211407935.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c5ace05e4be4211407935.md
new file mode 100644
index 00000000000..56cb33349e6
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c5ace05e4be4211407935.md
@@ -0,0 +1,83 @@
+---
+id: 646c5ace05e4be4211407935
+title: Step 6
+challengeType: 0
+dashedName: step-6
+---
+
+# --description--
+
+To see the `.cat-head` element, give it a linear gradient background with `#5e5e5e` at `85%` and `#45454f` at `100%`.
+
+You might not notice the difference between these two colors, but they are there.
+
+# --hints--
+
+Your `.cat-head` selector should have a `background` property.
+
+```js
+assert.match(code, /background:/)
+```
+
+Your `background` property should use the `linear-gradient` function.
+
+```js
+assert.match(code, /background:\s*linear-gradient\(/)
+```
+
+Your `linear-gradient` function should set the first color to be `#5e5e5e` at `85%`.
+
+```js
+const gradientBackgroundImage = new __helpers.CSSHelp(document).getStyle('.cat-head')?.getPropVal('background-image', true);
+const firstGradient = gradientBackgroundImage.split(/\s*rgb\s*/)[1];
+assert.equal(firstGradient,'(94,94,94)85%,');
+```
+
+Your `linear-gradient` function should set the second color to be `#45454f` at `100%`.
+
+```js
+const gradientBackgroundImage = new __helpers.CSSHelp(document).getStyle('.cat-head')?.getPropVal('background-image', true);
+const secondGradient = gradientBackgroundImage.split(/\s*rgb\s*/)[2];
+assert.equal(secondGradient,'(69,69,79)100%)');
+```
+
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+--fcc-editable-region--
+.cat-head {
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+
+}
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c5d7057c45f432fcdd46c.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c5d7057c45f432fcdd46c.md
new file mode 100644
index 00000000000..84bc5744a33
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c5d7057c45f432fcdd46c.md
@@ -0,0 +1,77 @@
+---
+id: 646c5d7057c45f432fcdd46c
+title: Step 5
+challengeType: 0
+dashedName: step-5
+---
+
+# --description--
+
+Using a class selector, give the `.cat-head` element a width of `205px` and a height of `180px`. Also, give it a border of `1px solid #000` and a `border-radius` of `46%`.
+
+# --hints--
+
+You should have a `.cat-head` selector.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head'))
+```
+
+Your `.cat-head` selector should have a `width` set to `205px`.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.width === '205px');
+```
+
+Your `.cat-head` selector should have a `height` set to `180px`.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.height === '180px')
+```
+
+Your `.cat-head` selector should have a `border` set to `1px solid #000`.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.border === '1px solid rgb(0, 0, 0)')
+```
+
+Your `.cat-head` selector should have a `border-radius` set to `46%`.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle(".cat-head")?.borderRadius === '46%')
+```
+
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c5e727e56e743c9aed4a1.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c5e727e56e743c9aed4a1.md
new file mode 100644
index 00000000000..fc1a8dd3529
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c5e727e56e743c9aed4a1.md
@@ -0,0 +1,80 @@
+---
+id: 646c5e727e56e743c9aed4a1
+title: Step 7
+challengeType: 0
+dashedName: step-7
+---
+
+# --description--
+
+CSS positioning lets you set how you want an element to be positioned in the browser. It has a `position` property you can set to `static`, `absolute`, `relative`, `sticky` or `fixed`.
+
+Once you set the `position` property of the element, you can move the element around by setting a pixel or a percentage value for one or more of the `top`, `right`, `left`, or `bottom` properties.
+
+`static` is the default positioning for all elements. If you assign it to an element, you won't be able to move it around with `top`, `right`, `left`, or `bottom`.
+
+Give `.cat-head` a `position` property of `static`, then set the `top` and `left` properties to `100px` each.
+
+
+# --hints--
+
+Your `.cat-head` selector should have a `position` property set to `static`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.position === 'static')
+```
+
+Your `.cat-head` selector should have a `top` property set to `100px`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.top === '100px')
+```
+
+Your `.cat-head` selector should have a `left` property set to `100px`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.left === '100px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+--fcc-editable-region--
+.cat-head {
+
+
+
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c5ffef5598d449b52ec12.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c5ffef5598d449b52ec12.md
new file mode 100644
index 00000000000..f8b6396c8a1
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646c5ffef5598d449b52ec12.md
@@ -0,0 +1,80 @@
+---
+id: 646c5ffef5598d449b52ec12
+title: Step 17
+challengeType: 0
+dashedName: step-17
+---
+
+# --description--
+
+Now you should work on the cat's ears. There will be a right and a left ear, and inside each, there will be an inner ear.
+
+Inside your `.cat-head` element, create a `div` element with the class `cat-ears`.
+
+# --hints--
+
+You should not change the existing `div` element with the class `cat-head`.
+
+```js
+assert(document.querySelectorAll('div.cat-head').length === 1);
+```
+
+You should create one `div` element inside your `.cat-head` element.
+
+```js
+assert(document.querySelectorAll('.cat-head div').length === 1);
+```
+
+Your `div` element should have the class `cat-ears`.
+
+```js
+assert(document.querySelectorAll('.cat-head div')[0]?.getAttribute('class') === 'cat-ears');
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+ --fcc-editable-region--
+
+
+
+ --fcc-editable-region--
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ce8bb4b35544d501c7184.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ce8bb4b35544d501c7184.md
new file mode 100644
index 00000000000..6a298c09251
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ce8bb4b35544d501c7184.md
@@ -0,0 +1,86 @@
+---
+id: 646ce8bb4b35544d501c7184
+title: Step 18
+challengeType: 0
+dashedName: step-18
+---
+
+# --description--
+
+Inside your `.cat-ears` element, create two `div` elements with the classes `cat-left-ear` and `cat-right-ear` respectively.
+
+# --hints--
+
+You should not change the existing `div` element with the class `cat-ears`.
+
+```js
+assert(document.querySelectorAll('div.cat-ears').length === 1);
+```
+
+You should create two `div` elements inside your `.cat-ears` element.
+
+```js
+assert(document.querySelectorAll('.cat-ears div').length === 2);
+```
+
+Your first `div` element should have the class `cat-left-ear`.
+
+```js
+assert(document.querySelectorAll('.cat-ears div')[0]?.classList.contains('cat-left-ear'));
+```
+
+Your second `div` element should have the class `cat-right-ear`.
+
+```js
+assert(document.querySelectorAll('.cat-ears div')[1]?.classList.contains('cat-right-ear'));
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+ --fcc-editable-region--
+
+
+
+ --fcc-editable-region--
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ce9d790d2a44de5f99e04.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ce9d790d2a44de5f99e04.md
new file mode 100644
index 00000000000..9876c6dd360
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ce9d790d2a44de5f99e04.md
@@ -0,0 +1,103 @@
+---
+id: 646ce9d790d2a44de5f99e04
+title: Step 19
+challengeType: 0
+dashedName: step-19
+---
+
+# --description--
+
+Create two `div` elements, the first inside the `.cat-left-ear` element with a class of `cat-left-inner-ear`, and the second inside the `.cat-right-ear` element with a class of `cat-right-inner-ear`.
+
+# --hints--
+
+You should not change the existing `div` element with the class `cat-left-ear`.
+
+```js
+assert(document.querySelectorAll('div.cat-left-ear').length === 1);
+```
+
+You should not change the existing `div` element with the class `cat-right-ear`.
+
+```js
+assert(document.querySelectorAll('div.cat-right-ear').length === 1);
+```
+
+You should have one `div` element inside your `.cat-left-ear` element.
+
+```js
+assert(document.querySelectorAll('.cat-left-ear div').length === 1);
+```
+
+You should have one `div` element inside your `.cat-right-ear` element.
+
+```js
+assert(document.querySelectorAll('.cat-right-ear div').length === 1);
+```
+
+The new `div` element inside `.cat-left-ear` should have the class `cat-left-inner-ear`.
+
+```js
+assert(document.querySelectorAll('.cat-left-ear div')[0]?.classList.contains('cat-left-inner-ear'));
+```
+
+The new `div` element inside `.cat-right-ear` should have the class `cat-right-inner-ear`.
+
+```js
+assert(document.querySelectorAll('.cat-right-ear div')[0]?.classList.contains('cat-right-inner-ear'));
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+ --fcc-editable-region--
+
+
+
+
+
+
+ --fcc-editable-region--
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ceb843412c74edee27a79.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ceb843412c74edee27a79.md
new file mode 100644
index 00000000000..28446c85781
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ceb843412c74edee27a79.md
@@ -0,0 +1,117 @@
+---
+id: 646ceb843412c74edee27a79
+title: Step 20
+challengeType: 0
+dashedName: step-20
+---
+
+# --description--
+
+Using a class selector, give the `.cat-right-ear` element `height` and `width` properties set to `100px`. Set the `background-color` to `white`. Set the left and right borders to `35px solid blue`. Set the top and bottom borders to `35px solid red`.
+
+# --hints--
+
+You should have a `.cat-right-ear` selector.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head'))
+```
+
+Your `.cat-right-ear` selector should have a `height` property set to `100px`. Don't forget to add a semi-colon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.height === '100px')
+```
+
+Your `.cat-right-ear` selector should have a `width` property set to `100px`. Don't forget to add a semi-colon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.width === '100px')
+```
+
+Your `.cat-right-ear` selector should have a `background-color` property set to `white`. Don't forget to add a semi-colon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.backgroundColor === 'white')
+```
+
+Your `.cat-right-ear` selector should have a `border-left` property set to `35px solid blue`. Don't forget to add a semi-colon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderLeft === '35px solid blue')
+```
+
+Your `.cat-right-ear` selector should have a `border-right` property set to `35px solid blue`. Don't forget to add a semi-colon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderRight === '35px solid blue')
+```
+
+Your `.cat-right-ear` selector should have a `border-top` property set to `35px solid red`. Don't forget to add a semi-colon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderTop === '35px solid red')
+```
+
+Your `.cat-right-ear` selector should have a `border-bottom` property set to `35px solid red`. Don't forget to add a semi-colon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderBottom === '35px solid red')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cecc9eb5c4f4f73dafd07.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cecc9eb5c4f4f73dafd07.md
new file mode 100644
index 00000000000..6ccd6c4313d
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cecc9eb5c4f4f73dafd07.md
@@ -0,0 +1,92 @@
+---
+id: 646cecc9eb5c4f4f73dafd07
+title: Step 23
+challengeType: 0
+dashedName: step-23
+---
+
+# --description--
+
+Move the left ear into position by setting a position of `absolute`, a `top` of `-26px`, and a `left` of `-31px`.
+
+# --hints--
+
+Your `.cat-left-ear` selector should have a `position` property set to `absolute`. Don't forget to add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-ear')?.position === 'absolute')
+```
+
+Your `.cat-left-ear` selector should have a `top` property set to `-26px`
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-ear')?.top === '-26px')
+```
+
+Your `.cat-left-ear` selector should have a `left` property set to `-31px`
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-ear')?.left === '-31px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+--fcc-editable-region--
+.cat-left-ear {
+
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cef0c2b98915094df7099.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cef0c2b98915094df7099.md
new file mode 100644
index 00000000000..c285919d249
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cef0c2b98915094df7099.md
@@ -0,0 +1,89 @@
+---
+id: 646cef0c2b98915094df7099
+title: Step 24
+challengeType: 0
+dashedName: step-24
+---
+
+# --description--
+
+Those edges are too sharp for an ear. So, set the `border-top-left-radius` to `90px` and the `border-top-right-radius` to `10px`.
+
+# --hints--
+
+Your `.cat-left-ear` selector should have a `border-top-left-radius` property set to `90px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-ear')?.borderTopLeftRadius === '90px')
+```
+
+Your `.cat-left-ear` selector should have a `border-top-right-radius` property set to `10px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-ear')?.borderTopRightRadius === '10px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+--fcc-editable-region--
+
+--fcc-editable-region--
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cf1206cac5f51804f49cf.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cf1206cac5f51804f49cf.md
new file mode 100644
index 00000000000..7512ce8f661
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cf1206cac5f51804f49cf.md
@@ -0,0 +1,89 @@
+---
+id: 646cf1206cac5f51804f49cf
+title: Step 25
+challengeType: 0
+dashedName: step-25
+---
+
+# --description--
+
+To position the left ear properly, you can use CSS transform to rotate it in a certain degree.
+
+The `transform` property allows you to modify the shape, position, and size of an element without changing the layout or affecting the surrounding elements. It has functions such as `translate()`, `rotate()`, `scale()`, `skew()`, and `matrix()`.
+
+Set the `transform` property to `rotate(-45deg)` and see what happens.
+
+# --hints--
+
+You should set the `transform` property of your `.cat-left-ear` element to `rotate(-45deg)`. Don't forget to add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-ear')?.transform === 'rotate(-45deg)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cf2249f02ca5233d9af7c.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cf2249f02ca5233d9af7c.md
new file mode 100644
index 00000000000..b37aa9386b2
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cf2249f02ca5233d9af7c.md
@@ -0,0 +1,107 @@
+---
+id: 646cf2249f02ca5233d9af7c
+title: Step 26
+challengeType: 0
+dashedName: step-26
+---
+
+# --description--
+
+Now you can work on the right ear of the cat. You have the HTML for it already.
+
+Using a class selector, give the `.cat-right-ear` element a left and right border of `35px solid transparent` each. Also, set the bottom border to `70px solid #5e5e5e`.
+
+# --hints--
+
+You should have a `.cat-right-ear` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear'))
+```
+
+Your `.cat-right-ear` selector should have a `border-left` property set to `35px solid transparent`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderLeft === '35px solid transparent')
+```
+
+Your `.cat-right-ear` selector should have a `border-right` property set to `35px solid transparent`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderRight === '35px solid transparent')
+```
+
+Your `.cat-right-ear` selector should have a `border-bottom` property set to `70px solid #5e5e5e`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderBottom === '70px solid rgb(94, 94, 94)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cf48d8f8e1f535a1821d3.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cf48d8f8e1f535a1821d3.md
new file mode 100644
index 00000000000..71e41924fd7
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cf48d8f8e1f535a1821d3.md
@@ -0,0 +1,104 @@
+---
+id: 646cf48d8f8e1f535a1821d3
+title: Step 27
+challengeType: 0
+dashedName: step-27
+---
+
+# --description--
+
+Move the right ear into position with a `position` property set to `absolute`, a `top` of `-26px`, and a `left` of `163px`.
+
+# --hints--
+
+Your `.cat-right-ear` selector should have a `position` property set to `absolute`. Don't forget to add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.position === 'absolute')
+```
+
+Your `.cat-right-ear` selector should have a `top` property set to `-26px`
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.top === '-26px')
+```
+
+Your `.cat-right-ear` selector should have a `left` property set to `163px`
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.left === '163px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cf6cbca98e258da65c979.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cf6cbca98e258da65c979.md
new file mode 100644
index 00000000000..f91a47e0514
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cf6cbca98e258da65c979.md
@@ -0,0 +1,95 @@
+---
+id: 646cf6cbca98e258da65c979
+title: Step 28
+challengeType: 0
+dashedName: step-28
+---
+
+# --description--
+
+As you did for the left ear, rotate the right ear at 45 degrees.
+
+# --hints--
+
+You should set the `transform` property of your `.cat-right-ear` element to `rotate(45deg)`. Don't forget to add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.transform === 'rotate(45deg)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+--fcc-editable-region--
+
+--fcc-editable-region--
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cf88aa884405a11ea5bcc.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cf88aa884405a11ea5bcc.md
new file mode 100644
index 00000000000..fd2f5e2edc2
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cf88aa884405a11ea5bcc.md
@@ -0,0 +1,102 @@
+---
+id: 646cf88aa884405a11ea5bcc
+title: Step 29
+challengeType: 0
+dashedName: step-29
+---
+
+# --description--
+
+Remove the sharp border of the right ear by setting the `border-top-left-radius` to `90px` and the `border-top-right-radius` to `10px`.
+
+# --hints--
+
+Your `.cat-right-ear` selector should have a `border-top-left-radius` property set to `90px`. Don't forget to add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderTopLeftRadius === '90px')
+```
+
+Your `.cat-right-ear` selector should have a `border-top-right-radius` property set to `10px`. Don't forget to add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderTopRightRadius === '10px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ transform: rotate(45deg);
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cfc2b8e6fe95c20a819d5.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cfc2b8e6fe95c20a819d5.md
new file mode 100644
index 00000000000..81a27f982c8
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cfc2b8e6fe95c20a819d5.md
@@ -0,0 +1,102 @@
+---
+id: 646cfc2b8e6fe95c20a819d5
+title: Step 30
+challengeType: 0
+dashedName: step-30
+---
+
+# --description--
+
+The ears should always be placed above the part of the head it overlaps. You can do this with the `z-index` property.
+
+`z-index` is a property you can use to define the order of overlapping HTML elements. Any element with a higher `z-index` will always be positioned over an element with a lower `z-index`.
+
+To see `z-index` in action, set the `z-index` property of the left ear to `-1`.
+
+# --hints--
+
+Your `.cat-left-ear` selector should have a `z-index` of `-1`. Don't forget to add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-ear')?.zIndex === '-1')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cfd853634255d02b64cc1.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cfd853634255d02b64cc1.md
new file mode 100644
index 00000000000..be5facc8ba1
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cfd853634255d02b64cc1.md
@@ -0,0 +1,100 @@
+---
+id: 646cfd853634255d02b64cc1
+title: Step 31
+challengeType: 0
+dashedName: step-31
+---
+
+# --description--
+
+That's not the behavior you want. You should make the ears display over the head so the borders that overlap with them don't show.
+
+Instead of `-1`, set the `z-index` property of the left ear to `1`.
+
+# --hints--
+
+Your `.cat-left-ear` selector should have a `z-index` of `1`. Don't forget to add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-ear')?.zIndex === '1')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ --fcc-editable-region--
+ z-index: -1;
+ --fcc-editable-region--
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cfde6ac612e5d60391f50.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cfde6ac612e5d60391f50.md
new file mode 100644
index 00000000000..bff302ede9d
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646cfde6ac612e5d60391f50.md
@@ -0,0 +1,99 @@
+---
+id: 646cfde6ac612e5d60391f50
+title: Step 32
+challengeType: 0
+dashedName: step-32
+---
+
+# --description--
+
+Set the `z-index` property of the right ear to `1` so it always stays over the head.
+
+# --hints--
+
+Your `.cat-right-ear` selector should have a `z-index` of `1`. Don't forget to add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.zIndex === '1')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dd556d524bc61c0139bd6.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dd556d524bc61c0139bd6.md
new file mode 100644
index 00000000000..946620f1758
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dd556d524bc61c0139bd6.md
@@ -0,0 +1,121 @@
+---
+id: 646dd556d524bc61c0139bd6
+title: Step 33
+challengeType: 0
+dashedName: step-33
+---
+
+# --description--
+
+Most cats have different colors in their ear and the inner part of the same ear. You can implement the same too. That's why you defined a `div` element for both right and left inner ears a while ago.
+
+Using a class selector, give your `.cat-left-inner-ear` element a left and right border of `20px solid transparent` each. Also give it a bottom border of `40px solid #3b3b4f`.
+
+# --hints--
+
+You should have a `.cat-left-inner-ear` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-ear'))
+```
+
+Your `.cat-left-inner-ear` selector should have a `border-left` property set to `20px solid transparent`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-ear')?.borderLeft === '20px solid transparent')
+```
+
+Your `.cat-left-inner-ear` selector should have a `border-right` property set to `20px solid transparent`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-ear')?.borderRight === '20px solid transparent')
+```
+
+Your `.cat-left-inner-ear` selector should have a `border-bottom` property set to `40px solid #3b3b4f`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-ear')?.borderBottom === '40px solid rgb(59, 59, 79)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dd6f9caa862627dd87772.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dd6f9caa862627dd87772.md
new file mode 100644
index 00000000000..3e6dc6cf70c
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dd6f9caa862627dd87772.md
@@ -0,0 +1,118 @@
+---
+id: 646dd6f9caa862627dd87772
+title: Step 34
+challengeType: 0
+dashedName: step-34
+---
+
+# --description--
+
+Move the inner ear into position with a `position` property set to `absolute`, a `top` of `22px`, and a `left` of `-20px`.
+
+# --hints--
+
+Your `.cat-left-inner-ear` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-ear')?.position === 'absolute')
+```
+
+Your `.cat-left-inner-ear` selector should have a `top` property set to `22px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-ear')?.top === '22px')
+```
+
+Your `.cat-left-inner-ear` selector should have a `left` property set to `-20px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-ear')?.left === '-20px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dd7cfd0cfac630c1dd520.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dd7cfd0cfac630c1dd520.md
new file mode 100644
index 00000000000..c63d2517749
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dd7cfd0cfac630c1dd520.md
@@ -0,0 +1,127 @@
+---
+id: 646dd7cfd0cfac630c1dd520
+title: Step 35
+challengeType: 0
+dashedName: step-35
+---
+
+# --description--
+
+To remove all the pointed edges of the ear, set a bottom-right and bottom-left border radius of `40%` each, a top-left border radius of `90px`, and a top-right border radius of `10px`.
+
+# --hints--
+
+Your `.cat-left-inner-ear` selector should have a `border-bottom-right-radius` property set to `40%`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-ear')?.borderBottomRightRadius === '40%')
+```
+
+Your `.cat-left-inner-ear` selector should have a `border-bottom-left-radius` property set to `40%`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-ear')?.borderBottomLeftRadius === '40%')
+```
+
+Your `.cat-left-inner-ear` selector should have a `border-top-left-radius` property set to `90px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-ear')?.borderTopLeftRadius === '90px')
+```
+
+Your `.cat-left-inner-ear` selector should have a `border-top-right-radius` property set to `10px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-ear')?.borderTopRightRadius === '10px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+--fcc-editable-region--
+
+--fcc-editable-region--
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dd8c79ec23463a3d0e356.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dd8c79ec23463a3d0e356.md
new file mode 100644
index 00000000000..c2f979d3992
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dd8c79ec23463a3d0e356.md
@@ -0,0 +1,132 @@
+---
+id: 646dd8c79ec23463a3d0e356
+title: Step 36
+challengeType: 0
+dashedName: step-36
+---
+
+# --description--
+
+It's time to work on the right inner ear. Using a class selector, give your `.cat-right-inner-ear` element a left and right border of `20px solid transparent`. Also, give it a bottom border of `40px solid #3b3b4f`.
+
+# --hints--
+
+You should have a `.cat-right-inner-ear` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-ear'))
+```
+
+Your `.cat-right-inner-ear` selector should have a `border-left` property set to `20px solid transparent`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-ear')?.borderLeft === '20px solid transparent')
+```
+
+Your `.cat-right-inner-ear` selector should have a `border-right` property set to `20px solid transparent`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-ear')?.borderRight === '20px solid transparent')
+```
+
+Your `.cat-right-inner-ear` selector should have a `border-bottom` property set to `40px solid #3b3b4f`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-ear')?.borderBottom === '40px solid rgb(59, 59, 79)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dd9d9a729916460724f16.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dd9d9a729916460724f16.md
new file mode 100644
index 00000000000..79329e7c4d9
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dd9d9a729916460724f16.md
@@ -0,0 +1,131 @@
+---
+id: 646dd9d9a729916460724f16
+title: Step 37
+challengeType: 0
+dashedName: step-37
+---
+
+# --description--
+
+Move the right inner ear into position with a `position` property set to `absolute`, a `top` of `22px` and a `left` of `-20px`.
+
+# --hints--
+
+Your `.cat-right-inner-ear` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-ear')?.position === 'absolute')
+```
+
+Your `.cat-right-inner-ear` selector should have a `top` property set to `22px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-ear')?.top === '22px')
+```
+
+Your `.cat-right-inner-ear` selector should have a `left` property set to `-20px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-ear')?.left === '-20px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ddab8afd73764f5241bbf.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ddab8afd73764f5241bbf.md
new file mode 100644
index 00000000000..1fd42d761db
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ddab8afd73764f5241bbf.md
@@ -0,0 +1,140 @@
+---
+id: 646ddab8afd73764f5241bbf
+title: Step 38
+challengeType: 0
+dashedName: step-38
+---
+
+# --description--
+
+As you did for the left inner ear, remove the sharp edges of the right inner ear by setting a bottom-right and bottom-left border radius of `40%`, a top-left border radius of `90px`, and a top-right border radius of `10px`.
+
+# --hints--
+
+Your `.cat-right-inner-ear` selector should have a `border-bottom-right-radius` property set to `40%`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-ear')?.borderBottomRightRadius === '40%')
+```
+
+Your `.cat-right-inner-ear` selector should have a `border-bottom-left-radius` property set to `40%`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-ear')?.borderBottomLeftRadius === '40%')
+```
+
+Your `.cat-right-inner-ear` selector should have a `border-top-left-radius` property set to `90px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-ear')?.borderTopLeftRadius === '90px')
+```
+
+Your `.cat-right-inner-ear` selector should have a `border-top-right-radius` property set to `10px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-ear')?.borderTopRightRadius === '10px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ddb61ff08366570cc5902.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ddb61ff08366570cc5902.md
new file mode 100644
index 00000000000..73e925b9439
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ddb61ff08366570cc5902.md
@@ -0,0 +1,147 @@
+---
+id: 646ddb61ff08366570cc5902
+title: Step 39
+challengeType: 0
+dashedName: step-39
+---
+
+# --description--
+
+You will now start working on the cat's eyes. Like the ears, the eyes will have inner eyes.
+
+Create a `div` element with the class `cat-eyes`. Inside the `.cat-eyes` element, create two `div` elements with the class `cat-left-eye` and `cat-right-eye` respectively.
+
+# --hints--
+
+You should create a `div` element with the class `cat-eyes`.
+
+```js
+assert(document.querySelectorAll('.cat-eyes').length === 1);
+```
+
+You should create two `div` elements inside the `.cat-eyes` element.
+
+```js
+assert(document.querySelectorAll('.cat-eyes div').length === 2);
+```
+
+The first `div` element inside the `.cat-eyes` element should have the class `cat-left-eye`.
+
+```js
+assert(document.querySelectorAll('.cat-eyes div')[0].classList.contains('cat-left-eye'));
+```
+
+The second `div` element inside the `.cat-eyes` element should have the class `cat-right-eye`.
+
+```js
+assert(document.querySelectorAll('.cat-eyes div')[1].classList.contains('cat-right-eye'));
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ddd3f9f97a0667b964bdb.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ddd3f9f97a0667b964bdb.md
new file mode 100644
index 00000000000..5a9d102d8c4
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ddd3f9f97a0667b964bdb.md
@@ -0,0 +1,164 @@
+---
+id: 646ddd3f9f97a0667b964bdb
+title: Step 40
+challengeType: 0
+dashedName: step-40
+---
+
+# --description--
+
+Create two `div` elements, one with the class `cat-left-inner-eye` inside the `.cat-left-eye` element and another with the class `cat-right-inner-eye` inside the `.cat-right-eye` element.
+
+# --hints--
+
+You should not change the existing `div` element with the class `cat-left-eye`.
+
+```js
+assert(document.querySelectorAll('div.cat-left-eye').length === 1);
+```
+
+You should not change the existing `div` element with the class `cat-right-eye`.
+
+```js
+assert(document.querySelectorAll('div.cat-right-eye').length === 1);
+```
+
+You should have one `div` element inside your `.cat-left-eye` element.
+
+```js
+assert(document.querySelectorAll('.cat-left-eye div').length === 1);
+```
+
+You should have one `div` element inside your `.cat-right-eye` element.
+
+```js
+assert(document.querySelectorAll('.cat-right-eye div').length === 1);
+```
+
+The new `div` element inside `.cat-left-eye` should have the class `cat-left-inner-eye`.
+
+```js
+assert(document.querySelectorAll('.cat-left-eye div')[0]?.classList.contains('cat-left-inner-eye'));
+```
+
+The new `div` element inside `.cat-right-eye` should have the class `cat-right-inner-eye`.
+
+```js
+assert(document.querySelectorAll('.cat-right-eye div')[0]?.classList.contains('cat-right-inner-eye'));
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+ --fcc-editable-region--
+
+
+
+
+
+
+ --fcc-editable-region--
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dde7dc20dc167489faa69.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dde7dc20dc167489faa69.md
new file mode 100644
index 00000000000..3025f51126d
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dde7dc20dc167489faa69.md
@@ -0,0 +1,154 @@
+---
+id: 646dde7dc20dc167489faa69
+title: Step 41
+challengeType: 0
+dashedName: step-41
+---
+
+# --description--
+
+Using a class selector, give your `.cat-left-eye` element a `width` of `30px` and a `height` of `40px`. Also, give it a `background-color` of `#000`.
+
+# --hints--
+
+You should have a `.cat-left-eye` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-eye'))
+```
+
+Your `.cat-left-eye` selector should have a `width` set to `30px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-eye')?.width === '30px')
+```
+
+Your `.cat-left-eye` selector should have a `height` set to `40px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-eye')?.height === '40px')
+```
+
+Your `.cat-left-eye` selector should have a `background-color` set to `#000`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-eye')?.backgroundColor === 'rgb(0, 0, 0)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ddf888632fa67f1180940.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ddf888632fa67f1180940.md
new file mode 100644
index 00000000000..04305124296
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646ddf888632fa67f1180940.md
@@ -0,0 +1,153 @@
+---
+id: 646ddf888632fa67f1180940
+title: Step 42
+challengeType: 0
+dashedName: step-42
+---
+
+# --description--
+
+Move the left eye into position with a `position` property of `absolute`, a `top` of `54px`, and a `left` of `39px`.
+
+# --hints--
+
+Your `.cat-left-eye` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-eye')?.position === 'absolute')
+```
+
+Your `.cat-left-eye` selector should have a `top` property set to `54px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-eye')?.top === '54px')
+```
+
+Your `.cat-left-eye` selector should have a `left` property set to `39px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-eye')?.left === '39px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646de5dc8988076a1d992afd.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646de5dc8988076a1d992afd.md
new file mode 100644
index 00000000000..ca444cecd18
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646de5dc8988076a1d992afd.md
@@ -0,0 +1,150 @@
+---
+id: 646de5dc8988076a1d992afd
+title: Step 43
+challengeType: 0
+dashedName: step-43
+---
+
+# --description--
+
+To make the left eye look like an eye, give it a border radius of `60%`. Also, using the `transform` property, rotate it at `25` degrees.
+
+# --hints--
+
+Your `.cat-left-eye` selector should have a `border-radius` property set to `60%`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-eye')?.borderRadius === '60%')
+```
+
+Your `.cat-left-eye` selector should have a `transform` property set to `rotate(25deg)`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-eye')?.transform === 'rotate(25deg)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646de6a97b50a86ac487de86.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646de6a97b50a86ac487de86.md
new file mode 100644
index 00000000000..aeb0f28cdfb
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646de6a97b50a86ac487de86.md
@@ -0,0 +1,167 @@
+---
+id: 646de6a97b50a86ac487de86
+title: Step 44
+challengeType: 0
+dashedName: step-44
+---
+
+# --description--
+
+Now you will work on the right eye by using the same approach.
+
+Using a class selector, give your `.cat-right-eye` element a width of `30px` and a height of `40px`. Also, give it a background color of `#000`.
+
+# --hints--
+
+You should have a `.cat-right-eye` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-eye'))
+```
+
+Your `.cat-right-eye` selector should have a `width` set to `30px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-eye')?.width === '30px')
+```
+
+Your `.cat-right-eye` selector should have a `height` set to `40px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-eye')?.height === '40px')
+```
+
+Your `.cat-right-eye` selector should have a `background-color` set to `#000`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-eye')?.backgroundColor === 'rgb(0, 0, 0)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646de7b64467e96b7d35b5cd.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646de7b64467e96b7d35b5cd.md
new file mode 100644
index 00000000000..535106cffc9
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646de7b64467e96b7d35b5cd.md
@@ -0,0 +1,165 @@
+---
+id: 646de7b64467e96b7d35b5cd
+title: Step 45
+challengeType: 0
+dashedName: step-45
+---
+
+# --description--
+
+Move the right eye into position with a `position` property of `absolute`, a `top` of `54px`, and a `left` of `134px`.
+
+# --hints--
+
+Your `.cat-right-eye` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-eye')?.position === 'absolute')
+```
+
+Your `.cat-right-eye` selector should have a `top` property set to `54px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-eye')?.top === '54px')
+```
+
+Your `.cat-right-eye` selector should have a `left` property set to `134px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-eye')?.left === '134px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646de8478d6f796bfbdccfb2.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646de8478d6f796bfbdccfb2.md
new file mode 100644
index 00000000000..5485662cb5f
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646de8478d6f796bfbdccfb2.md
@@ -0,0 +1,162 @@
+---
+id: 646de8478d6f796bfbdccfb2
+title: Step 46
+challengeType: 0
+dashedName: step-46
+---
+
+# --description--
+
+To make the right eye look like an eye, give it a border radius of `60%`. Also, using the `transform` property, rotate it at `-25` degrees.
+
+# --hints--
+
+Your `.cat-right-eye` selector should have a `border-radius` property set to `60%`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-eye')?.borderRadius === '60%')
+```
+
+Your `.cat-right-eye` selector should have a `transform` property set to `rotate(-25deg)`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-eye')?.transform === 'rotate(-25deg)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646de8d204a3426c7d184372.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646de8d204a3426c7d184372.md
new file mode 100644
index 00000000000..6a3aa491180
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646de8d204a3426c7d184372.md
@@ -0,0 +1,178 @@
+---
+id: 646de8d204a3426c7d184372
+title: Step 47
+challengeType: 0
+dashedName: step-47
+---
+
+# --description--
+
+Those look like eyes, but you can still make them better. That's why you created two inner eyes `div` elements.
+
+Using a class selector, give your `.cat-left-inner-eye` element a width of `10px` and a height of `20px`. Also, give it a background color of `#fff`.
+
+# --hints--
+
+You should have a `.cat-left-inner-eye` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-eye'))
+```
+
+Your `.cat-left-inner-eye` selector should have a `width` set to `10px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-eye')?.width === '10px')
+```
+
+Your `.cat-left-inner-eye` selector should have a `height` set to `20px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-eye')?.height === '20px')
+```
+
+Your `.cat-left-inner-eye` selector should have a `background-color` set to `#fff`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-eye')?.backgroundColor === 'rgb(255, 255, 255)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dea1c98c2426d43a705c3.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dea1c98c2426d43a705c3.md
new file mode 100644
index 00000000000..dd15c23882c
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dea1c98c2426d43a705c3.md
@@ -0,0 +1,187 @@
+---
+id: 646dea1c98c2426d43a705c3
+title: Step 48
+challengeType: 0
+dashedName: step-48
+---
+
+# --description--
+
+Move the left inner eye into position with a `position` property of `absolute`, a `top` of `8px`, and a `left` of `2px`. Also, give it a border radius of `60%` and rotate it at `10` degrees.
+
+# --hints--
+
+Your `.cat-left-inner-eye` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-eye')?.position === 'absolute')
+```
+
+Your `.cat-left-inner-eye` selector should have a `top` property set to `8px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-eye')?.top === '8px')
+```
+
+Your `.cat-left-inner-eye` selector should have a `left` property set to `2px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-eye')?.left === '2px')
+```
+
+Your `.cat-left-inner-eye` selector should have a `border-radius` property set to `60%`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-eye')?.borderRadius === '60%')
+```
+
+Your `.cat-left-inner-eye` selector should have a `transform` property set to `10deg`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-inner-eye')?.transform === 'rotate(10deg)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646deb169847f86df0f95bfc.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646deb169847f86df0f95bfc.md
new file mode 100644
index 00000000000..256aa6b6f3c
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646deb169847f86df0f95bfc.md
@@ -0,0 +1,187 @@
+---
+id: 646deb169847f86df0f95bfc
+title: Step 49
+challengeType: 0
+dashedName: step-49
+---
+
+# --description--
+
+Using a class selector, give your `.cat-right-inner-eye` element a width of `10px` and a height of `20px`. Also, give it a background color of `#fff`.
+
+# --hints--
+
+You should have a `.cat-right-inner-eye` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-eye'))
+```
+
+Your `.cat-right-inner-eye` selector should have a `width` set to `10px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-eye')?.width === '10px')
+```
+
+Your `.cat-right-inner-eye` selector should have a `height` set to `20px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-eye')?.height === '20px')
+```
+
+Your `.cat-right-inner-eye` selector should have a `background-color` set to `#fff`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-eye')?.backgroundColor === 'rgb(255, 255, 255)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dec359bef3b7811fba5a6.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dec359bef3b7811fba5a6.md
new file mode 100644
index 00000000000..612bab6e55f
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dec359bef3b7811fba5a6.md
@@ -0,0 +1,198 @@
+---
+id: 646dec359bef3b7811fba5a6
+title: Step 50
+challengeType: 0
+dashedName: step-50
+---
+
+# --description--
+
+Move the right inner eye into position with a `position` of `absolute`, a `top` of `8px`, and a `left` of `18px`. Also, give it a border radius of `60%` and rotate it at `-5deg`.
+
+# --hints--
+
+Your `.cat-right-inner-eye` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-eye')?.position === 'absolute')
+```
+
+Your `.cat-right-inner-eye` selector should have a `top` property set to ` 8px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-eye')?.top === '8px')
+```
+
+Your `.cat-right-inner-eye` selector should have a `left` property set to `18px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-eye')?.left === '18px')
+```
+
+Your `.cat-right-inner-eye` selector should have a `border-radius` property set to `60%`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-eye')?.borderRadius === '60%')
+```
+
+Your `.cat-right-inner-eye` selector should have a `transform` property set to `-5deg`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-inner-eye')?.transform === 'rotate(-5deg)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dedbcba062079128b2ecc.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dedbcba062079128b2ecc.md
new file mode 100644
index 00000000000..67e9ddb5a01
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dedbcba062079128b2ecc.md
@@ -0,0 +1,186 @@
+---
+id: 646dedbcba062079128b2ecc
+title: Step 51
+challengeType: 0
+dashedName: step-51
+---
+
+# --description--
+
+It's time to work on the nose. In your HTML, create a `div` element with the class `cat-nose`.
+
+# --hints--
+
+You should create a `div` element.
+
+```js
+assert(document.querySelectorAll('div').length === 12)
+```
+
+Your `div` element should have the class `cat-nose`.
+
+```js
+assert(document.querySelectorAll('div')[11].classList.contains('cat-nose'))
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646def5e863abf7a14501421.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646def5e863abf7a14501421.md
new file mode 100644
index 00000000000..1e29176bbbd
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646def5e863abf7a14501421.md
@@ -0,0 +1,200 @@
+---
+id: 646def5e863abf7a14501421
+title: Step 52
+challengeType: 0
+dashedName: step-52
+---
+
+# --description--
+
+Using a class selector, give your `.cat-nose` element a left and right border of `15px solid transparent` each. Also give it a bottom border of `20px solid #442c2c`.
+
+# --hints--
+
+You should have a `.cat-nose` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-nose'))
+```
+
+Your `.cat-nose` selector should have a `border-left` property set to `15px solid transparent`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-nose')?.borderLeft === '15px solid transparent')
+```
+
+Your `.cat-nose` selector should have a `border-right` property set to `15px solid transparent`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-nose')?.borderRight === '15px solid transparent')
+```
+
+Your `.cat-nose` selector should have a `border-bottom` property set to `20px solid #442c2c`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-nose')?.borderBottom === '20px solid rgb(68, 44, 44)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646df03c8f79337ab46f148b.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646df03c8f79337ab46f148b.md
new file mode 100644
index 00000000000..73b95b8f82e
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646df03c8f79337ab46f148b.md
@@ -0,0 +1,200 @@
+---
+id: 646df03c8f79337ab46f148b
+title: Step 53
+challengeType: 0
+dashedName: step-53
+---
+
+# --description--
+
+Move the nose into position with a `position` property of `absolute`, a `top` of `108px`, and a `left` of `85px`.
+
+# --hints--
+
+Your `.cat-nose` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-nose')?.position === 'absolute')
+```
+
+Your `.cat-nose` selector should have a `top` property set to `108px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-nose')?.top === '108px')
+```
+
+Your `.cat-nose` selector should have a `left` property set to `85px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-nose')?.left === '85px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646df0cf26413a7b35e4b8b3.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646df0cf26413a7b35e4b8b3.md
new file mode 100644
index 00000000000..198044ac4e0
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646df0cf26413a7b35e4b8b3.md
@@ -0,0 +1,215 @@
+---
+id: 646df0cf26413a7b35e4b8b3
+title: Step 54
+challengeType: 0
+dashedName: step-54
+---
+
+# --description--
+
+Remove the sharp edges of the nose with border radius of `50%` each on the top-left, bottom-right, and bottom-left corners. Also, rotate it at 180 degrees.
+
+# --hints--
+
+Your `.cat-nose` selector should have a `border-top-left-radius` property set to `50%`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-nose')?.borderTopLeftRadius === '50%')
+```
+
+Your `.cat-nose` selector should have a `border-bottom-right-radius` property set to `50%`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-nose')?.borderBottomRightRadius === '50%')
+```
+
+Your `.cat-nose` selector should have a `border-bottom-left-radius` property set to `50%`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-nose')?.borderBottomLeftRadius === '50%')
+```
+
+Your `.cat-nose` selector should have a `transform` property set to `rotate(180deg)`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-nose')?.transform === 'rotate(180deg)')
+```
+
+You should not have a `border-top-right-radius` property in your `.cat-nose` selector.
+
+```js
+assert(/border-top-right-radius:\s*\d+%;/.test(code) === false);
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646df1d1aa4ae57bdf1869c4.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646df1d1aa4ae57bdf1869c4.md
new file mode 100644
index 00000000000..bc6e2ebd722
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646df1d1aa4ae57bdf1869c4.md
@@ -0,0 +1,203 @@
+---
+id: 646df1d1aa4ae57bdf1869c4
+title: Step 55
+challengeType: 0
+dashedName: step-55
+---
+
+# --description--
+
+Now you will start working on the mouth. There will be a right line and left line for the mouth.
+
+Create a `div` element with the class `cat-mouth`.
+
+# --hints--
+
+You should create a `div` element.
+
+```js
+assert(document.querySelectorAll('div').length === 13)
+```
+
+Your `div` element should have the class `cat-mouth`.
+
+```js
+assert(document.querySelectorAll('div')[12].classList.contains('cat-mouth'))
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+
+
+
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dffd8ce9ac77ec1906f2e.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dffd8ce9ac77ec1906f2e.md
new file mode 100644
index 00000000000..877fb4e7d49
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646dffd8ce9ac77ec1906f2e.md
@@ -0,0 +1,217 @@
+---
+id: 646dffd8ce9ac77ec1906f2e
+title: Step 56
+challengeType: 0
+dashedName: step-56
+---
+
+# --description--
+
+Inside your `.cat-mouth` element, create a `div` element with the class `cat-mouth-line-left` and another `div` with the class `cat-mouth-line-right`.
+
+# --hints--
+
+You should not change the existing `div` element with the class `cat-mouth`.
+
+```js
+assert(document.querySelectorAll('div.cat-mouth').length === 1);
+```
+
+You should have two `div` elements inside your `.cat-mouth` element.
+
+```js
+assert(document.querySelectorAll('.cat-mouth div').length === 2);
+```
+
+The first `div` element inside the `.cat-mouth` element should have the class `cat-mouth-line-left`.
+
+```js
+assert(document.querySelectorAll('.cat-mouth div')[0]?.classList.contains('cat-mouth-line-left'));
+```
+
+The second `div` element inside the `.cat-mouth` element should have the class `cat-mouth-line-right`.
+
+```js
+assert(document.querySelectorAll('.cat-mouth div')[1]?.classList.contains('cat-mouth-line-right'));
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+
+
+
+ --fcc-editable-region--
+
+
+
+ --fcc-editable-region--
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f0417322c0e04983a5149.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f0417322c0e04983a5149.md
new file mode 100644
index 00000000000..8492b98bd93
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f0417322c0e04983a5149.md
@@ -0,0 +1,227 @@
+---
+id: 646f0417322c0e04983a5149
+title: Step 59
+challengeType: 0
+dashedName: step-59
+---
+
+# --description--
+
+Using a class selector, give your `.cat-mouth-line-left` element a `position` of `absolute`, a `top` of `88px` and a `left` of `74px`. This would move it into the right position.
+
+# --hints--
+
+You should have a `.cat-mouth-line-left` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-mouth-line-left'))
+```
+
+Your `.cat-mouth-line-left` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-mouth-line-left')?.position === 'absolute')
+```
+
+Your `.cat-mouth-line-left` selector should have a `top` property set to `88px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-mouth-line-left')?.top === '88px')
+```
+
+Your `.cat-mouth-line-left` selector should have a `left` property set to `74px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-mouth-line-left')?.left === '74px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f08293804a30685533c6f.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f08293804a30685533c6f.md
new file mode 100644
index 00000000000..cbcc54e4dc0
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f08293804a30685533c6f.md
@@ -0,0 +1,214 @@
+---
+id: 646f08293804a30685533c6f
+title: Step 60
+challengeType: 0
+dashedName: step-60
+---
+
+# --description--
+
+Using the `transform` property, rotate the left mouth line at `170` degrees.
+
+# --hints--
+
+Your `.cat-mouth-line-left` selector should have a `transform` property set to `rotate(170deg)`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-mouth-line-left')?.transform === 'rotate(170deg)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+--fcc-editable-region--
+
+--fcc-editable-region--
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f09293eb3230723a62f77.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f09293eb3230723a62f77.md
new file mode 100644
index 00000000000..fda29ab0aab
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f09293eb3230723a62f77.md
@@ -0,0 +1,234 @@
+---
+id: 646f09293eb3230723a62f77
+title: Step 61
+challengeType: 0
+dashedName: step-61
+---
+
+# --description--
+
+Access your `.cat-mouth-line-right` element with a class selector, then move it into the right position with a `position` of `absolute`, a `top` of `88px` and a `left` of `91px`.
+
+# --hints--
+
+You should have a `.cat-mouth-line-right` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-mouth-line-right'))
+```
+
+Your `.cat-mouth-line-right` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-mouth-line-right')?.position === 'absolute')
+```
+
+Your `.cat-mouth-line-right` selector should have a `top` property set to `88px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-mouth-line-right')?.top === '88px')
+```
+
+Your `.cat-mouth-line-right` selector should have a `left` property set to `91px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-mouth-line-right')?.left === '91px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f0c9a1e3360092d1bbd33.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f0c9a1e3360092d1bbd33.md
new file mode 100644
index 00000000000..9c2d552528f
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f0c9a1e3360092d1bbd33.md
@@ -0,0 +1,221 @@
+---
+id: 646f0c9a1e3360092d1bbd33
+title: Step 62
+challengeType: 0
+dashedName: step-62
+---
+
+# --description--
+
+Rotate the right mouth line at `165` degrees.
+
+# --hints--
+
+Your `.cat-mouth-line-right` selector should have a `transform` property set to `rotate(165deg)`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-mouth-line-right')?.transform === 'rotate(165deg)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+--fcc-editable-region--
+
+--fcc-editable-region--
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f0ce5737243098ad6e494.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f0ce5737243098ad6e494.md
new file mode 100644
index 00000000000..f58cd69b443
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f0ce5737243098ad6e494.md
@@ -0,0 +1,231 @@
+---
+id: 646f0ce5737243098ad6e494
+title: Step 63
+challengeType: 0
+dashedName: step-63
+---
+
+# --description--
+
+The last thing you will work on is the whiskers. There are going to be 6 of them, meaning there will be three on each side.
+
+Create a `div` element with the class `cat-whiskers`.
+
+# --hints--
+
+You should create a `div` element.
+
+```js
+assert(document.querySelectorAll('div').length === 16)
+```
+
+Your div element should have the class `cat-whiskers`.
+
+```js
+assert(document.querySelectorAll('div')[15].classList.contains('cat-whiskers'))
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+
+
+
+
+
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f0ef13604420a8744f7d4.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f0ef13604420a8744f7d4.md
new file mode 100644
index 00000000000..dc45f7a6997
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f0ef13604420a8744f7d4.md
@@ -0,0 +1,243 @@
+---
+id: 646f0ef13604420a8744f7d4
+title: Step 64
+challengeType: 0
+dashedName: step-64
+---
+
+# --description--
+
+Inside the `.cat-whiskers` element, create two `div` elements with the class `cat-whiskers-left` and `cat-whiskers-right`.
+
+# --hints--
+
+You should not change the existing `div` element with the class `cat-whiskers`
+
+```js
+assert(document.querySelectorAll('div.cat-whiskers').length === 1)
+```
+
+You should have two `div` elements inside the `.cat-whiskers` element.
+
+```js
+assert(document.querySelectorAll('.cat-whiskers div').length === 2)
+```
+
+The first `div` element inside the `.cat-whiskers` element should have the class `cat-whiskers-left`.
+
+```js
+assert(document.querySelectorAll('.cat-whiskers div')[0].classList.contains('cat-whiskers-left'))
+```
+
+The second `div` element inside the `.cat-whiskers` element should have the class `cat-whiskers-right`.
+
+```js
+assert(document.querySelectorAll('.cat-whiskers div')[1].classList.contains('cat-whiskers-right'))
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+
+
+
+
+
+ --fcc-editable-region--
+
+
+
+ --fcc-editable-region--
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f0f7c5933560af8e7e380.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f0f7c5933560af8e7e380.md
new file mode 100644
index 00000000000..fb9477f2431
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f0f7c5933560af8e7e380.md
@@ -0,0 +1,253 @@
+---
+id: 646f0f7c5933560af8e7e380
+title: Step 65
+challengeType: 0
+dashedName: step-65
+---
+
+# --description--
+
+Inside the `.cat-whiskers-left` element, create three `div` elements with the classes `cat-whisker-left-top`, `cat-whisker-left-middle`, and `cat-whisker-left-bottom`.
+
+# --hints--
+
+You should not change the existing `div` element with class `cat-whiskers-left`.
+
+```js
+assert(document.querySelectorAll('div.cat-whiskers-left').length === 1)
+```
+
+You should create three `div` elements inside your `.cat-whiskers-left` element.
+
+```js
+assert(document.querySelectorAll('.cat-whiskers-left div').length === 3)
+```
+
+The first `div` element inside the `.cat-whiskers-left` element should have the class `cat-whisker-left-top`.
+
+```js
+assert(document.querySelectorAll('.cat-whiskers-left div')[0].classList.contains('cat-whisker-left-top'))
+```
+
+The second `div` element inside the `.cat-whiskers-left` element should have the class `cat-whisker-left-middle`.
+
+```js
+assert(document.querySelectorAll('.cat-whiskers-left div')[1].classList.contains('cat-whisker-left-middle'))
+```
+
+The third `div` element inside the `.cat-whiskers-left` element should have the class `cat-whisker-left-bottom`.
+
+```js
+assert(document.querySelectorAll('.cat-whiskers-left div')[2].classList.contains('cat-whisker-left-bottom'))
+```
+
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ --fcc-editable-region--
+
+
+
+ --fcc-editable-region--
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f102bf87b350b593baa72.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f102bf87b350b593baa72.md
new file mode 100644
index 00000000000..254cf8d7b8a
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f102bf87b350b593baa72.md
@@ -0,0 +1,256 @@
+---
+id: 646f102bf87b350b593baa72
+title: Step 66
+challengeType: 0
+dashedName: step-66
+---
+
+# --description--
+
+Inside the `.cat-whiskers-right` element, create 3 `div` elements with the class `cat-whisker-right-top`, `cat-whisker-right-middle`, and `cat-whisker-right-bottom`.
+
+# --hints--
+
+You should not change the existing `div` element with class `cat-whiskers-right`.
+
+```js
+assert(document.querySelectorAll('div.cat-whiskers-right').length === 1)
+```
+
+You should create three `div` elements inside your `.cat-whiskers-right` element.
+
+```js
+assert(document.querySelectorAll('.cat-whiskers-right div').length === 3)
+```
+
+The first `div` element inside the `.cat-whiskers-right` element should have the class `cat-whisker-right-top`.
+
+```js
+assert(document.querySelectorAll('.cat-whiskers-right div')[0].classList.contains('cat-whisker-right-top'))
+```
+
+The second `div` element inside the `.cat-whiskers-right` element should have the class `cat-whisker-right-middle`.
+
+```js
+assert(document.querySelectorAll('.cat-whiskers-right div')[1].classList.contains('cat-whisker-right-middle'))
+```
+
+The third `div` element inside the `.cat-whiskers-right` element should have the class `cat-whisker-right-bottom`.
+
+```js
+assert(document.querySelectorAll('.cat-whiskers-right div')[2].classList.contains('cat-whisker-right-bottom'))
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ --fcc-editable-region--
+
+
+
+ --fcc-editable-region--
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f107abb89d00bb99f387a.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f107abb89d00bb99f387a.md
new file mode 100644
index 00000000000..b108aa04f49
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f107abb89d00bb99f387a.md
@@ -0,0 +1,254 @@
+---
+id: 646f107abb89d00bb99f387a
+title: Step 67
+challengeType: 0
+dashedName: step-67
+---
+
+# --description--
+
+Use a descendant selector to target the three `div` elements inside your `.cat-whiskers-left` element. Give it a `width` of `40px`, a `height` of `1px`, and a `background-color` of `#000`.
+
+# --hints--
+
+You should have a `.cat-whiskers-left div` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whiskers-left div'))
+```
+
+Your `.cat-whiskers-left div` selector should have a `width` set to `40px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whiskers-left div')?.width === '40px')
+```
+
+Your `.cat-whiskers-left div` selector should have a `height` set to `1px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whiskers-left div')?.height === '1px')
+```
+
+Your `.cat-whiskers-left div` selector should have a `background-color` set to `#000`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whiskers-left div')?.backgroundColor === 'rgb(0, 0, 0)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f12da0b4c5d0ca162834a.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f12da0b4c5d0ca162834a.md
new file mode 100644
index 00000000000..fbcadbf2045
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f12da0b4c5d0ca162834a.md
@@ -0,0 +1,266 @@
+---
+id: 646f12da0b4c5d0ca162834a
+title: Step 69
+challengeType: 0
+dashedName: step-69
+---
+
+# --description--
+
+Using a class selector, move the `.cat-whisker-left-top` element into place with a `position` of `absolute`, a `top` of `120px`, and a `left` of `52px`.
+
+# --hints--
+
+You should have a `.cat-whisker-left-top` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-left-top'))
+```
+
+Your `.cat-whisker-left-top` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-left-top')?.position === 'absolute')
+```
+
+Your `.cat-whisker-left-top` selector should have a `top` property set to `120px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-left-top')?.top === '120px')
+```
+
+Your `.cat-whisker-left-top` selector should have a `left` property set to `52px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-left-top')?.left === '52px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+
+.cat-whiskers-left div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whiskers-right div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f135eab69d90d0c6d4e9b.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f135eab69d90d0c6d4e9b.md
new file mode 100644
index 00000000000..1727143ff0c
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f135eab69d90d0c6d4e9b.md
@@ -0,0 +1,254 @@
+---
+id: 646f135eab69d90d0c6d4e9b
+title: Step 70
+challengeType: 0
+dashedName: step-70
+---
+
+# --description--
+
+Rotate the left top whisker at `10` degrees.
+
+# --hints--
+
+Your `.cat-whisker-left-top` selector should have a `transform` property set to `rotate(10deg)`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-left-top')?.transform === 'rotate(10deg)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+
+.cat-whiskers-left div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whiskers-right div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whisker-left-top {
+ position: absolute;
+ top: 120px;
+ left: 52px;
+--fcc-editable-region--
+
+--fcc-editable-region--
+}
+
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f159b2cffb21150b927cb.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f159b2cffb21150b927cb.md
new file mode 100644
index 00000000000..138c2954e86
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f159b2cffb21150b927cb.md
@@ -0,0 +1,273 @@
+---
+id: 646f159b2cffb21150b927cb
+title: Step 71
+challengeType: 0
+dashedName: step-71
+---
+
+# --description--
+
+Use a class selector to target the `.cat-whisker-left-middle` element. Then move it into place with a `position` property set to `absolute`, a `top` of `127px`, and a `left` of `52px`.
+
+# --hints--
+
+You should have a `.cat-whisker-left-middle` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-left-middle'))
+```
+
+Your `.cat-whisker-left-middle` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-left-middle')?.position === 'absolute')
+```
+
+Your `.cat-whisker-left-middle` selector should have a `top` property set to `127px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-left-middle')?.top === '127px')
+```
+
+Your `.cat-whisker-left-middle` selector should have a `left` property set to `52px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-left-middle')?.left === '52px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+
+.cat-whiskers-left div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whiskers-right div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whisker-left-top {
+ position: absolute;
+ top: 120px;
+ left: 52px;
+ transform: rotate(10deg);
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f164bf100dd11d226161f.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f164bf100dd11d226161f.md
new file mode 100644
index 00000000000..cd22869ed60
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f164bf100dd11d226161f.md
@@ -0,0 +1,260 @@
+---
+id: 646f164bf100dd11d226161f
+title: Step 72
+challengeType: 0
+dashedName: step-72
+---
+
+# --description--
+
+Rotate the left middle whisker at 3 degrees.
+
+# --hints--
+
+Your `.cat-whisker-left-middle` selector should have a `transform` property set to `rotate(3deg)`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-left-middle')?.transform === 'rotate(3deg)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+
+.cat-whiskers-left div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whiskers-right div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whisker-left-top {
+ position: absolute;
+ top: 120px;
+ left: 52px;
+ transform: rotate(10deg);
+}
+
+.cat-whisker-left-middle {
+ position: absolute;
+ top: 127px;
+ left: 52px;
+--fcc-editable-region--
+
+--fcc-editable-region--
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f1764e2f1d212ba9785a7.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f1764e2f1d212ba9785a7.md
new file mode 100644
index 00000000000..b1420fdc473
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f1764e2f1d212ba9785a7.md
@@ -0,0 +1,280 @@
+---
+id: 646f1764e2f1d212ba9785a7
+title: Step 73
+challengeType: 0
+dashedName: step-73
+---
+
+# --description--
+
+Using a class selector, move the `.cat-whisker-left-bottom` into position with a `position` of `absolute`, a `top` of `134px`, and a `left` of `52px`.
+
+# --hints--
+
+You should have a `.cat-whisker-left-bottom` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-left-bottom'))
+```
+
+Your `.cat-whisker-left-bottom` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-left-bottom')?.position === 'absolute')
+```
+
+Your `.cat-whisker-left-bottom` selector should have a `top` property set to `134px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-left-bottom')?.top === '134px')
+```
+
+Your `.cat-whisker-left-bottom` selector should have a `left` property set to `52px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-left-bottom')?.left === '52px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+
+.cat-whiskers-left div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whiskers-right div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whisker-left-top {
+ position: absolute;
+ top: 120px;
+ left: 52px;
+ transform: rotate(10deg);
+}
+
+.cat-whisker-left-middle {
+ position: absolute;
+ top: 127px;
+ left: 52px;
+ transform: rotate(3deg);
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f1802a09a171332e14630.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f1802a09a171332e14630.md
new file mode 100644
index 00000000000..f71717c9fd4
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f1802a09a171332e14630.md
@@ -0,0 +1,267 @@
+---
+id: 646f1802a09a171332e14630
+title: Step 74
+challengeType: 0
+dashedName: step-74
+---
+
+# --description--
+
+Rotate the left bottom whisker at `-3` degrees.
+
+# --hints--
+
+Your `.cat-whisker-left-bottom` selector should have a `transform` property set to `rotate(-3deg)`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-left-bottom')?.transform === 'rotate(-3deg)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+
+.cat-whiskers-left div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whiskers-right div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whisker-left-top {
+ position: absolute;
+ top: 120px;
+ left: 52px;
+ transform: rotate(10deg);
+}
+
+.cat-whisker-left-middle {
+ position: absolute;
+ top: 127px;
+ left: 52px;
+ transform: rotate(3deg);
+}
+
+.cat-whisker-left-bottom {
+ position: absolute;
+ top: 134px;
+ left: 52px;
+--fcc-editable-region--
+
+--fcc-editable-region--
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f4d6c42dc5f214f4e7444.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f4d6c42dc5f214f4e7444.md
new file mode 100644
index 00000000000..0d47a8560d5
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f4d6c42dc5f214f4e7444.md
@@ -0,0 +1,287 @@
+---
+id: 646f4d6c42dc5f214f4e7444
+title: Step 75
+challengeType: 0
+dashedName: step-75
+---
+
+# --description--
+
+Now you will work on moving the right whiskers into place. Use class selector to target the `.cat-whisker-right-top` element and give it a `position` of `absolute`, a `top` of `120px`, and a `left` of `109px`.
+
+# --hints--
+
+You should have a `.cat-whisker-right-top` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-right-top'))
+```
+
+Your `.cat-whisker-right-top` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-right-top')?.position === 'absolute')
+```
+
+Your `.cat-whisker-right-top` selector should have a `top` property set to `120px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-right-top')?.top === '120px')
+```
+
+Your `.cat-whisker-right-top` selector should have a `left` property set to `109px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-right-top')?.left === '109px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+
+.cat-whiskers-left div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whiskers-right div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whisker-left-top {
+ position: absolute;
+ top: 120px;
+ left: 52px;
+ transform: rotate(10deg);
+}
+
+.cat-whisker-left-middle {
+ position: absolute;
+ top: 127px;
+ left: 52px;
+ transform: rotate(3deg);
+}
+
+.cat-whisker-left-bottom {
+ position: absolute;
+ top: 134px;
+ left: 52px;
+ transform: rotate(-3deg);
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f4e46e81f7021d5fd9c1d.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f4e46e81f7021d5fd9c1d.md
new file mode 100644
index 00000000000..d542517bcc7
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f4e46e81f7021d5fd9c1d.md
@@ -0,0 +1,274 @@
+---
+id: 646f4e46e81f7021d5fd9c1d
+title: Step 76
+challengeType: 0
+dashedName: step-76
+---
+
+# --description--
+
+Rotate the top-right whisker at -10 degrees.
+
+# --hints--
+
+Your `.cat-whisker-right-top` selector should have a `transform` property set to `rotate(-10deg)`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-right-top')?.transform === 'rotate(-10deg)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+
+.cat-whiskers-left div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whiskers-right div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whisker-left-top {
+ position: absolute;
+ top: 120px;
+ left: 52px;
+ transform: rotate(10deg);
+}
+
+.cat-whisker-left-middle {
+ position: absolute;
+ top: 127px;
+ left: 52px;
+ transform: rotate(3deg);
+}
+
+.cat-whisker-left-bottom {
+ position: absolute;
+ top: 134px;
+ left: 52px;
+ transform: rotate(-3deg);
+}
+
+.cat-whisker-right-top {
+ position: absolute;
+ top: 120px;
+ left: 109px;
+--fcc-editable-region--
+
+--fcc-editable-region--
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f4f6a14e3c522d130a0d2.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f4f6a14e3c522d130a0d2.md
new file mode 100644
index 00000000000..0c61b2728be
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f4f6a14e3c522d130a0d2.md
@@ -0,0 +1,294 @@
+---
+id: 646f4f6a14e3c522d130a0d2
+title: Step 77
+challengeType: 0
+dashedName: step-77
+---
+
+# --description--
+
+Use a class selector to target the `.cat-whisker-right-middle` element, then move the right middle whisker into position with a `position` of `absolute`, a `top` of `127px`, and a `left` of `109px`.
+
+# --hints--
+
+You should have a `.cat-whisker-right-middle` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-right-middle'))
+```
+
+Your `.cat-whisker-right-middle` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-right-middle')?.position === 'absolute')
+```
+
+Your `.cat-whisker-right-middle` selector should have a `top` property set to `127px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-right-middle')?.top === '127px')
+```
+
+Your `.cat-whisker-right-middle` selector should have a `left` property set to `109px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-right-middle')?.left === '109px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+
+.cat-whiskers-left div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whiskers-right div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whisker-left-top {
+ position: absolute;
+ top: 120px;
+ left: 52px;
+ transform: rotate(10deg);
+}
+
+.cat-whisker-left-middle {
+ position: absolute;
+ top: 127px;
+ left: 52px;
+ transform: rotate(3deg);
+}
+
+.cat-whisker-left-bottom {
+ position: absolute;
+ top: 134px;
+ left: 52px;
+ transform: rotate(-3deg);
+}
+
+.cat-whisker-right-top {
+ position: absolute;
+ top: 120px;
+ left: 109px;
+ transform: rotate(-10deg);
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f4fe12b7985232bf475a5.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f4fe12b7985232bf475a5.md
new file mode 100644
index 00000000000..f066736a34d
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f4fe12b7985232bf475a5.md
@@ -0,0 +1,281 @@
+---
+id: 646f4fe12b7985232bf475a5
+title: Step 78
+challengeType: 0
+dashedName: step-78
+---
+
+# --description--
+
+Rotate the right middle whisker at -3 degrees.
+
+# --hints--
+
+Your `.cat-whisker-right-middle` selector should have a `transform` property set to `rotate(-3deg)`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-right-middle')?.transform === 'rotate(-3deg)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+
+.cat-whiskers-left div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whiskers-right div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whisker-left-top {
+ position: absolute;
+ top: 120px;
+ left: 52px;
+ transform: rotate(10deg);
+}
+
+.cat-whisker-left-middle {
+ position: absolute;
+ top: 127px;
+ left: 52px;
+ transform: rotate(3deg);
+}
+
+.cat-whisker-left-bottom {
+ position: absolute;
+ top: 134px;
+ left: 52px;
+ transform: rotate(-3deg);
+}
+
+.cat-whisker-right-top {
+ position: absolute;
+ top: 120px;
+ left: 109px;
+ transform: rotate(-10deg);
+}
+
+.cat-whisker-right-middle {
+ position: absolute;
+ top: 127px;
+ left: 109px;
+--fcc-editable-region--
+
+--fcc-editable-region--
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f507e4d1cd323f17db4fc.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f507e4d1cd323f17db4fc.md
new file mode 100644
index 00000000000..ce448a1b522
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f507e4d1cd323f17db4fc.md
@@ -0,0 +1,302 @@
+---
+id: 646f507e4d1cd323f17db4fc
+title: Step 79
+challengeType: 0
+dashedName: step-79
+---
+
+# --description--
+
+Use class selector to target the `.cat-whisker-right-bottom` element, then move it into place with a `position` of `absolute`, a `top` of `134px`, and a `left` of `109px`.
+
+
+# --hints--
+
+You should have a `.cat-whisker-right-bottom` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-right-bottom'))
+```
+
+Your `.cat-whisker-right-bottom` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-right-bottom')?.position === 'absolute')
+```
+
+Your `.cat-whisker-right-bottom` selector should have a `top` property set to `134px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-right-bottom')?.top === '134px')
+```
+
+Your `.cat-whisker-right-bottom` selector should have a `left` property set to `109px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-right-bottom')?.left === '109px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+
+.cat-whiskers-left div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whiskers-right div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whisker-left-top {
+ position: absolute;
+ top: 120px;
+ left: 52px;
+ transform: rotate(10deg);
+}
+
+.cat-whisker-left-middle {
+ position: absolute;
+ top: 127px;
+ left: 52px;
+ transform: rotate(3deg);
+}
+
+.cat-whisker-left-bottom {
+ position: absolute;
+ top: 134px;
+ left: 52px;
+ transform: rotate(-3deg);
+}
+
+.cat-whisker-right-top {
+ position: absolute;
+ top: 120px;
+ left: 109px;
+ transform: rotate(-10deg);
+}
+
+.cat-whisker-right-middle {
+ position: absolute;
+ top: 127px;
+ left: 109px;
+ transform: rotate(-3deg);
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f516dbfc1342495515625.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f516dbfc1342495515625.md
new file mode 100644
index 00000000000..a5c0f620a06
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/646f516dbfc1342495515625.md
@@ -0,0 +1,556 @@
+---
+id: 646f516dbfc1342495515625
+title: Step 80
+challengeType: 0
+dashedName: step-80
+---
+
+# --description--
+
+Rotate the bottom-right whisker at 3 degrees.
+
+With this final step, your cat painting is now complete.
+
+# --hints--
+
+Your `.cat-whisker-right-bottom` selector should have a `transform` property set to `rotate(3deg)`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whisker-right-bottom')?.transform === 'rotate(3deg)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+
+.cat-whiskers-left div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whiskers-right div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whisker-left-top {
+ position: absolute;
+ top: 120px;
+ left: 52px;
+ transform: rotate(10deg);
+}
+
+.cat-whisker-left-middle {
+ position: absolute;
+ top: 127px;
+ left: 52px;
+ transform: rotate(3deg);
+}
+
+.cat-whisker-left-bottom {
+ position: absolute;
+ top: 134px;
+ left: 52px;
+ transform: rotate(-3deg);
+}
+
+.cat-whisker-right-top {
+ position: absolute;
+ top: 120px;
+ left: 109px;
+ transform: rotate(-10deg);
+}
+
+.cat-whisker-right-middle {
+ position: absolute;
+ top: 127px;
+ left: 109px;
+ transform: rotate(-3deg);
+}
+
+.cat-whisker-right-bottom {
+ position: absolute;
+ top: 134px;
+ left: 109px;
+--fcc-editable-region--
+
+--fcc-editable-region--
+}
+```
+
+# --solutions--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+
+.cat-whiskers-left div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whiskers-right div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+.cat-whisker-left-top {
+ position: absolute;
+ top: 120px;
+ left: 52px;
+ transform: rotate(10deg);
+}
+
+.cat-whisker-left-middle {
+ position: absolute;
+ top: 127px;
+ left: 52px;
+ transform: rotate(3deg);
+}
+
+.cat-whisker-left-bottom {
+ position: absolute;
+ top: 134px;
+ left: 52px;
+ transform: rotate(-3deg);
+}
+
+.cat-whisker-right-top {
+ position: absolute;
+ top: 120px;
+ left: 109px;
+ transform: rotate(-10deg);
+}
+
+.cat-whisker-right-middle {
+ position: absolute;
+ top: 127px;
+ left: 109px;
+ transform: rotate(-3deg);
+}
+
+.cat-whisker-right-bottom {
+ position: absolute;
+ top: 134px;
+ left: 109px;
+ transform: rotate(3deg);
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6476f5c17f99146071ee884c.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6476f5c17f99146071ee884c.md
new file mode 100644
index 00000000000..28222313e25
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6476f5c17f99146071ee884c.md
@@ -0,0 +1,77 @@
+---
+id: 6476f5c17f99146071ee884c
+title: Step 8
+challengeType: 0
+dashedName: step-8
+---
+
+# --description--
+
+You could see that nothing happens. The `.cat-head` element did not move despite setting a `top` and `left` of `100px` each. But that's not the case with `relative` positioning.
+
+When you use the `relative` value, the element is still positioned according to the normal flow of the document, but the `top`, `left`, `bottom`, and `right` values become active.
+
+Instead of `static`, give your `.cat-head` a position of `relative`, and leave both `top` and `left` properties as they are.
+
+# --hints--
+
+Your `.cat-head` selector should have a `position` property set to `relative`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.position === 'relative')
+```
+
+Your `.cat-head` selector should have a `top` property set to `100px`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.top === '100px')
+```
+
+Your `.cat-head` selector should have a `left` property set to `100px`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.left === '100px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+--fcc-editable-region--
+ position: static;
+ top: 100px;
+ left: 100px;
+--fcc-editable-region--
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6476f7a4827bcc61682f2347.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6476f7a4827bcc61682f2347.md
new file mode 100644
index 00000000000..645b36ca042
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6476f7a4827bcc61682f2347.md
@@ -0,0 +1,79 @@
+---
+id: 6476f7a4827bcc61682f2347
+title: Step 9
+challengeType: 0
+dashedName: step-9
+---
+
+# --description--
+
+When you use the `absolute` value for your `position` property, the element is taken out of the normal flow of the document, and then its position is determined by the `top`, `right`, `bottom`, and `left` properties.
+
+Set the `position` property of your `.cat-head` element to `absolute`, then set `top` and `left` properties to any positive pixel value.
+
+
+
+# --hints--
+
+Your `.cat-head` selector should have a `position` property set to `absolute`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.position === 'absolute')
+```
+
+Your `.cat-head` selector should have a `top` property set to any number in `px`. Make sure you add a semicolon.
+
+```js
+// assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.top === '300px')
+assert.match(code, /top:\s*\d{1,4}px;/)
+```
+
+Your `.cat-head` selector should have a `left` property set to any number in `px`. Make sure you add a semicolon.
+
+```js
+// assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.left === '400px')
+assert.match(code, /left:\s*\d{1,4}px;/)
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+--fcc-editable-region--
+ position: relative;
+ top: 100px;
+ left: 100px;
+--fcc-editable-region--
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6476fb7cbaafa36d65e9cf35.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6476fb7cbaafa36d65e9cf35.md
new file mode 100644
index 00000000000..07ece11abd6
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6476fb7cbaafa36d65e9cf35.md
@@ -0,0 +1,70 @@
+---
+id: 6476fb7cbaafa36d65e9cf35
+title: Step 10
+challengeType: 0
+dashedName: step-10
+---
+
+# --description--
+
+`fixed` is a `position` property value that lets you make an element fixed to the page no matter where the user scrolls to on the page.
+
+You'll have to do some more markups to see how `fixed` positioning works. In your HTML, create a `div` element with the class `box`.
+
+# --hints--
+
+You should have a `div` element.
+
+```js
+assert(document.querySelectorAll('div').length === 2);
+```
+
+Your `div` element should have the class `box`.
+
+```js
+assert(document.querySelectorAll('div')[1]?.getAttribute('class') === 'box');
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ top: 300px;
+ left: 400px;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6476fc5cf14b276e6d04e82a.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6476fc5cf14b276e6d04e82a.md
new file mode 100644
index 00000000000..0404d519551
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6476fc5cf14b276e6d04e82a.md
@@ -0,0 +1,101 @@
+---
+id: 6476fc5cf14b276e6d04e82a
+title: Step 11
+challengeType: 0
+dashedName: step-11
+---
+
+# --description--
+
+Use a class selector to give your `.box` element a width of `200px`, a height of `600px`, and a background color of `#000`. Also, give it a `position` of `absolute`, a `top` of `800px` and a `left` of `650px`.
+
+# --hints--
+
+You should have a `.box` selector.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.box'))
+```
+
+Your `.box` selector should have a `width` property set to `200px`.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.box')?.width === '200px')
+```
+
+Your `.box` selector should have a `height` property set to `600px`.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.box')?.height === '600px')
+```
+
+Your `.box` selector should have a `background-color` property set to `#000`.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.box')?.backgroundColor === 'rgb(0, 0, 0)')
+```
+
+Your `.box` selector should have a `position` property set to `absolute`.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.box')?.position === 'absolute')
+```
+
+Your `.box` selector should have a `left` property set to `650px`.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.box')?.left === '650px')
+```
+
+Your `.box` selector should have a `top` property set to `800px`.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.box')?.top === '800px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: relative;
+ top: 100px;
+ left: 100px;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
+
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6476fd4213318f6ee211028a.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6476fd4213318f6ee211028a.md
new file mode 100644
index 00000000000..4aa15e6de57
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6476fd4213318f6ee211028a.md
@@ -0,0 +1,85 @@
+---
+id: 6476fd4213318f6ee211028a
+title: Step 12
+challengeType: 0
+dashedName: step-12
+---
+
+# --description--
+
+Now replace the `position` property value of your `.cat-head` with `fixed`. Leave both `top` and `left` as they are.
+
+After that, scroll up and down to see how the `fixed` value works.
+
+# --hints--
+
+Your `.cat-head` selector should have a `position` property set to `fixed`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.position === 'fixed')
+```
+
+Your `.cat-head` selector should have a `top` property set to `100px`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.top === '100px')
+```
+
+Your `.cat-head` selector should have a `left` property set to `100px`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.left === '100px')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+--fcc-editable-region--
+ position: relative;
+ top: 100px;
+ left: 100px;
+--fcc-editable-region--
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.box {
+ width: 200px;
+ height: 600px;
+ background-color: #000;
+ position: absolute;
+ left: 650px;
+ top: 800px;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/64770351e8586671ec0911f0.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/64770351e8586671ec0911f0.md
new file mode 100644
index 00000000000..af13c0fbbb9
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/64770351e8586671ec0911f0.md
@@ -0,0 +1,87 @@
+---
+id: 64770351e8586671ec0911f0
+title: Step 13
+challengeType: 0
+dashedName: step-13
+---
+
+# --description--
+
+`sticky` positioning is a hybrid of `relative` and `fixed` positioning. It allows an element to **stick** to a specific position within its containing element or viewport, based on the scroll position.
+
+Change the value of the `position` property of `.cat-head` to `sticky`, set `top` to `0`, then remove `left` and its value.
+
+**Note**: To see how `sticky` works, you have to place a couple of texts before and after your `.cat-head` `div` element. If you scroll down after that, you'll see that the `.cat-head` gets stuck to the top and remains there.
+
+# --hints--
+
+Your `.cat-head` selector should have a `position` property set to `sticky`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.position === 'sticky')
+```
+
+Your `.cat-head` selector should have a `top` property set to `0`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.top === '0px')
+```
+
+You should not have the `left` property and its value in your code.
+
+```js
+assert.notMatch(code, /left:\s*100px;?/)
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+--fcc-editable-region--
+ position: fixed;
+ top: 100px;
+ left: 100px;
+--fcc-editable-region--
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.box {
+ width: 200px;
+ height: 600px;
+ background-color: #000;
+ position: absolute;
+ left: 650px;
+ top: 800px;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6477062778c85972eb648030.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6477062778c85972eb648030.md
new file mode 100644
index 00000000000..243e79727cc
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6477062778c85972eb648030.md
@@ -0,0 +1,102 @@
+---
+id: 6477062778c85972eb648030
+title: Step 14
+challengeType: 0
+dashedName: step-14
+---
+
+# --description--
+
+You should now center the cat head.
+
+Give the `.cat-head` element a `position` property set to `absolute`. Set a value of `0` for the `right`, `left`, `top`, `bottom` properties, then set its `margin` property on all sides to `auto`. That's one way to center an element vertically and horizontally using CSS positioning.
+
+# --hints--
+
+Your `.cat-head` selector should have a `position` property set to `absolute`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.position === 'absolute')
+```
+
+Your `.cat-head` selector should have a `top` property set to `0`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.top === '0px')
+```
+
+Your `.cat-head` selector should have a `left` property set to `0`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.left === '0px')
+```
+
+Your `.cat-head` selector should have a `right` property set to `0`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.right === '0px')
+```
+
+Your `.cat-head` selector should have a `bottom` property set to `0`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.bottom === '0px')
+```
+
+Your `.cat-head` selector should have a `margin` property set to `auto`. Make sure you add a semicolon.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-head')?.margin === 'auto')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+--fcc-editable-region--
+ position: sticky;
+ top: 0;
+--fcc-editable-region--
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.box {
+ width: 400px;
+ height: 600px;
+ background-color: #000;
+ position: absolute;
+ left: 650px;
+ top: 800px;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/647d821de0d97b3283c72b36.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/647d821de0d97b3283c72b36.md
new file mode 100644
index 00000000000..0dab90a2caa
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/647d821de0d97b3283c72b36.md
@@ -0,0 +1,73 @@
+---
+id: 647d821de0d97b3283c72b36
+title: Step 16
+challengeType: 0
+dashedName: step-16
+---
+
+# --description--
+
+Also, remove the `.box` CSS rule and its declarations because you don't need them anymore.
+
+# --hints--
+
+You should remove the `.box` css rule and all its values.
+
+```js
+assert.notMatch(code, /\.box\s*\{\s*width:\s*400px;\s*height:\s*600px;\s*background-color:\s*#000;\s*position:\s*absolute;\s*left:\s*650px;\s*top:\s*800px;?\s*\}\s*/)
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+--fcc-editable-region--
+.box {
+ width: 400px;
+ height: 600px;
+ background-color: #000;
+ position: absolute;
+ left: 650px;
+ top: 800px;
+}
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/647d855ac12cd436059acd39.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/647d855ac12cd436059acd39.md
new file mode 100644
index 00000000000..03643bea3eb
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/647d855ac12cd436059acd39.md
@@ -0,0 +1,48 @@
+---
+id: 647d855ac12cd436059acd39
+title: Step 2
+challengeType: 0
+dashedName: step-2
+---
+
+# --description--
+
+Use the universal selector to add `box-sizing: border-box;` to your CSS. This ensures elements include padding and border in their specified width and height.
+
+# --hints--
+
+You should have the universal selector (`*`).
+
+```js
+// assert.match(code, /\*\s*{\s*.*\s*}/)
+assert(new __helpers.CSSHelp(document).getStyle('*'))
+```
+
+Your universal selector should have a `box-sizing` property set to `border-box`.
+
+```js
+// assert.match(code, /\*\s*{\s*box-sizing:\s*border-box;?\s*}/)
+assert(new __helpers.CSSHelp(document).getStyle('*')?.boxSizing === 'border-box')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+ fCC Cat Painting
+
+
+
+
+```
+
+```css
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/649353647c44ef4867ab4935.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/649353647c44ef4867ab4935.md
new file mode 100644
index 00000000000..dfa2a720ff7
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/649353647c44ef4867ab4935.md
@@ -0,0 +1,74 @@
+---
+id: 649353647c44ef4867ab4935
+title: Step 15
+challengeType: 0
+dashedName: step-15
+---
+
+# --description--
+
+Remove the `div` element with class `box` because you don't need it anymore.
+
+# --hints--
+
+You should remove the `div` element with class `box`
+
+```js
+assert.notMatch(code, /<\/div>/)
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+
fCC Cat Painting
+
+
+
+
+
+ --fcc-editable-region--
+
+ --fcc-editable-region--
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.box {
+ width: 400px;
+ height: 600px;
+ background-color: #000;
+ position: absolute;
+ left: 650px;
+ top: 800px;
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/64a2687ef267e5934a2f93e3.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/64a2687ef267e5934a2f93e3.md
new file mode 100644
index 00000000000..808c56f879d
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/64a2687ef267e5934a2f93e3.md
@@ -0,0 +1,218 @@
+---
+id: 64a2687ef267e5934a2f93e3
+title: Step 57
+challengeType: 0
+dashedName: step-57
+---
+
+# --description--
+
+Using a descendant selector, select the two `div` elements inside the `div` with class `cat-mouth`. Give it a width of `30px`, a height of `50px`, and a border of `2px solid #000`.
+
+# --hints--
+
+You should have a `.cat-mouth div` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-mouth div'))
+```
+
+Your `.cat-mouth div` selector should have a `width` property set to `30px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-mouth div')?.width === '30px')
+```
+
+Your `.cat-mouth div` selector should have a `height` property set to `50px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-mouth div')?.height === '50px')
+```
+
+Your `.cat-mouth div` selector should have a `border` property set to `2px solid #000`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-mouth div')?.border === '2px solid rgb(0, 0, 0)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+
fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/64a26ac5540c5493f4641f10.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/64a26ac5540c5493f4641f10.md
new file mode 100644
index 00000000000..d87c0c0edcb
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/64a26ac5540c5493f4641f10.md
@@ -0,0 +1,212 @@
+---
+id: 64a26ac5540c5493f4641f10
+title: Step 58
+challengeType: 0
+dashedName: step-58
+---
+
+# --description--
+
+You are going to make the two mouth lines into an elliptical shape. So, give the `.cat-mouth div` selector a border color of `black transparent transparent transparent` and a border radius of `190%/190px 150px 0 0`.
+
+# --hints--
+
+Your `.cat-mouth div` selector should have a `border-color` property set to `black transparent transparent transparent`.
+
+```js
+assert.match(code, /border-color:\s*black\s*(transparent)\s*\1\s*\1\s*;?/)
+```
+
+Your `.cat-mouth div` selector should have a `border-radius` property set to `190%/190px 150px 0 0`.
+
+```js
+assert.match(code, /border-radius:\s*190%\/190px\s*150px\s*0\s*0\s*;?/)
+```
+
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+
fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+--fcc-editable-region--
+
+--fcc-editable-region--
+}
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/64a3bcbc83e574b58c8ed048.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/64a3bcbc83e574b58c8ed048.md
new file mode 100644
index 00000000000..7a5c244fabd
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/64a3bcbc83e574b58c8ed048.md
@@ -0,0 +1,260 @@
+---
+id: 64a3bcbc83e574b58c8ed048
+title: Step 68
+challengeType: 0
+dashedName: step-68
+---
+
+# --description--
+
+As you did in the previous step, use a descendant selector to target the three `div` elements inside your `.cat-whiskers-right` element. Give it a `width` of `40px`, a `height` of `1px`, and a `background-color` of `#000`.
+
+# --hints--
+
+You should have a `.cat-whiskers-right div` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whiskers-right div'))
+```
+
+Your `.cat-whiskers-right div` selector should have a `width` set to `40px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whiskers-right div')?.width === '40px')
+```
+
+Your `.cat-whiskers-right div` selector should have a `height` set to `1px`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whiskers-right div')?.height === '1px')
+```
+
+Your `.cat-whiskers-right div` selector should have a `background-color` set to `#000`.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-whiskers-right div')?.backgroundColor === 'rgb(0, 0, 0)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+
fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+.cat-left-ear {
+ position: absolute;
+ top: -26px;
+ left: -31px;
+ z-index: 1;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ transform: rotate(-45deg);
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-right-ear {
+ position: absolute;
+ top: -26px;
+ left: 163px;
+ z-index: 1;
+ transform: rotate(45deg);
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-bottom: 70px solid #5e5e5e;
+}
+
+.cat-left-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-right-inner-ear {
+ position: absolute;
+ top: 22px;
+ left: -20px;
+ border-top-left-radius: 90px;
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 40%;
+ border-bottom-left-radius: 40%;
+ border-left: 20px solid transparent;
+ border-right: 20px solid transparent;
+ border-bottom: 40px solid #3b3b4f;
+}
+
+.cat-left-eye {
+ position: absolute;
+ top: 54px;
+ left: 39px;
+ border-radius: 60%;
+ transform: rotate(25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-right-eye {
+ position: absolute;
+ top: 54px;
+ left: 134px;
+ border-radius: 60%;
+ transform: rotate(-25deg);
+ width: 30px;
+ height: 40px;
+ background-color: #000;
+}
+
+.cat-left-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 2px;
+ width: 10px;
+ height: 20px;
+ transform: rotate(10deg);
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-right-inner-eye {
+ position: absolute;
+ top: 8px;
+ left: 18px;
+ transform: rotate(-5deg);
+ width: 10px;
+ height: 20px;
+ background-color: #fff;
+ border-radius: 60%;
+}
+
+.cat-nose {
+ position: absolute;
+ top: 108px;
+ left: 85px;
+ border-top-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+ border-bottom-left-radius: 50%;
+ transform: rotate(180deg);
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ border-bottom: 20px solid #442c2c;
+}
+
+.cat-mouth div {
+ width: 30px;
+ height: 50px;
+ border: 2px solid #000;
+ border-radius: 190%/190px 150px 0 0;
+ border-color: black transparent transparent transparent;
+}
+
+.cat-mouth-line-left {
+ position: absolute;
+ top: 88px;
+ left: 74px;
+ transform: rotate(170deg);
+}
+
+.cat-mouth-line-right {
+ position: absolute;
+ top: 88px;
+ left: 91px;
+ transform: rotate(165deg);
+}
+
+.cat-whiskers-left div {
+ width: 40px;
+ height: 1px;
+ background-color: #000;
+}
+
+--fcc-editable-region--
+
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6676a8a8d9861319ee901a90.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6676a8a8d9861319ee901a90.md
new file mode 100644
index 00000000000..16826bef5b2
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6676a8a8d9861319ee901a90.md
@@ -0,0 +1,148 @@
+---
+id: 6676a8a8d9861319ee901a90
+title: Step 22
+challengeType: 0
+dashedName: step-22
+---
+
+# --description--
+
+Now you can begin working on your cat's ears.
+
+Clean up your review code by removing the `.cat-right-ear` selector and all of its properties.
+
+Using a class selector, give the `.cat-left-ear` element a left and right border of `35px solid transparent` each. Also, set the bottom border to `70px solid #5e5e5e`.
+
+# --hints--
+
+
+Your `.cat-right-ear` selector should not have a `height` property.
+
+```js
+assert(!new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.height)
+```
+
+Your `.cat-right-ear` selector should not have a `width` property.
+
+```js
+assert(!new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.width)
+```
+
+
+Your `.cat-right-ear` selector should not have a `border-left` property.
+
+```js
+assert(!new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderLeft)
+```
+
+Your `.cat-right-ear` selector should not have a `border-right` property.
+
+```js
+assert(!new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderRight)
+```
+
+Your `.cat-right-ear` selector should not have a `border-top` property.
+
+```js
+assert(!new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderTop)
+```
+
+Your `.cat-right-ear` selector should not have a `border-bottom` property.
+
+```js
+assert(!new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderBottom)
+```
+
+You should not have a `.cat-right-ear` selector.
+
+```js
+assert(!new __helpers.CSSHelp(document)?.getStyle('.cat-right-ear'))
+```
+
+You should have a `.cat-left-ear` selector.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-ear'))
+```
+
+Your `.cat-left-ear` selector should have a `border-left` property set to `35px solid transparent`
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-ear')?.borderLeft === '35px solid transparent')
+```
+
+Your `.cat-left-ear` selector should have a `border-right` property set to `35px solid transparent`
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-ear')?.borderRight === '35px solid transparent')
+```
+
+Your `.cat-left-ear` selector should have a `border-bottom` property set to `70px solid #5e5e5e`
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-left-ear')?.borderBottom === '70px solid rgb(94, 94, 94)')
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+
fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+--fcc-editable-region--
+.cat-right-ear {
+ height: 0;
+ width: 0;
+ border-left: 35px solid transparent;
+ border-right: 35px solid transparent;
+ border-top: 35px solid transparent;
+ border-bottom: 35px solid red;
+}
+--fcc-editable-region--
+```
diff --git a/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6676a8b01e56ec1a1e07c202.md b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6676a8b01e56ec1a1e07c202.md
new file mode 100644
index 00000000000..26922a2a3c0
--- /dev/null
+++ b/curriculum/challenges/english/25-front-end-development/workshop-cat-painting/6676a8b01e56ec1a1e07c202.md
@@ -0,0 +1,131 @@
+---
+id: 6676a8b01e56ec1a1e07c202
+title: Step 21
+challengeType: 0
+dashedName: step-21
+---
+
+# --description--
+
+Notice that you now have a white square with thick borders. The borders have diagonal edges which can be used to create triangles. You will need them to create your cat's ears.
+
+Within the same class selector adjust `height` and `width` to `0`. Set the left, right and top border to `transparent`.
+
+Remove the `background-color` property, and you should see a triangle.
+
+# --hints--
+
+
+You should have a `.cat-right-ear` selector.
+
+```js
+assert(new __helpers.CSSHelp(document)?.getStyle('.cat-right-ear'))
+```
+
+Your `.cat-right-ear` selector should have a `height` property set to `0`. Don't forget to add a semi-colon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.height == '0px')
+```
+
+Your `.cat-right-ear` selector should have a `width` property set to `0`. Don't forget to add a semi-colon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.width === '0px')
+```
+
+Your `.cat-right-ear` selector should have a `border-left` property set to `35px solid transparent`. Don't forget to add a semi-colon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderLeft === '35px solid transparent')
+```
+
+Your `.cat-right-ear` selector should have a `border-right` property set to `35px solid transparent`. Don't forget to add a semi-colon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderRight === '35px solid transparent')
+```
+
+Your `.cat-right-ear` selector should have a `border-top` property set to `35px solid transparent`. Don't forget to add a semi-colon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderTop === '35px solid transparent')
+```
+
+
+Your `.cat-right-ear` selector should have a `border-bottom` property set to `35px solid red`. Don't forget to add a semi-colon.
+
+```js
+assert(new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.borderBottom === '35px solid red')
+```
+
+Your `.cat-right-ear` selector should not have a `background-color` property.
+
+```js
+assert(!new __helpers.CSSHelp(document).getStyle('.cat-right-ear')?.backgroundColor)
+```
+
+# --seed--
+
+## --seed-contents--
+
+```html
+
+
+
+
+
fCC Cat Painting
+
+
+
+
+
+
+
+
+```
+
+```css
+* {
+ box-sizing: border-box;
+}
+
+body {
+ background-color: #c9d2fc;
+}
+
+.cat-head {
+ position: absolute;
+ right: 0;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ margin: auto;
+ background: linear-gradient(#5e5e5e 85%, #45454f 100%);
+ width: 205px;
+ height: 180px;
+ border: 1px solid #000;
+ border-radius: 46%;
+}
+
+--fcc-editable-region--
+.cat-right-ear {
+ height: 100px;
+ width: 100px;
+ background-color: white;
+ border-left: 35px solid blue;
+ border-right: 35px solid blue;
+ border-top: 35px solid red;
+ border-bottom: 35px solid red;
+}
+--fcc-editable-region--
+```
diff --git a/curriculum/test/utils/mongo-ids.js b/curriculum/test/utils/mongo-ids.js
index 907abbec06a..e4900b0a83e 100644
--- a/curriculum/test/utils/mongo-ids.js
+++ b/curriculum/test/utils/mongo-ids.js
@@ -587,7 +587,86 @@ const duplicatedProjectIds = [
'6201a5258af7b398b030bfaf',
'6201a59be346d399c21d10b1',
// Cat Painting
-
+ '646c48df8674cf2b91020ecc',
+ '647d855ac12cd436059acd39',
+ '646c586be7180e40ddf74ff6',
+ '646c59e942f35541923104bf',
+ '646c5d7057c45f432fcdd46c',
+ '646c5ace05e4be4211407935',
+ '646c5e727e56e743c9aed4a1',
+ '6476f5c17f99146071ee884c',
+ '6476f7a4827bcc61682f2347',
+ '6476fb7cbaafa36d65e9cf35',
+ '6476fc5cf14b276e6d04e82a',
+ '6476fd4213318f6ee211028a',
+ '64770351e8586671ec0911f0',
+ '6477062778c85972eb648030',
+ '649353647c44ef4867ab4935',
+ '647d821de0d97b3283c72b36',
+ '646c5ffef5598d449b52ec12',
+ '646ce8bb4b35544d501c7184',
+ '646ce9d790d2a44de5f99e04',
+ '646ceb843412c74edee27a79',
+ '6676a8b01e56ec1a1e07c202',
+ '6676a8a8d9861319ee901a90',
+ '646cecc9eb5c4f4f73dafd07',
+ '646cef0c2b98915094df7099',
+ '646cf1206cac5f51804f49cf',
+ '646cf2249f02ca5233d9af7c',
+ '646cf48d8f8e1f535a1821d3',
+ '646cf6cbca98e258da65c979',
+ '646cf88aa884405a11ea5bcc',
+ '646cfc2b8e6fe95c20a819d5',
+ '646cfd853634255d02b64cc1',
+ '646cfde6ac612e5d60391f50',
+ '646dd556d524bc61c0139bd6',
+ '646dd6f9caa862627dd87772',
+ '646dd7cfd0cfac630c1dd520',
+ '646dd8c79ec23463a3d0e356',
+ '646dd9d9a729916460724f16',
+ '646ddab8afd73764f5241bbf',
+ '646ddb61ff08366570cc5902',
+ '646ddd3f9f97a0667b964bdb',
+ '646dde7dc20dc167489faa69',
+ '646ddf888632fa67f1180940',
+ '646de5dc8988076a1d992afd',
+ '646de6a97b50a86ac487de86',
+ '646de7b64467e96b7d35b5cd',
+ '646de8478d6f796bfbdccfb2',
+ '646de8d204a3426c7d184372',
+ '646dea1c98c2426d43a705c3',
+ '646deb169847f86df0f95bfc',
+ '646dec359bef3b7811fba5a6',
+ '646dedbcba062079128b2ecc',
+ '646def5e863abf7a14501421',
+ '646df03c8f79337ab46f148b',
+ '646df0cf26413a7b35e4b8b3',
+ '646df1d1aa4ae57bdf1869c4',
+ '646dffd8ce9ac77ec1906f2e',
+ '64a2687ef267e5934a2f93e3',
+ '64a26ac5540c5493f4641f10',
+ '646f0417322c0e04983a5149',
+ '646f08293804a30685533c6f',
+ '646f09293eb3230723a62f77',
+ '646f0c9a1e3360092d1bbd33',
+ '646f0ce5737243098ad6e494',
+ '646f0ef13604420a8744f7d4',
+ '646f0f7c5933560af8e7e380',
+ '646f102bf87b350b593baa72',
+ '646f107abb89d00bb99f387a',
+ '64a3bcbc83e574b58c8ed048',
+ '646f12da0b4c5d0ca162834a',
+ '646f135eab69d90d0c6d4e9b',
+ '646f159b2cffb21150b927cb',
+ '646f164bf100dd11d226161f',
+ '646f1764e2f1d212ba9785a7',
+ '646f1802a09a171332e14630',
+ '646f4d6c42dc5f214f4e7444',
+ '646f4e46e81f7021d5fd9c1d',
+ '646f4f6a14e3c522d130a0d2',
+ '646f4fe12b7985232bf475a5',
+ '646f507e4d1cd323f17db4fc',
+ '646f516dbfc1342495515625',
// Responsive Piano
'612e78af05201622d4bab8aa',
'612e7d1c29fb872d6384379c',