development #1

Merged
andreamatsunaga merged 19 commits from development into main 2022-10-14 01:04:23 +00:00
24 changed files with 677 additions and 0 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.vscode

154
index.html Normal file
View File

@ -0,0 +1,154 @@
<!DOCTYPE html>
<html lang="pt-BR">
<head>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Desafio M3 Academy</title>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap" rel="stylesheet">
<link rel="stylesheet" href="./src/styles/main.css">
</head>
<body>
<header class="page-header">
<a href="/">
<img class="header-logo" src="./src/assets/svg/m3-logo.svg" alt="Logo da M3"/>
</a>
</header>
<main>
<div>
<img class="main-banner main-banner-desktop" src="./src/assets/img/main-banner-desktop.png" alt="Banner Principal Desktop"/>
<img class="main-banner main-banner-mobile" src="./src/assets/img/main-banner-mobile.png" alt="Banner Principal Mobile"/>
</div>
<section class="top-section">
<div class="top-section-text">
<h2 class="top-section-subtitle">Lorem ipsum</h2>
<h1 class="top-section-title">dolor sit amet</h1>
<p class="top-section-description">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras euismod enim non dui fringilla interdum. Curabitur ut tortor sed lacus egestas vulputate vel sit amet velit. Nulla suscipit magna dui.
</p>
</div>
<img class="top-section-image" src="./src/assets/img/top-section-image.png" alt="Imagem Central da Seção Principal" />
<div class="top-section-cards">
<div class="top-card">
<img class="top-card-image top-card-image-01" src="./src/assets/img/top-card-image-01.png" alt="Imagem do Primeiro Card da Seção Principal"/>
<p class="top-card-description">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras euismod enim non dui fringilla interdum.
</p>
</div>
<div class="top-card">
<img class="top-card-image" src="./src/assets/img/top-card-image-02.png" alt="Imagem do Segundo Card da Seção Principal"/>
<p class="top-card-description">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras euismod enim non dui fringilla interdum.
</p>
</div>
<div class="top-card">
<img class="top-card-image" src="./src/assets/img/top-card-image-03.png" alt="Imagem do Terceiro Card da Seção Principal"/>
<p class="top-card-description">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras euismod enim non dui fringilla interdum.
</p>
</div>
</div>
</section>
<div class="image-grid-container">
<div class="image-grid">
<img class="grid-image-desktop grid-image-desktop-01" src="./src/assets/img/grid-image-desktop-01.png" alt="Primeira Imagem do Grid de Imagens"/>
<img class="grid-image-desktop grid-image-desktop-02" src="./src/assets/img/grid-image-desktop-02.png" alt="Segunda Imagem do Grid de Imagens"/>
<img class="grid-image-desktop grid-image-desktop-03" src="./src/assets/img/grid-image-desktop-03.png" alt="Terceira Imagem do Grid de Imagens"/>
<img class="grid-image-mobile grid-image-mobile-01" src="./src/assets/img/grid-image-mobile-01.png" alt="Primeira Imagem do Grid de Imagens"/>
<img class="grid-image-mobile grid-image-mobile-02" src="./src/assets/img/grid-image-mobile-02.png" alt="Segunda Imagem do Grid de Imagens"/>
<img class="grid-image-mobile grid-image-mobile-03" src="./src/assets/img/grid-image-mobile-03.png" alt="Terceira Imagem do Grid de Imagens"/>
</div>
</div>
<section class="lower-section">
<div class="lower-section-cards">
<div class="lower-card">
<img class="lower-card-image lower-card-image-01" src="./src/assets/img/lower-card-image-01.png" alt="Imagem do Primeiro Card da Seção Inferior"/>
<p class="lower-card-description">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras euismod enim non dui fringilla interdum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras euismod enim non dui fringilla interdum.
</p>
</div>
<div class="lower-card">
<img class="lower-card-image" src="./src/assets/img/top-card-image-03.png" alt="Imagem do Segundo Card da Seção Inferior"/>
<p class="lower-card-description">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras euismod enim non dui fringilla interdum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras euismod enim non dui fringilla interdum.
</p>
</div>
<div class="lower-card">
<img class="lower-card-image" src="./src/assets/img/lower-card-image-03.png" alt="Imagem do Terceiro Card da Seção Inferior"/>
<p class="lower-card-description">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras euismod enim non dui fringilla interdum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras euismod enim non dui fringilla interdum.
</p>
</div>
<div class="lower-card">
<img class="lower-card-image" src="./src/assets/img/lower-card-image-04.png" alt="Imagem do Quarto Card da Seção Inferior"/>
<p class="lower-card-description">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras euismod enim non dui fringilla interdum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras euismod enim non dui fringilla interdum.
</p>
</div>
</div>
<div class="lower-section-text">
<h2 class="lower-section-subtitle">Lorem ipsum dolor sit amet</h2>
<p class="lower-section-description">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras vulputate sapien non libero faucibus interdum. In eget tincidunt ipsum. Quisque a tellus at lectus blandit tempor. Ut tristique auctor mi eget hendrerit. Curabitur venenatis felis vitae sagittis venenatis. Donec finibus turpis vitae lectus interdum rutrum vitae sed augue.
</p>
</div>
<img class="lower-section-image lower-section-image-desktop" src="./src/assets/img/lower-section-image-desktop.png" alt="Imagem Principal da Seção Inferior" />
<img class="lower-section-image lower-section-image-mobile" src="./src/assets/img/lower-section-image-mobile.png" alt="Imagem Principal da Seção Inferior" />
</section>
<footer class="page-footer">
<ul class="footer-icons">
<li class="footer-icon">
<a href="https://www.instagram.com/m3.ecommerce/" target="_blank">
<img src="./src/assets/img/instagram-icon.png" alt="Ícone do Instagram" />
</a>
</li>
<li class="footer-icon">
<a href="https://www.facebook.com/digitalm3" target="_blank">
<img src="./src/assets/img/facebook-icon.png" alt="Ícone do Facebook" />
</a>
</li>
<li>
<a href="https://www.youtube.com/channel/UCW4o86gZG_ceA8CmHltXeXA" target="_blank">
<img src="./src/assets/img/youtube-icon.png" alt="Ícone do Youtube" />
</a>
</li>
</ul>
<p class="footer-text">
Copyright © 2020 - Loja Comércio Eletrônico <span>CNPJ: 000.000.000/0001-00</span>
</p>
</footer>
</main>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 297 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 237 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 214 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 318 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 171 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 493 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 360 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 247 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 338 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 943 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 348 B

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 19 KiB

513
src/styles/main.css Normal file
View File

@ -0,0 +1,513 @@
/* ----- RESET ----- */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
/* ----- VARIÁVEIS PADRÃO ----- */
body {
font-family: 'Inter', sans-serif;
color: #000000;
}
/* ----- HEADER ----- */
.page-header {
display: flex;
justify-content: center;
background: #000000;
padding: 28px 0;
}
.header-logo {
display: block;
}
/* ----- MAIN BANNER ----- */
.main-banner {
display: block;
width: 100%;
}
/* ----- TOP SECTION ----- */
.top-section {
display: flex;
flex-direction: column;
align-items: center;
padding: 74px 0 80px;
}
.top-section-text {
margin-bottom: 74px;
display: flex;
flex-direction: column;
align-items: center;
}
.top-section-subtitle {
text-transform: uppercase;
font-size: 2rem;
font-weight: 400;
}
.top-section-title {
margin-bottom: 28px;
text-transform: uppercase;
font-size: 3rem;
font-weight: 500;
}
.top-section-description {
max-width: 54%;
line-height: 1.5rem;
}
.top-section-image {
max-width: 17%;
margin-bottom: 180px;
display: block;
}
.top-section-cards {
display: flex;
justify-content: center;
gap: 22px;
}
.top-card {
max-width: 18%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 36px 26px 26px;
background: #FFFFFF;
box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.23);
}
.top-card-image {
display: block;
margin-bottom: 30px;
}
.top-card-image-01 {
padding: 10px 0;
}
.top-card-description {
line-height: 1.5rem;
text-align: center;
}
/* ----- IMAGE GRID ----- */
.image-grid-container {
display: flex;
justify-content: center;
background: #E0E0E0;
}
.image-grid {
width: 92%;
display: flex;
justify-content: center;
gap: 40px;
position: relative;
top: 62px;
}
.grid-image-desktop {
max-width: 30%;
}
.grid-image-desktop,
.grid-image-mobile {
display: block;
}
/* ----- LOWER SECTION ----- */
.lower-section {
display: grid;
grid-template-columns: repeat(1, auto);
grid-template-areas:
"cards"
"text"
"image";
}
.lower-section-cards {
margin: 192px 0 108px;
grid-area: cards;
display: flex;
justify-content: center;
gap: 16px;
}
.lower-card {
max-width: 22.5%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: space-between;
padding: 35px 0 64px;
background: #FFFFFF;
box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.15);
}
.lower-card-image {
max-width: 24%;
margin-bottom: 16px;
display: block;
}
.lower-card-description {
padding: 0 32px;
line-height: 1.5rem;
text-align: center;
}
.lower-section-text {
margin-bottom: 50px;
grid-area: text;
display: flex;
flex-direction: column;
align-items: center;
}
.lower-section-subtitle {
font-size: 2rem;
font-weight: 600;
text-align: center;
}
.lower-section-description {
max-width: 28%;
line-height: 1.5rem;
text-align: center;
}
.lower-section-image-desktop {
max-width: 70%;
grid-area: image;
display: block;
margin: 0 auto 116px;;
}
.lower-section-image-mobile {
max-width: 100%;
display: block;
margin: 0 auto;
}
/* ----- FOOTER ----- */
.page-footer {
display: flex;
flex-direction: column;
align-items: center;
padding: 38px 0;
background: #000000;
}
.footer-icons {
display: flex;
gap: 22px;
list-style: none;
margin-bottom: 16px;
}
.footer-text {
text-align: center;
text-transform: uppercase;
line-height: 0.75rem;
font-size: 0.625rem;
color: #BDBDBD;
}
/* ---------- RESPONSIVIDADE ---------- */
/* ----- TELAS EXTRA GRANDE (XL) ----- */
@media screen and (min-width: 2501px) {
/* ----- (XL) Font-size padrão ----- */
p {
font-size: 2rem;
}
/* ----- (XL) Header ----- */
.page-header {
padding: 100px 0;
}
.header-logo {
transform: scale(2);
}
/* ----- (XL) Top Section ----- */
.top-section {
padding: 148px 0 424px;
}
.top-section-text {
margin-bottom: 306px;
}
.top-section-subtitle {
font-size: 4rem;
}
.top-section-title {
margin-bottom: 56px;
font-size: 6rem;
}
.top-section-description {
line-height: 3rem;
font-size: 2rem;
}
.top-section-image {
margin-bottom: 518px;
transform: scale(2);
}
.top-section-cards {
gap: 44px;
}
.top-card {
padding: 114px 104px 94px;
}
.top-card-image {
margin-bottom: 102px;
transform: scale(2);
}
.top-card-image-01 {
padding: 20px 0;
}
.top-card-description {
line-height: 3rem;
}
/* ----- (XL) Image Grid ----- */
.image-grid-container {
padding: 382px 0 136px;
}
.image-grid {
gap: 18%;
}
.grid-image-desktop {
max-width: 15%;
transform: scale(2);
}
/* ----- (XL) Lower Section ----- */
.lower-section-cards {
margin: 714px 0 216px;
}
.lower-card {
gap: 32px;
padding: 122px 0 128px;
}
.lower-card-image {
margin-bottom: 84px;
transform: scale(2);
}
.lower-card-description {
padding: 0 64px;
line-height: 3rem;
}
.lower-section-text {
margin-bottom: 238px;
}
.lower-section-subtitle {
font-size: 4rem;
}
.lower-section-description {
line-height: 3rem;
}
.lower-section-image-desktop {
margin: 0 auto 370px;;
transform: scale(2);
}
/* ----- (XL) Footer ----- */
.page-footer {
padding: 80px 0;
}
.footer-icons {
gap: 44px;
margin-bottom: 56px;
transform: scale(2);
}
.footer-text {
line-height: 1.5rem;
font-size: 1.25rem;
}
}
/* ----- LAPTOP E DESKTOP ----- */
@media screen and (min-width: 821px) {
.main-banner-mobile,
.grid-image-mobile,
.lower-section-image-mobile {
display: none;
}
}
/* ----- SMARTPHONE E TABLET (S) ----- */
@media screen and (max-width: 820px) {
.main-banner-desktop,
.grid-image-desktop,
.lower-section-image-desktop {
display: none;
}
/* ----- (S) Top Section ----- */
.top-section-text {
max-width: 86%;
margin-bottom: 64px;
}
.top-section-subtitle {
line-height: 1.5rem;
font-size: 1.25rem;
}
.top-section-title {
line-height: 2.125rem;
font-size: 1.75rem;
}
.top-section-description {
max-width: 100%;
text-align: center;
}
.top-section-image {
max-width: 58%;
margin-bottom: 90px;
}
.top-section-cards {
max-width: 84%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 24px;
}
.top-card {
max-width: 100%;
}
/* ----- (S) Image Grid ----- */
.image-grid {
display: grid;
grid-template-columns: repeat(2, auto);
grid-template-areas:
"image1 image2"
"image3 image3";
column-gap: 14px;
row-gap: 24px;
top: 32px;
}
.grid-image-mobile {
max-width: 100%;
}
.grid-image-mobile-01 {
grid-area: image1;
}
.grid-image-mobile-02 {
grid-area: image2;
}
.grid-image-mobile-03 {
grid-area: image3;
}
/* ----- (S) Lower Section ----- */
.lower-section {
display: grid;
grid-template-columns: repeat(1, auto);
grid-template-areas:
"cards"
"image"
"text";
}
.lower-section-cards {
margin: 112px 0 98px;
grid-area: cards;
display: flex;
flex-direction: column;
align-items: center;
}
.lower-card {
max-width: 88%;
}
.lower-card-image {
max-width: 28%;
}
.lower-card-description {
font-size: 0.875rem;
}
.lower-section-text {
margin-bottom: 88px;
}
.lower-section-subtitle {
margin-bottom: 8px;
font-size: 24px;
}
.lower-section-description {
max-width: 84%;
}
.lower-section-image-mobile {
grid-area: image;
margin-bottom: 50px;
}
/* ----- (S) Footer ----- */
.page-footer {
padding: 32px 0;
}
.footer-text {
max-width: 64%;
}
}
/* ----- TELA EXTRA PEQUENA ----- */
@media screen and (max-width: 320px) {
.top-section-text {
width: 100%;
}
.footer-text {
display: flex;
flex-direction: column;
}
}