diff --git a/checkout/src/arquivos/js/components/Footer.js b/checkout/src/arquivos/js/components/Footer.js
index ddbfee7..2f38895 100644
--- a/checkout/src/arquivos/js/components/Footer.js
+++ b/checkout/src/arquivos/js/components/Footer.js
@@ -7,34 +7,205 @@ export default class Footer {
async init() {
await this.selectors();
- // this.onUpdate();
+
+ /*if (window.location.hash === "#/cart") {
+ this.onUpdate();
+ }*/
+
+ this.requestAPI();
+ this.prateleiraItem = await waitElement(".prateleira__ul");
+ this.events();
+ this.onUpdate();
+ //await this.addCarrossel();
+ this.paymentsIconsHTML();
+ this.vtexPciIconHTML();
+ this.developedByLogoHTML();
}
async selectors() {
- //Para verificar se o carrinho está vazio e remover a prateleira de produtos:
- // vocês devem olhar a doc fornecida no Desafio para aprender a usar o waitElement
this.checkoutVazio = await waitElement(".empty-cart-content");
+ this.payments = await waitElement(".footerCheckout__payments");
+ this.vtexPCI = await waitElement(".footerCheckout__vtexpci");
+ this.developedBy = await waitElement(".footerCheckout__developedBy");
+ this.cartTitle = await waitElement("#cart-title");
+
+ this.prateleira = await waitElement(".footerCheckout__prateleira", {
+ timeout: 5000,
+ interval: 1,
+ });
+ }
+
+ paymentsIconsHTML() {
+ if (this.payments) {
+ this.payments.innerHTML = `
+
+ `;
+ }
+ }
+
+ vtexPciIconHTML() {
+ if (this.vtexPCI) {
+ this.vtexPCI.innerHTML = `
+
+ `;
+ }
+ }
+
+ developedByLogoHTML() {
+ if (this.developedBy) {
+ this.developedBy.innerHTML = `
+
+
+ Powered By
+
+
+
+
+
+
+ Developed By
+
+
+
+ `;
+ }
+ }
+
+ hashCgange(e) {
+ if (e.newURL !== "https://m3academy.myvtex.com/checkout/#/cart") {
+ this.prateleira.classList.add("desativado");
+ }else {
+ this.prateleira.classList.remove("desativado");
+ }
+ }
+
+ events() {
+ window.addEventListener("hashchange", this.hashCgange.bind(this));
}
onUpdate() {
- //Função qeu fará a verificação se o carrinho está vazio para remover a prateleira de produtos:
- // vocês devem olhar a doc fornecida no Desafio para aprender a usar a MutationObserver
- // sempre que o carrinho estiver vazio o elemento chcekoutVazio fica display: none e isso pode ser usado como atributo para a MutationObserver
let target = this.checkoutVazio;
let config = { childList: true, attributes: true };
let observer = new MutationObserver((mutations) => {
- mutations.forEach(function (mutation) {
- console.log(mutation.type);
- });
- });
+ mutations.map((mutation) => {
- observer.observe(target, config);
+ const status = mutation.target.attributes.style.nodeValue;
+
+ if (status == "display:none;") {
+ this.requestAPI();
+ } else if (status == "display:block;") {
+ this.removePrateleira();
+ }
+
+ });
+
+ observer.observe(target, config);
+ });
}
+
+ requestAPI() {
+ this.prateleira.innerHTML = `
+ Você também pode gostar:
+
+ `;
+
+ const api =
+ "https://m3academy.myvtex.com/api/catalog_system/pub/products/search/?fq=productClusterIds:319";
+ const products = document.querySelector(".prateleira__ul");
+
+ fetch(api)
+ .then((response) => {
+ return response.json();
+ })
+
+ .then((data) => {
+ data.forEach((item) => {
+ const imgProduct = item.items[0].images[0].imageUrl;
+ const nameProduct = item.productName;
+ const linkProduct = item.link;
+
+ products.innerHTML += `
+
+
+
+
+
${nameProduct}
+
+
+ ${item.items.map((name) => `- ${name.name}
`).join("")}
+
+
+
+ Ver Produto
+
+
+
+ `;
+ });
+ })
+
+ .then(() => {
+ this.addCarrossel();
+ });
+ }
+
+ removePrateleira() {
+ this.requestAPI.innerHTML = "";
+ }
+
async addCarrossel() {
- const elemento = await waitElement("#my-element");
- $(elemento).slick({
+ const prateleiraItem = await waitElement("#prateleira__ul");
+
+ $(prateleiraItem).slick({
slidesToShow: 4,
slidesToScroll: 1,
+ infinite: false,
+ arrows: true,
+ responsive: [
+ {
+ breakpoint: 1170,
+ settings: {
+ slidesToShow: 3,
+ slidesToScroll: 1,
+ infinite: false,
+ arrows: true,
+ }
+ },
+ {
+ breakpoint: 925,
+ settings: {
+ slidesToShow: 2,
+ slidesToScroll: 1,
+ infinite: false,
+ arrows: true,
+ }
+ },
+ {
+ breakpoint: 635,
+ settings: {
+ slidesToShow: 1,
+ slidesToScroll: 1,
+ infinite: false,
+ arrows: true,
+ }
+ }
+ ]
});
}
}
diff --git a/checkout/src/arquivos/js/components/Header.js b/checkout/src/arquivos/js/components/Header.js
index 6744524..c111f2d 100644
--- a/checkout/src/arquivos/js/components/Header.js
+++ b/checkout/src/arquivos/js/components/Header.js
@@ -8,14 +8,150 @@ export default class Header {
async init() {
await this.selectors();
- console.log(this.item);
+ this.progressBarHTML();
+ await this.progressBarChange();
}
async selectors() {
- this.item = await waitElement("#my-element", {
- //#my-element pode ser a class ou o id do elemento html qeu vocÊ quer pegar
- timeout: 5000, // vai esperar 5 segundos antes de rejeitar a promise
- interval: 1000, // vai verificar a cada 1 segundo se o elemento existe
- });
+ this.progressBar = await waitElement("#progressBar");
+ }
+
+ progressBarHTML() {
+ if (this.progressBar && window.innerWidth > 1024) {
+ this.progressBar.innerHTML = `
+
+ `;
+ } else if (this.progressBar && window.innerWidth <= 1024) {
+ this.progressBar.innerHTML = "";
+ }
+ }
+
+ async progressBarChange() {
+ if (this.progressBar && window.innerWidth > 1024) {
+ const progressBarList = document.querySelectorAll("#progressBar ul li");
+
+ progressBarList.forEach((li) => {
+ const progressBarCircle1 = li.children[0].children[0].children["progress-bar-circle-1"];
+ const progressBarCircle2 = li.children[0].children[0].children["progress-bar-circle-2"];
+ const progressBarCircle3 = li.children[0].children[0].children["progress-bar-circle-3"];
+
+ if (window.location.href === "https://m3academy.myvtex.com/checkout/#/cart") {
+
+ if (progressBarCircle1) {
+ progressBarCircle1.classList.add("active");
+ }
+
+ if (progressBarCircle2) {
+ progressBarCircle2.classList.remove("active");
+ }
+
+ if (progressBarCircle3) {
+ progressBarCircle3.classList.remove("active");
+ }
+
+ } else if (window.location.href === "https://m3academy.myvtex.com/checkout/#/email" || window.location.href === "https://m3academy.myvtex.com/checkout/#/profile" || window.location.href === "https://m3academy.myvtex.com/checkout/#/shipping") {
+
+ if (progressBarCircle1) {
+ progressBarCircle1.classList.remove("active");
+ }
+
+ if (progressBarCircle3) {
+ progressBarCircle3.classList.remove("active");
+ }
+
+ if (progressBarCircle2) {
+ progressBarCircle2.classList.add("active");
+ }
+
+ } else if (window.location.href === "https://m3academy.myvtex.com/checkout/#/payment") {
+
+ if (progressBarCircle1) {
+ progressBarCircle1.classList.remove("active");
+ }
+
+ if (progressBarCircle2) {
+ progressBarCircle2.classList.remove("active");
+ }
+
+ if (progressBarCircle3) {
+ progressBarCircle3.classList.add("active");
+ }
+ }
+
+ window.addEventListener("hashchange", () => {
+ if (window.location.hash == "#/cart") {
+
+ if (progressBarCircle1) {
+ progressBarCircle1.classList.add("active");
+ }
+
+ if (progressBarCircle2) {
+ progressBarCircle2.classList.remove("active");
+ }
+
+ if (progressBarCircle3) {
+ progressBarCircle3.classList.remove("active");
+ }
+
+ } else if (window.location.hash == "#/email" || window.location.hash == "#/profile" || window.location.hash == "#/shipping") {
+
+ if (progressBarCircle1) {
+ progressBarCircle1.classList.remove("active");
+ }
+
+ if (progressBarCircle3) {
+ progressBarCircle3.classList.remove("active");
+ }
+
+ if (progressBarCircle2) {
+ progressBarCircle2.classList.add("active");
+ }
+
+ } else if (window.location.hash == "#/payment") {
+
+ if (progressBarCircle1) {
+ progressBarCircle1.classList.remove("active");
+ }
+
+ if (progressBarCircle2) {
+ progressBarCircle2.classList.remove("active");
+ }
+
+ if (progressBarCircle3) {
+ progressBarCircle3.classList.add("active");
+ }
+ }
+ });
+ });
+ }
}
}
diff --git a/checkout/src/arquivos/sass/checkout.scss b/checkout/src/arquivos/sass/checkout.scss
index 771070c..c533b61 100644
--- a/checkout/src/arquivos/sass/checkout.scss
+++ b/checkout/src/arquivos/sass/checkout.scss
@@ -3,3 +3,4 @@
@import "./partials/header";
@import "./partials/footer";
@import "./checkout/checkout.scss";
+@import "./partials/prateleira";
diff --git a/checkout/src/arquivos/sass/checkout/_checkout-autenticacao.scss b/checkout/src/arquivos/sass/checkout/_checkout-autenticacao.scss
index 92f0375..42af891 100644
--- a/checkout/src/arquivos/sass/checkout/_checkout-autenticacao.scss
+++ b/checkout/src/arquivos/sass/checkout/_checkout-autenticacao.scss
@@ -1,13 +1,29 @@
+
+
.checkout-container {
.client-pre-email {
- border-color: $color-gray4;
+ border-color: $color-black2;
font-family: $font-family;
- padding-top: 8px;
+ padding-top: 14px;
+
+ .client-pre-email-h label {
+ margin-top: 0;
+ }
.link-cart {
a {
- color: $color-black;
- font-size: 14px;
+ color: $color-black2;
+ font-family: $font-family-secundary;
+ font-style: normal;
+ font-weight: normal;
+ font-size: 14px;
+ line-height: 16px;
+ text-transform: uppercase;
+
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 33px;
+ }
&:hover {
color: lighen($color-black, 10);
@@ -20,68 +36,151 @@
display: flex;
align-items: center;
justify-content: center;
+ margin-top: 65px;
h3 {
margin-bottom: 16px;
+ width: 825px;
- span {
- color: #303030;
- font-size: 24px;
- }
+ @include mq(xg, min) {
+ width: 1631px;
+ }
- small {
- color: $color-gray4;
- }
+ span,
+ small {
+ font-family: $font-family-secundary;
+ font-style: normal;
+ font-weight: normal;
+ font-size: 20px;
+ line-height: 23px;
+ text-transform: uppercase;
+ color: $color-black2;
+ margin-bottom: 21px;
+
+ @include mq(xg, min) {
+ font-size: 40px;
+ line-height: 47px;
+ margin-bottom: 23px;
+ }
+ }
}
}
.client-email {
- margin: 0 0 16px;
+ margin: 0 0 24px 0;
+ width: 580px;
+
+ @include mq(xg, min) {
+ width: 990px;
+ }
input {
box-shadow: none;
- color: $color-black;
+ color: $color-black2;
font-family: $font-family;
- padding: 0 16px;
- border: 2px solid $color-gray3;
+ padding: 15px 14px;
+ border: 1px solid $color-black2;
box-sizing: border-box;
border-radius: 5px;
+ width: 443px;
+ height: 50px;
+ font-style: normal;
+ font-weight: normal;
+ font-size: 12px;
+ line-height: 16px;
- @media (max-width: 490px) {
- width: auto;
- }
+ @include mq(xg, min) {
+ width: 765px;
+ height: 50px;
+ font-size: 24px;
+ line-height: 33px;
+ }
}
button {
- background-color: $color-black;
- border-radius: 5px;
+ background-color: $color-blue2;
+ border-radius: 0px 8px 8px 0px;
border: none;
font-family: $font-family;
- height: 54px;
- right: 0;
+ color: $color-black2;
+ font-style: normal;
+ font-weight: 700;
+ font-size: 14px;
+ line-height: 19px;
+ letter-spacing: 0.05em;
+ text-transform: uppercase;
+ height: 52px;
+ width: 126px;
+ right: 8px;
top: 0;
+ outline: none;
+ padding: 12px 14px;
+ position: relative;
+ cursor: pointer;
+
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 30px;
+ width: 219px;
+ padding: 12px 17px;
+ }
@media (max-width: 490px) {
height: 48px;
margin: 0;
position: absolute;
}
+
+ &:hover {
+ background-color: $color-blue3;
+ }
+
+ &:active {
+ background-color: $color-blue4;
+ }
}
span.help.error {
- color: red;
+ color: $color-red;
+ font-style: normal;
+ font-weight: 700;
+ font-size: 12px;
+ line-height: 16px;
+
+ @include mq(xg, min) {
+ font-size: 24px;
+ line-height: 33px;
+ }
}
}
.emailInfo {
padding: 16px;
background-color: $color-white;
- border: 1px solid $color-gray4;
- border-radius: 0;
+ border: 1px solid $color-black2;
+ border-radius: 5px;
+ width: 400px;
+ height: 150px;
+ margin-bottom: 92px;
+
+ @include mq(xg, min) {
+ width: 776px;
+ height: 238px;
+ }
h3 {
- color: #303030;
+ color: $color-black2 !important;
+ font-family: $font-family;
margin: 0 0 8px 0;
+ font-style: normal;
+ font-weight: 700;
+ font-size: 12px;
+ line-height: 16px;
+
+ @include mq(xg, min) {
+ font-size: 24px;
+ line-height: 33px;
+ }
}
ul {
@@ -89,13 +188,27 @@
li {
span {
- color: $color-black;
+ color: $color-black2 !important;
+ font-family: $font-family;
+ font-style: normal;
+ font-weight: 700;
+ font-size: 12px;
+ line-height: 16px;
+
+ @include mq(xg, min) {
+ font-size: 24px;
+ line-height: 33px;
+ }
}
i::before {
- color: $color-black;
+ color: $color-blue2;
font-size: 1rem;
opacity: 1;
+
+ @include mq(xg, min) {
+ font-size: 2rem !important;
+ }
}
}
}
@@ -104,6 +217,10 @@
color: $color-black;
font-size: 6rem;
opacity: 0.5;
+
+ @include mq(xg, min) {
+ font-size: 11rem !important;
+ }
}
}
}
@@ -113,18 +230,44 @@
.client-profile-data {
.accordion-group {
border-radius: 0;
- border: 1px solid $color-gray4;
+ border: 1px solid $color-gray3;
font-family: $font-family;
padding: 16px;
+ border-radius: 8px;
+ box-shadow: none;
.accordion-heading {
- span {
- color: #303030;
- margin-bottom: 8px;
- padding: 0;
+ .accordion-toggle {
+ font-family: $font-family;
+ font-style: normal;
+ font-weight: 400;
+ font-size: 16px;
+ line-height: 19px;
+ color: $color-black;
+ padding: 0
+ }
+ .accordion-toggle-active {
+
+ span {
+ font-size: 0;
+ &::after {
+ content: "Identificação";
+ font-family: $font-family-secundary;
+ font-style: normal;
+ font-weight: 400;
+ font-size: 16px;
+ line-height: 19px;
+ color: $color-black;
+ margin-top: 24px;
+ padding: 0;
+ }
+ }
+ }
+ span {
i::before {
fill: #303030;
+ display: none;
}
}
@@ -147,6 +290,7 @@
.client-notice {
color: $color-black;
+ display: none;
}
p {
@@ -163,7 +307,7 @@
}
.help.error {
- color: red;
+ color: $color-red;
}
}
@@ -182,18 +326,33 @@
button.submit {
border: none;
- border-radius: 5px;
- background: $color-black;
- margin-top: 8px;
+ border-radius: 8px;
+ background: $color-blue2;
+ margin-top: 44px;
outline: none;
transition: all 0.2s linear;
+ width: 100%;
+ height: 42px;
+ padding: 12px 74px;
+ font-family: $font-family;
+ font-style: normal;
+ font-weight: 700;
+ font-size: 14px;
+ line-height: 19px;
+ letter-spacing: 0.05em;
+ text-transform: uppercase;
+ white-space: nowrap;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ cursor: pointer;
&:hover {
- background: lighten($color-black, 5);
+ background: $color-blue3;
}
&:active {
- background: darken($color-black, 5);
+ background: $color-blue4;
}
}
@@ -274,7 +433,6 @@
border-color: #303030;
color: #303030;
}
-
.vtex-omnishipping-1-x-deliveryChannelsToggle {
background-color: #d8c8ac;
border: 1px solid #d8c8ac;
@@ -282,8 +440,42 @@
.vtex-omnishipping-1-x-deliveryOptionActive {
text-shadow: 1.3px 1px lighten($color-black, 50);
+ color: #000;
+ font-style: normal;
+ font-weight: 400;
+ font-size: 14px;
+ line-height: 19px;
+ text-transform: uppercase;
}
}
}
}
+ .shipping-method-toggle-delivery {
+ background-color: white !important;
+ border: 1px solid $color-black !important;
+ }
+
+ .vtex-omnishipping-1-x-deliveryOptionInactive {
+ width: 50%;
+ color: #c4c4c4;
+ font-style: normal;
+ font-weight: 400;
+ font-size: 14px;
+ line-height: 19px;
+ text-transform: uppercase;
+ }
+
+ /*.shipping-data,
+ .payment-data {
+
+ .accordion-heading {
+ .accordion-toggle {
+ &::after {
+ content: url("https://agenciamagma.vteximg.com.br/arquivos/lapisM3Academy.png");
+ cursor: pointer;
+ }
+ }
+ }
+
+ }*/
}
diff --git a/checkout/src/arquivos/sass/checkout/_checkout-carrinho.scss b/checkout/src/arquivos/sass/checkout/_checkout-carrinho.scss
index 195f487..fb24649 100644
--- a/checkout/src/arquivos/sass/checkout/_checkout-carrinho.scss
+++ b/checkout/src/arquivos/sass/checkout/_checkout-carrinho.scss
@@ -4,6 +4,10 @@
}
}
+.onda-v1 .mb6 {
+ margin-bottom: 0;
+}
+
.cart-template {
font-family: $font-family;
@include mq(md, max) {
@@ -13,10 +17,15 @@
display: none;
}
.cart {
- border: 3px solid $color-gray3;
+ border: 1px solid $color-gray3;
box-sizing: border-box;
border-radius: 5px;
padding: 16px;
+ margin-bottom: 48px;
+
+ @include mq(xg, min) {
+ padding: 16px 31px;
+ }
@include mq(md, max) {
margin: 0px 0 25px 0;
@@ -34,9 +43,12 @@
h2 {
background: $color-white;
border: none;
- color: #303030;
- font-size: 14px;
- font-weight: 500;
+ color: $color-black;
+ font-family: $font-family-secundary;
+ font-style: normal;
+ font-weight: 400;
+ font-size: 16px;
+ line-height: 19px;
}
.item-unavailable {
@@ -85,12 +97,21 @@
}
#payment-data-submit {
- background: $color-black;
+ background: $color-green2;
border: none;
- border-radius: 0;
+ border-radius: 8px;
color: $color-white;
outline: none;
transition: all 0.2s linear;
+ font-family: $font-family;
+ font-style: normal;
+ font-weight: 700;
+ font-size: 14px;
+ line-height: 19px;
+ text-align: center;
+ letter-spacing: 0.05em;
+ text-transform: uppercase;
+
&:hover {
background: lighten($color-black, 5);
}
@@ -111,12 +132,19 @@
}
th {
+ font-family: $font-family-secundary;
color: $color-black;
- padding: 0 0 16px;
+ padding: 0 0 17px;
font-style: normal;
- font-weight: bold;
+ font-weight: normal;
font-size: 14px;
line-height: 16px;
+ text-align: left;
+
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 33px;
+ }
@include mq(md, max) {
&.quantity-price,
@@ -124,43 +152,89 @@
display: none;
}
}
+
+ .product-price {
+ font-size: 0;
+ }
+ }
+
+ th.shipping-date {
+ font-size: 0;
+
+ &::after {
+ content: "Frete";
+ font-family: $font-family-secundary;
+ color: $color-black;
+ font-weight: normal;
+ font-style: normal;
+ font-size: 14px;
+ line-height: 16px;
+ padding: 0 0 17px;
+ vertical-align: bottom;
+
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 33px;
+ }
+ }
}
.product-image {
- height: auto;
+ height: 60px;
padding: 0;
width: 60px;
- @include mq(sm, max) {
- width: 72px;
+ @include mq(xg, min) {
+ width: 146px;
+ height: 146px;
}
img {
height: 60px;
- max-width: 100%;
- width: auto;
+ max-width: 60px;
+ width: 60px;
+ object-fit: cover;
- @include mq(sm, max) {
- height: 72px;
- width: auto;
+ @include mq(xg, min) {
+ width: 146px;
+ max-width: 146px;
+ height: 146px;
}
}
}
.product-name {
- padding-right: 0;
+ padding: 0;
+ font-family: $font-family-secundary;
+ font-style: normal;
+ font-weight: 400;
+ font-size: 12px;
+ line-height: 14px;
+ color: $color-black2;
+
+ @include mq(xg, min) {
+ width: 600px;
+ }
@include mq(lg, max) {
width: 250px;
}
a {
- color: $color-blue;
+ font-family: $font-family-secundary;
+ color: $color-black2;
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 14px;
transition: ease-in 0.22s all;
+ margin-left: 16px;
+
+ @include mq(xg, min) {
+ font-size: 24px;
+ line-height: 28px;
+ margin-left: 31px;
+ }
&:hover {
color: darken($color-blue, 10);
@@ -179,9 +253,17 @@
}
td.shipping-date {
- color: $color-gray2;
+ color: $color-gray7;
+ font-family: $font-family-secundary;
+ font-weight: normal;
font-size: 12px;
line-height: 14px;
+ text-align: left;
+
+ @include mq(xg, min) {
+ font-size: 24px;
+ line-height: 28px;
+ }
@include mq(md, max) {
display: none;
@@ -190,9 +272,12 @@
.product-price {
min-width: 100px;
+ text-align: left;
+
@include mq(md, max) {
min-width: 78px;
}
+
@media (max-width: 490px) {
position: absolute;
bottom: 0;
@@ -200,10 +285,19 @@
}
span.list-price {
- color: $color-gray2;
+ color: $color-gray7;
+ font-family: $font-family-secundary;
font-size: 12px;
line-height: 14px;
+ font-weight: normal;
+ font-style: normal;
text-decoration-line: line-through;
+
+ @include mq(xg, min) {
+ font-size: 24px;
+ line-height: 28px;
+ }
+
@include mq(sm, max) {
font-size: 12px;
line-height: 14px;
@@ -212,21 +306,52 @@
.old-product-price-label {
text-transform: lowercase;
}
+
+ .muted {
+ color: $color-gray7;
+ }
+ }
+ }
+
+ th.product-price {
+ font-size: 0;
+
+ &::after {
+ content: "Unidade";
+ font-family: $font-family-secundary;
+ color: $color-black;
+ font-weight: normal;
+ font-style: normal;
+ font-size: 14px;
+ line-height: 16px;
+ padding: 0 0 17px;
+ vertical-align: bottom;
+
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 33px;
+ }
}
}
td.quantity {
align-items: center;
border: 1px solid $color-gray3;
- border-radius: 0;
+ border-radius: 8px;
box-sizing: border-box;
display: flex;
justify-content: center;
- margin: 6px auto 0;
- max-height: 38px;
- max-width: 118px;
- padding: 0;
+ margin: 13px 0;
+ max-height: 34px;
+ max-width: 99px;
+ padding: 9px 11px;
width: max-content !important;
+ text-align: left;
+
+ @include mq(xg, min) {
+ margin: 48px 0px;
+ padding: 21px 62px;
+ }
@media (max-width: 490px) {
margin-left: 84px !important;
@@ -234,16 +359,27 @@
input {
background-color: $color-white;
- border: 1px solid $color-gray3;
+ border: none;
border-radius: 0;
border-width: 0 1px;
display: block;
max-height: 38px;
margin: 0 !important;
padding: 8px 0;
- width: 38px;
- color: $color-gray2;
+ width: 40px;
+ color: $color-black2;
box-shadow: none;
+ font-family: $font-family-secundary;
+ font-weight: normal;
+ font-size: 14px;
+ line-height: 16px;
+
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 33px;
+ max-height: 50px;
+ width: 52px;
+ }
@include mq(lg, max) {
width: 24px !important;
@@ -253,24 +389,15 @@
.icon-plus-sign,
.icon-minus-sign {
&::before {
- color: $color-black;
display: block;
font-weight: 500;
- padding: 1px 12px;
- }
- }
+ font-size: 17px;
+ color: $color-blue2;
+ cursor: pointer;
- .icon-minus-sign {
- &:before {
- content: "-";
- font-size: 16px;
- }
- }
-
- .icon-plus-sign {
- &:before {
- content: "+";
- font-size: 14px;
+ @include mq(xg, min) {
+ font-size: 32px;
+ }
}
}
@@ -292,19 +419,41 @@
.quantity-price,
.best-price {
+ text-align: left;
+
+ @include mq(xg, min) {
+ width: 200px;
+ }
.icon-question-sign {
display: none;
}
span {
+ font-family: $font-family-secundary;
font-style: normal;
font-weight: normal;
font-size: 14px;
line-height: 16px;
color: $color-black;
+
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 33px;
+ }
}
}
.quantity-price {
+ .total-selling-price {
+ font-family: $font-family;
+ font-weight: 700;
+ line-height: 19px;
+
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 38px;
+ }
+ }
+
@include mq(md, max) {
display: none;
}
@@ -315,9 +464,13 @@
top: 0;
}
.icon::before {
- color: $color-gray4;
+ color: $color-gray6;
font-size: 15px;
+ @include mq(xg, min) {
+ font-size: 26px;
+ }
+
@include mq(md, max) {
font-size: 18px;
}
@@ -351,12 +504,18 @@
}
.srp-main-title {
- margin: 32px 0 12px;
+ margin: 0 0 11px 0;
font-style: normal;
font-weight: normal;
+ font-family: $font-family;
font-size: 24px;
- line-height: 28px;
- color: $color-gray2;
+ line-height: 33px;
+ color: $color-black2;
+
+ @include mq(xg, min) {
+ font-size: 48px;
+ line-height: 65px;
+ }
@include mq(md, max) {
margin-top: 0;
@@ -365,23 +524,44 @@
.srp-description {
color: $color-gray2;
- font-size: 12px;
+ font-style: normal;
+ font-weight: normal;
+ font-family: $font-family;
+ font-size: 14px;
line-height: 18px;
- margin: 0 0 12px;
+ margin: 0 0 10px;
+ max-width: 18rem;
+
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 36px;
+ width: 552px;
+ max-width: none;
+ margin-bottom: 11px;
+ }
}
button.shp-open-options {
- background-color: $color-gray5;
+ background-color: $color-gray8;
border: none;
- border-radius: 5px;
- color: $color-gray2;
- font-size: 16px;
+ border-radius: 8px;
+ color: $color-black2;
+ font-family: $font-family;
+ font-size: 14px;
letter-spacing: 0.05em;
line-height: 19px;
- font-weight: 500;
+ font-weight: normal;
outline: none;
- padding: 12px 40px;
+ padding: 12px 41px;
transition: all 0.2s linear;
+ margin: 0;
+ text-transform: uppercase;
+ cursor: pointer;
+
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 38px;
+ }
&:hover {
background-color: lighten($color-gray5, 5);
@@ -405,55 +585,93 @@
}
.srp-pickup-my-location__button {
- background-color: $color-black;
+ background-color: $color-blue2;
border: none;
- border-radius: 5px;
+ border-radius: 8px;
color: $color-white;
outline: none;
- width: 100%;
-
+ width: 280px;
+ height: 42px;
+ font-family: $font-family;
font-style: normal;
- font-weight: 500;
+ font-weight: 700;
font-size: 14px;
- line-height: 16px;
+ line-height: 19px;
letter-spacing: 0.05em;
+ text-transform: uppercase;
+ padding: 11px 35px;
+
+ @include mq(xg, min) {
+ width: 543px;
+ height: 60px;
+ font-size: 28px;
+ line-height: 38px;
+ padding: 11px 63px;
+ }
&:hover {
- background-color: lighten($color-black, 5);
+ background-color: $color-blue3;
}
&:active {
- background-color: darken($color-black, 5);
+ background-color: $color-blue4;
}
}
}
.srp-toggle {
- margin: 0 0 34px;
+ margin: 0 0 20px;
&__wrapper {
background-color: $color-white;
border-radius: 100px;
width: 100%;
- font-family: $font-family;
- font-style: normal;
- font-weight: normal;
- font-size: 14px;
- line-height: 16px;
- text-transform: uppercase;
+
+ @include mq(xg, min) {
+ width: 543px;
+ height: 57px;
+ }
}
&__current {
- border: 1px solid $color-blue;
+ border: 1px solid $color-black2;
border-radius: 100px;
+
+ @include mq(xg, min) {
+ width: 271px;
+ height: 57px;
+ }
}
.blue {
- color: $color-blue;
+ color: $color-black2;
+ font-style: normal;
+ font-weight: 400;
+ font-size: 14px;
+ line-height: 19px;
+ text-transform: uppercase;
+ padding: 8px 40px;
+
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 38px;
+ }
}
label {
width: 50%;
+ color: $color-gray6;
+ font-style: normal;
+ font-weight: 400;
+ font-size: 14px;
+ line-height: 19px;
+ text-transform: uppercase;
+ padding: 8px 40px;
+
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 38px;
+ }
&:active {
background-color: #f0f0f0;
@@ -462,70 +680,148 @@
}
.srp-postal-code {
- .ship-postalCode {
+ display: flex;
+ flex-direction: row;
+
+
+ .ship-postalCode,
+ .ship-country {
label {
font-family: $font-family;
font-style: normal;
font-weight: normal;
font-size: 12px;
- line-height: 14px;
+ line-height: 16px;
+ color: $color-black2;
+ margin-bottom: 2px;
+
+ @include mq(xg, min) {
+ font-size: 24px;
+ line-height: 33px;
+ }
+ }
+
+ #ship-country {
+ border: 1px solid $color-gray6;
+ height: 36px;
+ width: 172px;
color: $color-black;
- margin-bottom: 12px;
+ font-size: 12px;
+ line-height: 14px;
+ padding-left: 15px;
+ outline: none;
+
+ @include mq(xg, min) {
+ width: 333px;
+ height: 55px;
+ font-size: 24px;
+ line-height: 28px;
+ }
}
input {
- border: 1px solid $color-gray3;
+ border: 1px solid $color-gray6;
+ background: $color-white;
border-radius: 5px;
box-shadow: none;
- color: $color-gray3;
- font-size: 12px;
- height: 36px;
- padding: 12px 8px;
width: 172px;
+ height: 36px;
+ color: $color-black;
+ font-family: $font-family-secundary;
+ font-size: 12px;
+ line-height: 14px;
+ padding: 11px 16px;
+ margin-bottom: 4px;
+
+ @include mq(xg, min) {
+ width: 333px;
+ height: 55px;
+ font-size: 24px;
+ line-height: 28px;
+ padding: 13px 16px;
+ margin-bottom: 5px;
+ }
}
& ~ button {
- background-color: $color-black;
- border: none;
- border-radius: 5px;
- color: $color-white;
- font-size: 12px;
+ background-color: $color-blue2;
+ width: 100px;
height: 36px;
- letter-spacing: 1px;
+ border: none;
+ border-radius: 8px;
+ color: $color-white;
+ font-family: $font-family;
+ font-weight: 700;
+ font-style: normal;
+ font-size: 14px;
+ line-height: 19px;
+ letter-spacing: 0.05em;
outline: none;
position: absolute;
- right: -150px;
- top: 36px;
transition: all 0.2s linear;
- width: 96px;
text-transform: uppercase;
+ padding: 8px 11px;
+ margin-left: 8px;
+ right: -150px;
+ top: 82px;
+ cursor: pointer;
+
+ @include mq(xg, min) {
+ width: 194px;
+ height: 55px;
+ font-size: 28px;
+ line-height: 38px;
+ padding: 8px 19px;
+ margin-left: 18px;
+ right: -410px;
+ top: 136px;
+ }
&:hover {
- background-color: lighten($color-black, 5);
+ background-color: $color-blue3;
}
&:active {
- background-color: darken($color-black, 5);
+ background-color: $color-blue4;
}
}
small a {
- font-family: $font-family;
- font-style: normal;
- font-weight: normal;
- font-size: 10px;
- line-height: 12px;
- color: $color-blue;
- margin-top: 7px;
+ font-size: 0;
+
+ &::after {
+ content: "Não sei meu código postal";
+ font-family: $font-family-secundary;
+ font-style: normal;
+ font-weight: normal;
+ font-size: 10px;
+ line-height: 12px;
+ color: $color-black2;
+ text-decoration-line: underline;
+ cursor: pointer;
+
+ @include mq(xg, min) {
+ font-size: 20px;
+ line-height: 23px;
+ white-space: nowrap;
+ }
+ }
+
}
span.help.error {
- color: red;
+ color: $color-red;
font-size: 12px;
position: absolute;
left: 0;
width: 100%;
- top: 17px;
+ top: -20px;
+
+ @include mq(xg, min) {
+ font-size: 20px;
+ white-space: nowrap;
+ top: -22px;
+ }
}
}
}
@@ -592,9 +888,16 @@
&-totalizers {
padding: 0;
- width: 346px;
+ margin: 0;
+ width: 362px;
+
+ @include mq(xg, min) {
+ width: 692px;
+ }
.coupon-data {
+ margin-bottom: 0 0 10px 0;
+
#cart-link-coupon-add {
text-decoration: none;
&:hover {
@@ -603,19 +906,20 @@
}
}
span {
- font-family: $font-family;
+ font-family: $font-family-secundary;
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 14px;
- color: $color-blue;
+ color: $color-black2;
text-decoration: none;
- }
- }
+ cursor: pointer;
- @include mq(md, max) {
- padding: 0 16px;
- width: 100%;
+ @include mq(xg, min) {
+ font-size: 24px;
+ line-height: 28px;
+ }
+ }
}
.coupon-column {
@@ -631,71 +935,90 @@
.coupon-label label {
margin-bottom: 12px;
- font-family: $font-family;
+ font-family: $font-family-secundary;
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 14px;
color: $color-gray2;
+ text-align: left;
cursor: none;
+
+ @include mq(xg, min) {
+ font-size: 24px;
+ line-height: 28px;
+ }
+
}
.coupon-fields {
- margin-bottom: 32px;
-
- @include mq(sm, max) {
- span {
- display: flex;
- flex-direction: row;
- justify-content: space-between;
- i {
- position: absolute;
- right: 91px;
- opacity: 1;
- }
- }
- }
+ margin-bottom: 54px;
+ display: flex;
input {
- border: 2px solid $color-gray3;
+ background-color: $color-white;
+ border: 2px solid $color-gray5;
border-radius: 5px;
box-shadow: none;
- color: $color-gray4;
+ color: $color-gray6;
+ font-family: $font-family-secundary;
+ font-style: normal;
+ font-weight: normal;
font-size: 12px;
- height: 34px;
- padding: 0 12px;
- max-width: 160px;
+ line-height: 14px;
+ height: 36px;
+ width: 204px;
+ padding: 10px 15px;
- @include mq(sm, max) {
- max-width: 100%;
- width: 100%;
+ @include mq(xg, min) {
+ font-size: 24px;
+ line-height: 28px;
+ padding: 13px 15px;
+ height: 55px;
+ width: 398px;
+ }
+
+ &::placeholder {
+ padding: 1px 1px;
}
}
button {
- background: $color-black;
+ background: $color-blue2;
border: none;
- border-radius: 5px;
- color: $color-white;
- font-size: 12px;
+ border-radius: 8px;
+ color: $color-black2;
+ font-family: $font-family;
+ font-style: normal;
+ font-weight: normal;
+ font-size: 14px;
+ line-height: 19px;
+ width: 133px;
height: 36px;
- letter-spacing: 1px;
- margin-left: 6px;
+ letter-spacing: 0.05em;
+ margin-left: 15px;
outline: none;
transition: all 0.2s linear;
- width: 94px;
text-transform: uppercase;
+ text-shadow: none;
+ padding: 8px 15px;
+ cursor: pointer;
- @include mq(md, max) {
- width: 138px;
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 38px;
+ margin-left: 30px;
+ width: 260px;
+ height: 55px;
+ padding: 8px 50px;
}
&:hover {
- background-color: lighten($color-black, 5);
+ background-color: $color-blue3;
}
&:active {
- background-color: darken($color-black, 5);
+ background-color: $color-blue4;
}
}
}
@@ -712,12 +1035,18 @@
&.info,
&.monetary {
+ font-family: $font-family-secundary;
font-style: normal;
font-weight: normal;
font-size: 14px;
line-height: 16px;
color: $color-black;
- padding: 12px 0;
+ padding: 10px 0;
+
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 33px;
+ }
}
&.info {
@@ -733,11 +1062,19 @@
tfoot {
td.info,
td.monetary {
+ font-family: $font-family;
font-style: normal;
- font-weight: normal;
+ font-weight: 700;
font-size: 18px;
- line-height: 21px;
+ line-height: 25px;
color: $color-black;
+ padding: 14px 0 17px 0;
+
+ @include mq(xg, min) {
+ font-size: 36px;
+ line-height: 49px;
+ width: 250px;
+ }
}
}
}
@@ -747,64 +1084,93 @@
.cart-links-bottom {
display: flex;
flex-direction: column;
- width: 343px;
+ width: 354px;
+ margin-bottom: 43px !important;
+ padding: 0;
+
+ @include mq(xg, min) {
+ margin-bottom: 44px !important;
+ width: 688px;
+ }
@include mq(md, max) {
padding: 0 16px;
width: calc(100% - 32px);
float: none;
- margin-bottom: 50px;
- }
-
- @include mq(md, min) {
- margin: 0;
- padding-bottom: 50px;
}
.link-choose-more-products-wrapper {
display: block;
text-align: center;
- margin-bottom: 16px;
+ margin-bottom: 14px;
+
+ @include mq(xg, min) {
+ margin-bottom: 13px;
+ }
@include mq(md, max) {
margin-bottom: 0px;
}
a {
- font-family: $font-family;
+ font-family: $font-family-secundary;
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 14px;
- color: $color-blue;
+ color: $color-black2;
+
+ @include mq(xg, min) {
+ font-size: 24px;
+ line-height: 28px;
+ }
}
}
+ .link-choose-more-products{
+ margin-right: 0;
+ }
+
.btn-place-order-wrapper {
a {
- background: $color-green;
+ background: $color-blue2;
border: none;
- border-radius: 5px;
+ border-radius: 8px;
display: block;
font-size: 0;
transition: ease-in 0.22s all;
- padding: 12px 19px;
+ padding: 12px 102px;
+ cursor: pointer;
+
+ @include mq(xg, min) {
+ padding: 12px 175px;
+ }
&:hover {
- background-color: darken($color-green, 5);
+ background: $color-blue3;
+ }
+
+ &:active {
+ background-color: $color-blue4;
}
&:after {
content: "finalizar compra";
font-family: $font-family;
- font-weight: 500;
- font-size: 13px;
+ font-weight: 700;
+ font-size: 14px;
+ line-height: 19px;
letter-spacing: 0.05em;
color: $color-white;
text-transform: uppercase;
vertical-align: middle;
- line-height: 19px;
text-shadow: none;
+ color: $color-black2;
+
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 38px;
+ }
}
}
}
diff --git a/checkout/src/arquivos/sass/checkout/_checkout-vazio.scss b/checkout/src/arquivos/sass/checkout/_checkout-vazio.scss
index 08f74e9..17c72e6 100644
--- a/checkout/src/arquivos/sass/checkout/_checkout-vazio.scss
+++ b/checkout/src/arquivos/sass/checkout/_checkout-vazio.scss
@@ -1,3 +1,7 @@
+.row-fluid .full-cart, .row-fluid .orderform-template {
+ margin-bottom: 0;
+}
+
.empty-cart {
font-family: $font-family;
&-content {
@@ -9,28 +13,86 @@
}
}
+ &-message {
+ display: none;
+ }
+
&-title {
- font-size: 20px;
+ font-family: $font-family;
+ font-weight: 700;
+ font-size: 18px;
+ line-height: 25px;
+ text-align: center;
+ text-transform: uppercase;
+ color: $color-black2;
+ margin-top: 170px;
+ margin-bottom: 0;
+
+ @include mq(xg, min) {
+ font-size: 48px;
+ line-height: 65px;
+ }
+
+ @include mq(xm, min) {
+ font-size: 24px;
+ line-height: 33px;
+ }
+
+ @include mq(xsp, max) {
+ font-size: 16px;
+ }
}
&-links {
.link-choose-products {
- background: $color-black;
- border: none;
- border-radius: 5px;
- transition: ease-in 0.22s all;
+ background: transparent;
+ border: 1px solid $color-black2;
+ border-radius: 0px;
outline: none;
- font-family: $font-family;
- font-style: normal;
- font-weight: 500;
- font-size: 14px;
- line-height: 16px;
- text-align: center;
- letter-spacing: 0.05em;
- color: $color-white;
- text-transform: uppercase;
+ transition: ease-in 0.22s all;
+ margin: 22px 0 262px 0;
+ padding: 16px 26px;
+ cursor: pointer;
+ font-size: 0;
- &:hover {
+ &::after {
+ content: "Continuar comprando";
+ font-family: $font-family-secundary;
+ font-style: normal;
+ font-weight: 400;
+ font-size: 14px;
+ line-height: 16px;
+ text-align: center;
+ letter-spacing: 0.05em;
+ color: $color-black2;
+ text-transform: uppercase;
+ vertical-align: top;
+ vertical-align: bottom;
+
+ @include mq(xg, min) {
+ font-size: 28px;
+ line-height: 33px;
+ }
+
+ @include mq(xsp, max) {
+ font-size: 12px;
+ }
+ }
+
+ @include mq(xg, min) {
+ padding: 16px 121px;
+ }
+
+ @include mq(xm, min) {
+ padding: 16px 65px;
+ margin: 32px 0 264px 0;
+ }
+
+ @include mq(xsp, max) {
+ padding: 16px 20px;
+ }
+
+ &:hover {
background: lighten($color-black, 5);
}
}
diff --git a/checkout/src/arquivos/sass/checkout/_checkout.scss b/checkout/src/arquivos/sass/checkout/_checkout.scss
index 5fb011f..97cb451 100644
--- a/checkout/src/arquivos/sass/checkout/_checkout.scss
+++ b/checkout/src/arquivos/sass/checkout/_checkout.scss
@@ -3,18 +3,22 @@
@import "./checkout-pagamento";
@import "./checkout-autenticacao";
+* {
+ box-sizing: border-box;
+}
+
html {
height: 100%;
min-height: 100%;
}
-footer .footerCheckout__wrapper {
- width: 94.9734%;
- margin: auto auto 0 auto;
+header {
+ width: 100%;
+ border-bottom: 1px solid $color-black2;
}
+
footer .footerCheckout__prateleira,
header {
- width: 79.53125%;
margin: 0 auto;
}
@@ -49,7 +53,15 @@ body {
}
.container-order-form,
.container-cart {
- width: 80%;
+ width: 96.875%;
+
+ @include mq(xm, min) {
+ width: 80%;
+ }
+
+ @include mq(xpp, max) {
+ width: 91.4666%;
+ }
}
}
@@ -68,18 +80,29 @@ body {
#cart-title,
#orderform-title {
- color: $color-gray2;
+ color: $color-black;
font-family: $font-family;
- font-weight: 500;
- font-size: 36px;
- line-height: 42px;
- margin: 40px 0 30px;
- letter-spacing: 0.1em;
+ font-weight: 700;
+ font-size: 24px;
+ line-height: 33px;
+ margin: 17px 0 17px;
+ letter-spacing: 0.05em;
text-transform: uppercase;
- @include mq(md, max) {
- margin-left: 30px;
+ @include mq(xg, min) {
+ font-size: 48px;
+ line-height: 65px;
+ margin-bottom: 18px;
}
+
+ @include mq(xm, min) {
+ margin: 17px 0 16px;
+ }
+}
+
+#orderform-title {
+ color: $color-black2;
+ margin-bottom: 17px;
}
.dropdown {
diff --git a/checkout/src/arquivos/sass/lib/_slick.scss b/checkout/src/arquivos/sass/lib/_slick.scss
index 74460fb..d995d4a 100644
--- a/checkout/src/arquivos/sass/lib/_slick.scss
+++ b/checkout/src/arquivos/sass/lib/_slick.scss
@@ -99,6 +99,12 @@
.slick-arrow {
font-size: 0;
position: absolute;
+ border: none;
+ top: 170px;
+
+ @include mq(xg, min) {
+ top: 280px;
+ }
}
.slick-prev {
background: url("https://agenciamagma.vteximg.com.br/arquivos/arrow-left-mini-M3Academy.svg")
@@ -107,8 +113,11 @@
left: 10px;
}
.slick-next {
+ background: url("https://agenciamagma.vteximg.com.br/arquivos/arrow-left-mini-M3Academy.svg")
+ no-repeat center center;
z-index: 4;
right: 10px;
+ transform: rotateY(180deg);
}
.slick-arrow.slick-hidden {
display: none;
diff --git a/checkout/src/arquivos/sass/partials/_footer.scss b/checkout/src/arquivos/sass/partials/_footer.scss
index c7c65c2..a29bff5 100644
--- a/checkout/src/arquivos/sass/partials/_footer.scss
+++ b/checkout/src/arquivos/sass/partials/_footer.scss
@@ -1,47 +1,124 @@
/* _footer.scss */
.footerCheckout {
- border-top: none;
- color: $color-gray2;
-
&__wrapper {
+ width: 100%;
+ border-top: 1px solid $color-black2;
align-items: center;
display: flex;
- justify-content: space-between;
+ padding: 22px 0;
+
+ @include mq(xg, min) {
+ padding: 30px 0;
+ }
+
+ @include mq(xm, min) {
+ padding: 16px 0;
+ }
+ }
+
+ .container {
+ width: 96.875%;
+ display: grid;
+ grid-template-columns: 1fr;
+ margin: auto auto 0 auto;
+
+ @include mq(xm, min) {
+ display: flex;
+ width: 94.9734%;
+ align-items: center;
+ justify-content: space-between;
+ }
}
&__address {
- color: $color-gray2;
+ color: $color-black;
font-family: $font-family;
font-style: normal;
font-weight: normal;
font-size: 10px;
- line-height: 12px;
+ line-height: 14px;
text-transform: capitalize;
- max-width: 40%;
+ grid-area: 2;
+ margin: 16px 0 16px 0;
+
+ @include mq(xg, min) {
+ font-size: 20px;
+ line-height: 27px;
+ }
+
+ @include mq(xm, min) {
+ margin-right: auto;
- @include mq(md, max) {
- margin-bottom: 24px;
- max-width: 100%;
}
}
&__stamps {
align-items: center;
display: flex;
- justify-self: center;
list-style: none;
+ margin: 0;
+ grid-area: 1;
+
+ @include mq(xm, min) {
+ justify-self: center;
+ }
- @include mq(md, max) {
- align-self: center;
- margin-bottom: 12px;
+ .payments-icons {
+ display: flex;
+ gap: 4px;
+
+ @include mq(xm, min) {
+ gap: 13px;
+ }
+
+ @include mq(xppp, max) {
+ gap: 1px;
+ }
+
+ &__img {
+ width: auto;
+ height: 20px;
+
+ @include mq(xg, min) {
+ height: 39px;
+ }
+
+ @include mq(xppp, max) {
+ height: 17px;
+ }
+ }
}
&__divider {
- background-color: $color-gray4;
+ background-color: $color-gray6;
display: inline-block;
height: 24px;
margin: 0 8px;
width: 1px;
+ margin: 0 10px 0 4px;
+
+ @include mq(xm, min) {
+ margin: 0 10px 0 13px;
+ }
+
+ @include mq(xppp, max) {
+ margin: 0 4px 0 1px;
+ }
+ }
+
+ .vtexpci-icon {
+ &__img {
+ width: auto;
+ height: 33px;
+
+ @include mq(xg, min) {
+ height: 64px;
+ }
+
+ @include mq(xppp, max) {
+ height: 29px;
+ }
+ }
}
}
@@ -50,25 +127,62 @@
display: flex;
list-style-type: none;
margin: 0;
+ grid: 3;
+
+ @include mq(xm, min) {
+ margin-left: auto;
+ }
li:last-child {
- margin-left: 16px;
+ margin-left: 10px;
}
a {
align-items: center;
- color: $color-gray2;
+ color: $color-black;
display: flex;
font-family: $font-family;
font-style: normal;
font-weight: normal;
- font-size: 10px;
+ font-size: 9px;
line-height: 12px;
text-decoration: none;
+ @include mq(xg, min) {
+ font-size: 18px;
+ line-height: 25px;
+ }
+
span {
- margin-right: 8px;
+ margin-right: 10px;
+ }
+ }
+
+ .vtex-logo {
+ &__img {
+ width: 44px;
+ height: auto;
+
+ @include mq(xg, min) {
+ width: 87px;
+ }
+ }
+ }
+
+ .m3-logo {
+ &__img {
+ width: 26px;
+ height: auto;
+
+ @include mq(xg, min) {
+ width: 55px;
+ }
}
}
}
+
+ .desativado {
+ display: none !important;
+ }
}
+
diff --git a/checkout/src/arquivos/sass/partials/_header.scss b/checkout/src/arquivos/sass/partials/_header.scss
index 8b44777..ae26ae2 100644
--- a/checkout/src/arquivos/sass/partials/_header.scss
+++ b/checkout/src/arquivos/sass/partials/_header.scss
@@ -1,22 +1,186 @@
/* _header.scss */
.headerCheckout {
.container {
- width: auto !important;
+ width: 96.875%;
+ padding: 16px 0 !important;
+
+ @include mq(xm, min) {
+ width: 79.53125%;
+ padding: 29px 0 !important;
+ }
+
+ @include mq(xp, max) {
+ width: 91.4666%;
+ }
+
+ #progressBar {
+ width: 440px;
+
+ @include mq(xg, min) {
+ width: 1081px;
+ }
+
+ ul {
+ list-style-type: none;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ margin: 0 !important;
+ }
+
+ li {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+ width: 100%;
+ }
+
+ li .container-li {
+ width: 100%;
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ position: relative;
+ }
+
+ li:first-child .container-li {
+ align-items: flex-start;
+ }
+
+ li:last-child .container-li {
+ align-items: flex-end;
+ }
+
+ li .progress-bar-center {
+ width: auto;
+ }
+
+ li .progress-bar-center .container-li {
+ align-items: center;
+ margin-left: 7px;
+ }
+
+ li .container-li div {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+ width: auto;
+ }
+
+ li .container-li div .progress-bar-text {
+ font-family: $font-family-secundary;
+ line-height: 14px;
+ font-size: 12px;
+ font-weight: 400;
+ color: $color-black2;
+ margin-bottom: 9px;
+
+ @include mq(xg, min) {
+ line-height: 28px;
+ font-size: 24px;
+ margin-bottom: 15px;
+ }
+ }
+
+ #progress-bar-circle-1,
+ #progress-bar-circle-2,
+ #progress-bar-circle-3 {
+ width: 12px;
+ height: 12px;
+ border: 1px solid $color-black2;
+ background-color: $color-white;
+ border-radius: 50%;
+ z-index: map-get($z-index, level2 );
+
+ @include mq(xg, min) {
+ width: 24px;
+ height: 24px;
+ }
+ }
+
+ #progress-bar-circle-1.active,
+ #progress-bar-circle-2.active,
+ #progress-bar-circle-3.active {
+ border: none;
+ background-color: $color-black2;
+ }
+
+ .progress-bar-line-1,
+ .progress-bar-line-2 {
+ position: absolute;
+ width: 176px;
+ height: 1px;
+ border-top: 1px solid $color-black2;
+ bottom: 5px;
+
+ @include mq(xg, min) {
+ width: 449px;
+ bottom: 10px;
+ }
+ }
+
+ .progress-bar-line-1 {
+ left: 25%;
+
+ @include mq(xg, min) {
+ left: 21.5%;
+ }
+ }
+
+ .progress-bar-line-2 {
+ right: 25%;
+
+ @include mq(xg, min) {
+ right: 21.5%;
+ }
+ }
+ }
}
+
&__wrapper {
- align-items: center;
display: flex;
+ align-items: center;
justify-content: space-between;
+
+ @include mq(xm, min) {
+ display: grid;
+ grid-template-columns: 2fr 1fr 2fr;
+ align-items: center;
+ }
}
&__logo {
+ display: block;
+ max-width: 155px;
+ width: 100%;
+
+ @include mq(xg, min) {
+ min-width: 382px;
+ }
+
+ @include mq(xpp, max) {
+ min-width: 45.2%;
+ }
+
img {
- height: 52px;
- width: auto;
+ width: 100%;
+ height: auto;
}
}
&__safeBuy {
+ display: flex;
+ align-items: center;
+ justify-content: flex-end;
+ gap: 8px;
+ min-width: 119px;
+
+ @include mq(xm, min) {
+ width: 100%;
+ }
+
span {
align-items: center;
display: flex;
@@ -25,12 +189,21 @@
font-style: normal;
font-weight: normal;
font-size: 12px;
- line-height: 14px;
- color: $color-gray;
+ line-height: 16px;
+ color: $color-black;
+
+ @include mq(xg, min) {
+ line-height: 33px;
+ font-size: 24px;
+ }
}
- i {
- margin-right: 8px;
+ img {
+ width: 12px;
+
+ @include mq(xg, min) {
+ width: 29px;
+ }
}
}
}
diff --git a/checkout/src/arquivos/sass/partials/_prateleira.scss b/checkout/src/arquivos/sass/partials/_prateleira.scss
index 13f8def..bb61ef7 100644
--- a/checkout/src/arquivos/sass/partials/_prateleira.scss
+++ b/checkout/src/arquivos/sass/partials/_prateleira.scss
@@ -1 +1,143 @@
/* _prateleira.scss */
+
+.footerCheckout__prateleira {
+ width: 79.375%;
+
+ @include mq(xg, min) {
+ width: 79.76%;
+ }
+
+ .prateleira {
+ &__title {
+ font-family: $font-family-secundary;
+ font-style: normal;
+ font-weight: 400;
+ font-size: 24px;
+ line-height: 38px;
+ color: $color-black2;
+ text-align: center;
+
+ @include mq(xg, min) {
+ font-size: 48px;
+ line-height: 76px;
+ }
+ }
+
+ &__ul {
+ display: flex;
+ justify-content: center;
+ margin: 0;
+ gap: 16px;
+
+ @include mq(xg, min) {
+ gap: 19px;
+ }
+ }
+
+ &__li {
+ width: 242px;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+
+ @include mq(xg, min) {
+ width: 485px;
+ }
+ }
+
+ &__image {
+ width: 242px;
+ height: auto;
+ margin-bottom: 20px;
+ margin-inline-start: 0px;
+ margin-inline-end: 0px;
+
+ @include mq(xg, min) {
+ width: 485px;
+ margin-bottom: 21px;
+ }
+ }
+
+ &__text {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+
+ h2 {
+ font-family: $font-family;
+ font-style: normal;
+ font-weight: 400;
+ font-size: 13px;
+ line-height: 18px;
+ color: $color-black2;
+ text-align: center;
+ margin: 0;
+
+ @include mq(xg, min) {
+ font-size: 26px;
+ line-height: 35px;
+ }
+ }
+
+ a {
+ background-color: $color-blue2;
+ border-radius: 8px;
+ font-family: $font-family;
+ font-style: normal;
+ font-weight: 700;
+ font-size: 13px;
+ line-height: 18px;
+ color: $color-white;
+ letter-spacing: 0.05em;
+ width: 242px;
+ height: 42px;
+ padding: 12px 72px;
+ text-align: center;
+ white-space: nowrap;
+ text-transform: uppercase;
+ cursor: pointer;
+ margin-bottom: 56px;
+
+ @include mq(xg, min) {
+ width: 485px;
+ height: 59px;
+ font-size: 26px;
+ line-height: 35px;
+ padding: 12px 0 12px 0;
+ }
+ }
+
+ ul {
+ display: flex;
+ width: fit-content;
+ gap: 10px;
+ margin: 20px 0 20px 0;
+
+ li {
+ background-color: $color-blue2;
+ border-radius: 8px;
+ display: flex;
+ align-items: center;
+ font-family: $font-family;
+ font-style: normal;
+ font-weight: 700;
+ font-size: 13px;
+ line-height: 18px;
+ color: $color-white;
+ letter-spacing: 0.05em;
+ padding: 5px;
+ text-align: center;
+ text-transform: uppercase;
+
+ @include mq(xg, min) {
+ height: 45px;
+ font-size: 26px;
+ line-height: 35px;
+ padding: 8px 5px;
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/checkout/src/arquivos/sass/utils/_variaveis.scss b/checkout/src/arquivos/sass/utils/_variaveis.scss
index f000abe..155876d 100644
--- a/checkout/src/arquivos/sass/utils/_variaveis.scss
+++ b/checkout/src/arquivos/sass/utils/_variaveis.scss
@@ -6,6 +6,7 @@ $font-family-secundary:"Tenor Sans", sans-serif;
/* Colors */
$color-black: #292929;
+$color-black2: #000000;
$color-white: #fff;
@@ -14,19 +15,34 @@ $color-gray2: #7d7d7d;
$color-gray3: #f0f0f0;
$color-gray4: #8d8d8d;
$color-gray5: #e5e5e5;
+$color-gray6: #C4C4C4;
+$color-gray7: #989898;
+$color-gray8: #EDEDED;
$color-blue: #4267b2;
+$color-blue2: #00C8FF; //button
+$color-blue3: #3fd4fd; //buttom hover
+$color-blue4: #11bae9; //buttom active
-$color-green: #4caf50;
+$color-green: #495e49;
+$color-green2: #298541;
+
+$color-red: #FF0000; //error
/* Grid breakpoints */
$grid-breakpoints: (
xs: 0,
- cstm: 400,
+ xsp: 325px,
+ xppp: 350px,
+ xpp: 376px,
+ cstm: 400px,
sm: 576px,
+ xp: 599px,
md: 768px,
lg: 992px,
- xl: 1200px
+ xm: 1025px,
+ xl: 1200px,
+ xg : 2500px
) !default;
$z-index: (