diff --git a/desafio-react-e-typescript/src/assets/images/boletoicon.svg b/desafio-react-e-typescript/src/assets/images/boletoicon.svg
new file mode 100644
index 0000000..b4a9010
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/boletoicon.svg
@@ -0,0 +1,9 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/dinersicon.svg b/desafio-react-e-typescript/src/assets/images/dinersicon.svg
new file mode 100644
index 0000000..8748138
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/dinersicon.svg
@@ -0,0 +1,9 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/eloicon.svg b/desafio-react-e-typescript/src/assets/images/eloicon.svg
new file mode 100644
index 0000000..f17760b
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/eloicon.svg
@@ -0,0 +1,9 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/facebookicon.svg b/desafio-react-e-typescript/src/assets/images/facebookicon.svg
new file mode 100644
index 0000000..b4c5651
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/facebookicon.svg
@@ -0,0 +1,16 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/gotopicon.svg b/desafio-react-e-typescript/src/assets/images/gotopicon.svg
new file mode 100644
index 0000000..41a2663
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/gotopicon.svg
@@ -0,0 +1,4 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/hipericon.svg b/desafio-react-e-typescript/src/assets/images/hipericon.svg
new file mode 100644
index 0000000..dfba036
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/hipericon.svg
@@ -0,0 +1,9 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/instagramicon.svg b/desafio-react-e-typescript/src/assets/images/instagramicon.svg
new file mode 100644
index 0000000..e9666cd
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/instagramicon.svg
@@ -0,0 +1,18 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/linkedinicon.svg b/desafio-react-e-typescript/src/assets/images/linkedinicon.svg
new file mode 100644
index 0000000..1ef76c2
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/linkedinicon.svg
@@ -0,0 +1,18 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/m3developed.svg b/desafio-react-e-typescript/src/assets/images/m3developed.svg
new file mode 100644
index 0000000..0eeb905
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/m3developed.svg
@@ -0,0 +1,4 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/mastericon.svg b/desafio-react-e-typescript/src/assets/images/mastericon.svg
new file mode 100644
index 0000000..f6c126e
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/mastericon.svg
@@ -0,0 +1,9 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/pagseguroicon.svg b/desafio-react-e-typescript/src/assets/images/pagseguroicon.svg
new file mode 100644
index 0000000..688c2f7
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/pagseguroicon.svg
@@ -0,0 +1,9 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/twittericon.svg b/desafio-react-e-typescript/src/assets/images/twittericon.svg
new file mode 100644
index 0000000..4ea375a
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/twittericon.svg
@@ -0,0 +1,11 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/visaicon.svg b/desafio-react-e-typescript/src/assets/images/visaicon.svg
new file mode 100644
index 0000000..71b806c
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/visaicon.svg
@@ -0,0 +1,9 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/vtexicon.svg b/desafio-react-e-typescript/src/assets/images/vtexicon.svg
new file mode 100644
index 0000000..92e177c
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/vtexicon.svg
@@ -0,0 +1,9 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/vtexpowered.svg b/desafio-react-e-typescript/src/assets/images/vtexpowered.svg
new file mode 100644
index 0000000..7e8d17b
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/vtexpowered.svg
@@ -0,0 +1,7 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/whatsappicon.svg b/desafio-react-e-typescript/src/assets/images/whatsappicon.svg
new file mode 100644
index 0000000..53c5037
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/whatsappicon.svg
@@ -0,0 +1,11 @@
+
diff --git a/desafio-react-e-typescript/src/assets/images/youtubeicon.svg b/desafio-react-e-typescript/src/assets/images/youtubeicon.svg
new file mode 100644
index 0000000..7be42bf
--- /dev/null
+++ b/desafio-react-e-typescript/src/assets/images/youtubeicon.svg
@@ -0,0 +1,11 @@
+
diff --git a/desafio-react-e-typescript/src/components/Footer/Accordion/Accordion.scss b/desafio-react-e-typescript/src/components/Footer/Accordion/Accordion.scss
new file mode 100644
index 0000000..090a4a8
--- /dev/null
+++ b/desafio-react-e-typescript/src/components/Footer/Accordion/Accordion.scss
@@ -0,0 +1,107 @@
+.wrapper-container {
+ border-top: 1px solid black;
+ padding: 24px 16px;
+ min-height: 198px;
+
+ @media screen and (min-width: 1025px) {
+ display: none;
+ }
+
+ .wrapper {
+ display: flex;
+ align-items: center;
+ height: auto;
+
+ .accordion {
+ width: 100%;
+
+ .item {
+ margin-bottom: 12px;
+
+ .title {
+ color: #303030;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ font-family: "Roboto", sans-serif;
+ font-weight: 500;
+ font-style: normal;
+ font-size: 14px;
+
+ h3 {
+ margin: 0;
+ }
+
+ span {
+ font-size: 14px;
+ }
+ }
+ }
+
+ .content {
+ max-height: 0;
+ overflow: hidden;
+ transition: all 0.2s cubic-bezier(0, 1, 0, 1);
+
+ ul {
+ padding: unset;
+ list-style-type: none;
+
+ li {
+ margin: 12px 0px;
+
+ a {
+ font-family: "Roboto", sans-serif;
+ font-size: 12px;
+ line-height: 14px;
+ text-transform: capitalize;
+ color: #303030;
+ text-decoration: none;
+ }
+ }
+ }
+
+ .institucional-content {
+ margin: 0;
+ }
+
+ .revendedor-content,
+ .duvidasfreq-content,
+ .num2-content {
+ text-decoration: underline;
+ }
+
+ .atendimento-content,
+ .atendimento2-content {
+ font-weight: 500;
+ }
+ }
+
+ .content.show {
+ height: auto;
+ max-height: 9999px;
+ transition: all 0.5s cubic-bezier(1, 0, 1, 0);
+ }
+ }
+ }
+
+ .footer-socials-container {
+ button {
+ margin-right: 10px;
+ background-color: transparent;
+ }
+
+ h4 {
+ font-family: "Roboto", sans-serif;
+ font-weight: 400;
+ font-size: 14px;
+ line-height: 16px;
+ text-transform: lowercase;
+ margin-top: 12px;
+ }
+
+ @media screen and (min-width: 1025px) {
+ display: none;
+ }
+ }
+}
diff --git a/desafio-react-e-typescript/src/components/Footer/Accordion/Accordion.tsx b/desafio-react-e-typescript/src/components/Footer/Accordion/Accordion.tsx
new file mode 100644
index 0000000..36454e2
--- /dev/null
+++ b/desafio-react-e-typescript/src/components/Footer/Accordion/Accordion.tsx
@@ -0,0 +1,103 @@
+import React, { useState } from "react";
+
+import facebook from "../../../assets/images/facebookicon.svg";
+import instagram from "../../../assets/images/instagramicon.svg";
+import twitter from "../../../assets/images/twittericon.svg";
+import youtube from "../../../assets/images/youtubeicon.svg";
+import linkedin from "../../../assets/images/linkedinicon.svg";
+
+import "./Accordion.scss";
+import { data } from "./AccordionData";
+
+const Accordion = () => {
+ const [selected, setSelected] = useState(false);
+
+ const toggle = (i: any) => {
+ if (selected === i) {
+ return setSelected(false);
+ }
+
+ setSelected(i);
+ };
+
+ return (
+
+
+
+ {data.map((item: any, i: any) => (
+
+
toggle(i)}>
+
{item.title}
+ {selected === i ? "-" : "+"}
+
+
+
+ ))}
+
+
+
+
+
+
+
+
+
www.loremipsum.com
+
+
+ );
+};
+
+export { Accordion };
diff --git a/desafio-react-e-typescript/src/components/Footer/Accordion/AccordionData.js b/desafio-react-e-typescript/src/components/Footer/Accordion/AccordionData.js
new file mode 100644
index 0000000..487344e
--- /dev/null
+++ b/desafio-react-e-typescript/src/components/Footer/Accordion/AccordionData.js
@@ -0,0 +1,25 @@
+const data = [
+ {
+ title: "Institucional",
+ subtitle: ["Quem somos"],
+ subtitle2: ["Política de Privacidade"],
+ subtitle3: ["Segurança"],
+ subtitle4: ["Seja um Revendedor"],
+ },
+ {
+ title: "Dúvidas",
+ subtitle12: ["Entrega"],
+ subtitle22: ["Pagamento"],
+ subtitle32: ["Trocas e Devoluções"],
+ subtitle42: ["Dúvidas Frequentes"],
+ },
+ {
+ title: "Fale Conosco",
+ subtitle13: ["Atendimento Ao Consumidor"],
+ subtitle23: ["(11) 4159-9504"],
+ subtitle33: ["Atendimento Online"],
+ subtitle43: ["(11) 99433-8825"],
+ },
+];
+
+export { data };
diff --git a/desafio-react-e-typescript/src/components/Footer/Footer.module.scss b/desafio-react-e-typescript/src/components/Footer/Footer.module.scss
new file mode 100644
index 0000000..0f3587c
--- /dev/null
+++ b/desafio-react-e-typescript/src/components/Footer/Footer.module.scss
@@ -0,0 +1,323 @@
+.footer-container-top {
+ width: 100%;
+ height: 240px;
+ border-top: 1px solid black;
+ display: flex;
+ justify-content: center;
+ padding: 50px 16px 50px 16px;
+
+ @media screen and (min-width: 2500px) {
+ height: 297px;
+ }
+
+ @media screen and (max-width: 1024px) {
+ display: none;
+ }
+
+ .footer-container-institucional,
+ .footer-container-duvidas,
+ .footer-container-fale-conosco {
+ width: 100%;
+ max-width: 155px;
+ height: 125px;
+ margin-right: 122px;
+
+ a {
+ text-decoration: none;
+ }
+
+ @media screen and (min-width: 2500px) {
+ max-width: 315px;
+ height: 197px;
+ margin-right: 293px;
+ }
+
+ h4 {
+ font-family: "Roboto", sans-serif;
+ font-weight: 400;
+ font-size: 12px;
+ line-height: 14px;
+ text-transform: capitalize;
+ color: #303030;
+ margin: 12px 0px;
+
+ @media screen and (min-width: 2500px) {
+ font-size: 24px;
+ line-height: 28px;
+ }
+ }
+ .footer-fale-conosco-atendimento,
+ .footer-fale-conosco-atendimento-on {
+ font-weight: 500;
+ }
+ }
+
+ h3 {
+ font-family: "Roboto", sans-serif;
+ font-weight: 500;
+ font-size: 14px;
+ line-height: 16px;
+ text-transform: uppercase;
+ color: #303030;
+ margin: 0px 0px 12px 0px;
+
+ @media screen and (min-width: 2500px) {
+ font-size: 28px;
+ line-height: 33px;
+ }
+ }
+
+ .footer-institucional-revendedor,
+ .footer-duvidas-duvidasfreq,
+ .footer-fale-conosco-num1,
+ .footer-fale-conosco-num2 {
+ text-decoration: underline;
+ }
+
+ .footer-socials-container {
+ width: 100%;
+ max-width: 215px;
+ height: 63px;
+ margin-right: 50px;
+
+ @media screen and (min-width: 2500px) {
+ max-width: 390px;
+ height: 116px;
+ }
+
+ button {
+ width: 35px;
+ height: 35px;
+ background-color: transparent;
+ border: none;
+ padding: unset;
+ margin-right: 10px;
+ cursor: pointer;
+
+ @media screen and (min-width: 2500px) {
+ width: 70px;
+ height: 70px;
+ }
+
+ img {
+ @media screen and (min-width: 2500px) {
+ width: 70px;
+ height: 70px;
+ }
+ }
+
+ @media screen and (max-width: 1024px) {
+ border: none;
+ }
+ }
+
+ button:last-of-type {
+ margin: unset;
+ }
+
+ a {
+ text-decoration: none;
+
+ h4 {
+ font-family: "Roboto", sans-serif;
+ font-weight: 400;
+ font-size: 14px;
+ line-height: 16px;
+ color: #303030;
+ text-transform: lowercase;
+ margin-bottom: 0;
+
+ @media screen and (min-width: 2500px) {
+ font-size: 28px;
+ line-height: 33px;
+ }
+ }
+ }
+ }
+
+ .whatsapp-container {
+ display: flex;
+ flex-direction: column;
+ position: fixed;
+ height: 73px;
+ padding-top: 40px;
+ top: 85%;
+ right: 1%;
+
+ @media screen and (min-width: 2500px) {
+ height: 137px;
+ }
+
+ button {
+ background: transparent;
+ border: none;
+ }
+
+ img {
+ width: 100%;
+ max-width: 34px;
+ height: 34px;
+
+ @media screen and (min-width: 2500px) {
+ max-width: 66px;
+ height: 66px;
+ }
+ }
+ }
+}
+
+.footer-bottom {
+ background: #000000;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ padding: 20px 100px;
+ height: 64px;
+
+ @media screen and (min-width: 2500px) {
+ height: 96px;
+ }
+
+ @media screen and (max-width: 1024px) {
+ flex-direction: column;
+ align-items: flex-start;
+ padding: 15px 16px;
+ height: 134px;
+ }
+
+ p {
+ font-family: "Roboto", sans-serif;
+ font-size: 10px;
+ line-height: 12px;
+ text-transform: capitalize;
+ color: #ffffff;
+ margin: 0;
+
+ @media screen and (min-width: 2500px) {
+ font-size: 20px;
+ line-height: 23px;
+ }
+ }
+
+ .first-text {
+ width: 22%;
+ min-width: 234px;
+
+ @media screen and (max-width: 1024px) {
+ display: flex;
+ order: 1;
+ margin: 15px 0;
+ width: 22%;
+ min-width: 234px;
+ }
+ }
+
+ .cards {
+ display: flex;
+ align-items: center;
+
+ .icons {
+ width: 36px;
+ height: 20px;
+ margin-right: 12px;
+
+ @media screen and (min-width: 2500px) {
+ width: 70px;
+ height: 40px;
+ }
+
+ @media screen and (max-width: 428px) {
+ width: 30px;
+ height: 17px;
+ }
+ }
+
+ .divisor {
+ border: 1px solid #c4c4c4;
+ height: 24px;
+ width: 1px;
+ }
+
+ .icon-vtex {
+ width: 55px;
+ height: 34px;
+ margin-left: 12px;
+
+ @media screen and (min-width: 2500px) {
+ width: 106px;
+ height: 66px;
+ }
+
+ @media screen and (max-width: 428px) {
+ max-width: 45px;
+ height: 28px;
+ }
+ }
+ }
+
+ .powered {
+ display: flex;
+ align-items: center;
+
+ @media screen and (min-width: 2500px) {
+ width: 100%;
+ max-width: 404px;
+ }
+
+ @media screen and (max-width: 1024px) {
+ order: 2;
+ }
+
+ .vtexP {
+ width: 45px;
+ height: 16px;
+ margin: 0 13px;
+
+ @media screen and (min-width: 2500px) {
+ width: 84px;
+ height: 30px;
+ }
+ }
+
+ .m3 {
+ width: 28.66px;
+ height: 15.65px;
+ margin-left: 13px;
+
+ @media screen and (min-width: 2500px) {
+ width: 54.95px;
+ height: 30px;
+ }
+ }
+ }
+
+ .wrapper {
+ display: flex;
+ flex-direction: column;
+ }
+
+ .whatsapp-container {
+ display: flex;
+ flex-direction: column;
+ position: fixed;
+ height: 73px;
+ padding-top: 40px;
+ top: 85%;
+ right: 1%;
+
+ @media screen and (min-width: 2500px) {
+ display: none;
+ }
+
+ button {
+ background: transparent;
+ border: none;
+ }
+
+ img {
+ width: 100%;
+ max-width: 34px;
+ height: 34px;
+ }
+ }
+}
diff --git a/desafio-react-e-typescript/src/components/Footer/Footer.tsx b/desafio-react-e-typescript/src/components/Footer/Footer.tsx
new file mode 100644
index 0000000..0e55425
--- /dev/null
+++ b/desafio-react-e-typescript/src/components/Footer/Footer.tsx
@@ -0,0 +1,226 @@
+import React, { useState, useEffect } from "react";
+
+import { Newsletter } from "../Newsletter/Newsletter";
+import { Accordion } from "../Footer/Accordion/Accordion";
+
+import styles from "./Footer.module.scss";
+
+import facebook from "../../assets/images/facebookicon.svg";
+import instagram from "../../assets/images/instagramicon.svg";
+import twitter from "../../assets/images/twittericon.svg";
+import youtube from "../../assets/images/youtubeicon.svg";
+import linkedin from "../../assets/images/linkedinicon.svg";
+import whatsapp from "../../assets/images/whatsappicon.svg";
+import gototop from "../../assets/images/gotopicon.svg";
+import mastercard from "../../assets/images/mastericon.svg";
+import visa from "../../assets/images/visaicon.svg";
+import diners from "../../assets/images/dinersicon.svg";
+import elo from "../../assets/images/eloicon.svg";
+import hiper from "../../assets/images/hipericon.svg";
+import pagseguro from "../../assets/images/pagseguroicon.svg";
+import boleto from "../../assets/images/boletoicon.svg";
+import vtex from "../../assets/images/vtexicon.svg";
+import vtexpowered from "../../assets/images/vtexpowered.svg";
+import m3developed from "../../assets/images/m3developed.svg";
+
+const Footer = () => {
+ const [visible, setVisible] = useState(false);
+ useEffect(() => {
+ const handleResize = () => {
+ if (window.pageYOffset > 100) {
+ setVisible(true);
+ } else {
+ setVisible(false);
+ }
+ };
+ window.addEventListener("scroll", handleResize);
+ return () => {
+ window.removeEventListener("scroll", handleResize);
+ };
+ }, []);
+ return (
+
+
+
+
+
+
+
+
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor
+
+
+
+
+
+
+
Powered by
+
+
Developed by
+
+
+
+
+
+
+
+
+
+ );
+};
+
+export { Footer };
diff --git a/desafio-react-e-typescript/src/components/Header/Header.tsx b/desafio-react-e-typescript/src/components/Header/Header.tsx
index 0044323..375be2a 100644
--- a/desafio-react-e-typescript/src/components/Header/Header.tsx
+++ b/desafio-react-e-typescript/src/components/Header/Header.tsx
@@ -2,7 +2,7 @@ import React from "react";
import logo from "../../assets/images/Logo-M3Academy 1.svg";
import cart from "../../assets/images/carticon.svg";
-import { MenuHamb } from "../MenuHamburguer/MenuHamb";
+import { MenuHamb } from "./MenuHamburguer/MenuHamb";
import styles from "./Header.module.scss";
diff --git a/desafio-react-e-typescript/src/components/MenuHamburguer/MenuHamb.module.scss b/desafio-react-e-typescript/src/components/Header/MenuHamburguer/MenuHamb.module.scss
similarity index 97%
rename from desafio-react-e-typescript/src/components/MenuHamburguer/MenuHamb.module.scss
rename to desafio-react-e-typescript/src/components/Header/MenuHamburguer/MenuHamb.module.scss
index 89b0825..1603b6f 100644
--- a/desafio-react-e-typescript/src/components/MenuHamburguer/MenuHamb.module.scss
+++ b/desafio-react-e-typescript/src/components/Header/MenuHamburguer/MenuHamb.module.scss
@@ -65,7 +65,7 @@
height: 18px;
right: 16px;
background-color: transparent;
- background-image: url(../../assets/images/searchicon.svg);
+ background-image: url(../../../assets/images/searchicon.svg);
background-repeat: no-repeat;
margin: 9px 16px 9px 16px;
cursor: pointer;
diff --git a/desafio-react-e-typescript/src/components/MenuHamburguer/MenuHamb.tsx b/desafio-react-e-typescript/src/components/Header/MenuHamburguer/MenuHamb.tsx
similarity index 90%
rename from desafio-react-e-typescript/src/components/MenuHamburguer/MenuHamb.tsx
rename to desafio-react-e-typescript/src/components/Header/MenuHamburguer/MenuHamb.tsx
index 9b047b4..f8e3acf 100644
--- a/desafio-react-e-typescript/src/components/MenuHamburguer/MenuHamb.tsx
+++ b/desafio-react-e-typescript/src/components/Header/MenuHamburguer/MenuHamb.tsx
@@ -1,8 +1,8 @@
import React, { useState } from "react";
-import menuhambicon from "../../assets/images/menuhambicon.svg";
-import logo from "../../assets/images/Logo-M3Academy 1.svg";
-import cart from "../../assets/images/carticon.svg";
-import close from "../../assets/images/closeicon.svg";
+import menuhambicon from "../../../assets/images/menuhambicon.svg";
+import logo from "../../../assets/images/Logo-M3Academy 1.svg";
+import cart from "../../../assets/images/carticon.svg";
+import close from "../../../assets/images/closeicon.svg";
import styles from "./MenuHamb.module.scss";
diff --git a/desafio-react-e-typescript/src/components/Newsletter/Newsletter.module.scss b/desafio-react-e-typescript/src/components/Newsletter/Newsletter.module.scss
new file mode 100644
index 0000000..c6df49a
--- /dev/null
+++ b/desafio-react-e-typescript/src/components/Newsletter/Newsletter.module.scss
@@ -0,0 +1,118 @@
+.newsletter-container {
+ width: 100%;
+ height: 104px;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ border-top: 1px solid black;
+ padding: 16px 0px;
+
+ @media screen and (min-width: 2500px) {
+ height: 141px;
+ }
+
+ @media screen and (max-width: 1024px) {
+ padding: 16px 16px;
+ height: 182px;
+ }
+
+ .newsletter-wrapper {
+ width: 100%;
+ max-width: 475px;
+
+ @media screen and (min-width: 2500px) {
+ max-width: 922px;
+ }
+
+ @media screen and (max-width: 1024px) {
+ max-width: unset;
+ }
+
+ h3 {
+ font-family: "Roboto", sans-serif;
+ font-weight: 500;
+ font-size: 18px;
+ line-height: 21px;
+ letter-spacing: 0.05em;
+ font-variant: small-caps;
+ color: #303030;
+ margin: unset;
+ margin-bottom: 8px;
+ text-transform: lowercase;
+
+ @media screen and (min-width: 2500px) {
+ font-size: 36px;
+ line-height: 42px;
+ }
+
+ @media screen and (max-width: 1024px) {
+ font-size: 14px;
+ line-height: 16px;
+ }
+ }
+ .newsletter-container-input {
+ @media screen and (min-width: 2500px) {
+ display: flex;
+ }
+ input {
+ width: 100%;
+ max-width: 340px;
+ height: 42px;
+ margin-right: 8px;
+ padding: 13px 16px;
+ border: 1px solid #e5e5e5;
+ border-radius: 4px;
+ font-family: "Roboto", sans-serif;
+ font-size: 14px;
+ line-height: 16px;
+
+ @media screen and (min-width: 2500px) {
+ max-width: 668px;
+ height: 59px;
+ font-size: 28px;
+ line-height: 33px;
+ }
+
+ @media screen and (max-width: 1024px) {
+ display: flex;
+ flex-direction: column;
+ gap: 16px;
+ height: 50px;
+ max-width: unset;
+ }
+ }
+
+ button {
+ width: 100%;
+ max-width: 126px;
+ height: 42px;
+ background: #000000;
+ box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
+ border: none;
+ border-radius: 4px;
+ font-family: "Roboto", sans-serif;
+ font-weight: 700;
+ font-size: 12px;
+ line-height: 14px;
+ text-align: center;
+ letter-spacing: 0.05em;
+ text-transform: uppercase;
+ color: #ffffff;
+ cursor: pointer;
+
+ @media screen and (min-width: 2500px) {
+ max-width: 246px;
+ height: 59px;
+ font-size: 24px;
+ line-height: 28px;
+ }
+
+ @media screen and (max-width: 1024px) {
+ height: 50px;
+ max-width: unset;
+ margin-top: 16px;
+ }
+ }
+ }
+ }
+}
diff --git a/desafio-react-e-typescript/src/components/Newsletter/Newsletter.tsx b/desafio-react-e-typescript/src/components/Newsletter/Newsletter.tsx
new file mode 100644
index 0000000..50249b3
--- /dev/null
+++ b/desafio-react-e-typescript/src/components/Newsletter/Newsletter.tsx
@@ -0,0 +1,23 @@
+import React from "react";
+
+import styles from "./Newsletter.module.scss";
+
+const Newsletter = () => {
+ return (
+
+
+
Assine Nossa Newsletter
+
+
+
+
+
+
+ );
+};
+
+export { Newsletter };
diff --git a/desafio-react-e-typescript/src/pages/Home.tsx b/desafio-react-e-typescript/src/pages/Home.tsx
index 82e25dd..70bc1c5 100644
--- a/desafio-react-e-typescript/src/pages/Home.tsx
+++ b/desafio-react-e-typescript/src/pages/Home.tsx
@@ -1,11 +1,13 @@
import React from "react";
import { Header } from "../components/Header/Header";
+import { Footer } from "../components/Footer/Footer";
const Home = () => {
return (
+
);
};