Spaces:
Running
Running
Upload 40 files
Browse files- .gitattributes +13 -0
- assets/css/styles.css +1198 -0
- assets/css/swiper-bundle.min.css +13 -0
- assets/img/QR.png +3 -0
- assets/img/favicon.png +0 -0
- assets/img/home-book-1.png +3 -0
- assets/img/home-book-2.png +3 -0
- assets/img/home-book-3.png +3 -0
- assets/img/home-book-4.png +3 -0
- assets/img/home-book-5.png +3 -0
- assets/img/home-book-6.png +3 -0
- assets/img/home-book-7.png +3 -0
- assets/img/join-bg.jpg +3 -0
- assets/img/testimonial-perfil-1.png +3 -0
- assets/img/testimonial-perfil-2.png +3 -0
- assets/img/testimonial-perfil-3.png +3 -0
- assets/img/testimonial-perfil-4.png +3 -0
- assets/js/main.js +419 -0
- assets/js/scrollreveal.min.js +12 -0
- assets/js/swiper-bundle.min.js +0 -0
- assets/scss/base/_base.scss +49 -0
- assets/scss/components/_breakpoints.scss +279 -0
- assets/scss/components/_button.scss +13 -0
- assets/scss/components/_discount.scss +29 -0
- assets/scss/components/_featured.scss +74 -0
- assets/scss/components/_footer.scss +59 -0
- assets/scss/components/_header.scss +87 -0
- assets/scss/components/_home.scss +37 -0
- assets/scss/components/_join.scss +41 -0
- assets/scss/components/_login.scss +76 -0
- assets/scss/components/_new.scss +43 -0
- assets/scss/components/_scroll.scss +39 -0
- assets/scss/components/_search.scss +45 -0
- assets/scss/components/_services.scss +20 -0
- assets/scss/components/_testimonial.scss +26 -0
- assets/scss/config/_variables.scss +50 -0
- assets/scss/layout/_layout.scss +25 -0
- assets/scss/styles.scss +18 -0
- assets/scss/theme/_theme.scss +43 -0
- index.html +1890 -19
- product_detail.html +462 -0
.gitattributes
CHANGED
|
@@ -33,3 +33,16 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
+
assets/img/home-book-1.png filter=lfs diff=lfs merge=lfs -text
|
| 37 |
+
assets/img/home-book-2.png filter=lfs diff=lfs merge=lfs -text
|
| 38 |
+
assets/img/home-book-3.png filter=lfs diff=lfs merge=lfs -text
|
| 39 |
+
assets/img/home-book-4.png filter=lfs diff=lfs merge=lfs -text
|
| 40 |
+
assets/img/home-book-5.png filter=lfs diff=lfs merge=lfs -text
|
| 41 |
+
assets/img/home-book-6.png filter=lfs diff=lfs merge=lfs -text
|
| 42 |
+
assets/img/home-book-7.png filter=lfs diff=lfs merge=lfs -text
|
| 43 |
+
assets/img/join-bg.jpg filter=lfs diff=lfs merge=lfs -text
|
| 44 |
+
assets/img/QR.png filter=lfs diff=lfs merge=lfs -text
|
| 45 |
+
assets/img/testimonial-perfil-1.png filter=lfs diff=lfs merge=lfs -text
|
| 46 |
+
assets/img/testimonial-perfil-2.png filter=lfs diff=lfs merge=lfs -text
|
| 47 |
+
assets/img/testimonial-perfil-3.png filter=lfs diff=lfs merge=lfs -text
|
| 48 |
+
assets/img/testimonial-perfil-4.png filter=lfs diff=lfs merge=lfs -text
|
assets/css/styles.css
ADDED
|
@@ -0,0 +1,1198 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== GOOGLE FONTS ===============*/
|
| 2 |
+
@import url("https://fonts.googleapis.com/css2?family=Montagu+Slab:wght@500&family=Montserrat:wght@400;500;600&display=swap");
|
| 3 |
+
|
| 4 |
+
/*=============== VARIABLES CSS ===============*/
|
| 5 |
+
:root {
|
| 6 |
+
--header-height: 3.5rem;
|
| 7 |
+
|
| 8 |
+
/*========== Colors ==========*/
|
| 9 |
+
/*Color mode HSL(hue, saturation, lightness)*/
|
| 10 |
+
--first-color: #5e0011;
|
| 11 |
+
--title-color: hsl(230, 70%, 16%);
|
| 12 |
+
--text-color: hsl(230, 16%, 45%);
|
| 13 |
+
--border-color: #a67c87;
|
| 14 |
+
--white-color: hsl(0, 0%, 100%);
|
| 15 |
+
--body-color: #f2dce0;
|
| 16 |
+
--container-color: #f6d7df;
|
| 17 |
+
|
| 18 |
+
/*========== Font and typography ==========*/
|
| 19 |
+
/*.5rem = 8px | 1rem = 16px ...*/
|
| 20 |
+
--body-font: "Montserrat", sans-serif;
|
| 21 |
+
--second-font: "Montagu Slab", serif;
|
| 22 |
+
--biggest-font-size: 2rem;
|
| 23 |
+
--h1-font-size: 1.5rem;
|
| 24 |
+
--h2-font-size: 1.25rem;
|
| 25 |
+
--h3-font-size: 1rem;
|
| 26 |
+
--normal-font-size: 0.938rem;
|
| 27 |
+
--small-font-size: 0.813rem;
|
| 28 |
+
--smaller-font-size: 0.75rem;
|
| 29 |
+
|
| 30 |
+
/*========== Font weight ==========*/
|
| 31 |
+
--font-regular: 400;
|
| 32 |
+
--font-medium: 500;
|
| 33 |
+
--font-semi-bold: 600;
|
| 34 |
+
|
| 35 |
+
/*========== z index ==========*/
|
| 36 |
+
--z-tooltip: 10;
|
| 37 |
+
--z-fixed: 100;
|
| 38 |
+
}
|
| 39 |
+
|
| 40 |
+
/*========== Responsive typography ==========*/
|
| 41 |
+
@media screen and (min-width: 1150px) {
|
| 42 |
+
:root {
|
| 43 |
+
--biggest-font-size: 3.5rem;
|
| 44 |
+
--h1-font-size: 2.25rem;
|
| 45 |
+
--h2-font-size: 1.5rem;
|
| 46 |
+
--h3-font-size: 1.25rem;
|
| 47 |
+
--normal-font-size: 1rem;
|
| 48 |
+
--small-font-size: 0.875rem;
|
| 49 |
+
--smaller-font-size: 0.813rem;
|
| 50 |
+
}
|
| 51 |
+
}
|
| 52 |
+
|
| 53 |
+
/*=============== BASE ===============*/
|
| 54 |
+
* {
|
| 55 |
+
box-sizing: border-box;
|
| 56 |
+
padding: 0;
|
| 57 |
+
margin: 0;
|
| 58 |
+
}
|
| 59 |
+
|
| 60 |
+
html {
|
| 61 |
+
scroll-behavior: smooth;
|
| 62 |
+
}
|
| 63 |
+
|
| 64 |
+
body,
|
| 65 |
+
input,
|
| 66 |
+
button {
|
| 67 |
+
font-family: var(--body-font);
|
| 68 |
+
font-size: var(--normal-font-size);
|
| 69 |
+
}
|
| 70 |
+
|
| 71 |
+
body {
|
| 72 |
+
background-color: var(--body-color);
|
| 73 |
+
color: var(--text-color);
|
| 74 |
+
transition: background-color 0.4s;
|
| 75 |
+
}
|
| 76 |
+
|
| 77 |
+
input,
|
| 78 |
+
button {
|
| 79 |
+
border: none;
|
| 80 |
+
outline: none;
|
| 81 |
+
}
|
| 82 |
+
|
| 83 |
+
h1,
|
| 84 |
+
h2,
|
| 85 |
+
h3,
|
| 86 |
+
h4 {
|
| 87 |
+
color: var(--title-color);
|
| 88 |
+
font-family: var(--second-font);
|
| 89 |
+
font-weight: var(--font-medium);
|
| 90 |
+
}
|
| 91 |
+
|
| 92 |
+
ul {
|
| 93 |
+
list-style: none;
|
| 94 |
+
}
|
| 95 |
+
|
| 96 |
+
a {
|
| 97 |
+
text-decoration: none;
|
| 98 |
+
}
|
| 99 |
+
|
| 100 |
+
img {
|
| 101 |
+
display: block;
|
| 102 |
+
max-width: 100%;
|
| 103 |
+
height: auto;
|
| 104 |
+
}
|
| 105 |
+
|
| 106 |
+
/*=============== THEME ===============*/
|
| 107 |
+
/*========== Variables Dark theme ==========*/
|
| 108 |
+
body.dark-theme {
|
| 109 |
+
--title-color: hsl(230, 48%, 85%);
|
| 110 |
+
--text-color: hsl(230, 16%, 70%);
|
| 111 |
+
--border-color: hsl(230, 12%, 18%);
|
| 112 |
+
--body-color: hsl(230, 12%, 8%);
|
| 113 |
+
--container-color: hsl(230, 12%, 12%);
|
| 114 |
+
}
|
| 115 |
+
|
| 116 |
+
/*==========
|
| 117 |
+
Color changes in some parts of
|
| 118 |
+
the website, in dark theme
|
| 119 |
+
==========*/
|
| 120 |
+
.dark-theme .shadow-header {
|
| 121 |
+
box-shadow: 0 2px 16px hsla(0, 0%, 0%, 0.4);
|
| 122 |
+
}
|
| 123 |
+
|
| 124 |
+
.dark-theme .nav__menu {
|
| 125 |
+
box-shadow: 0 -8px 32px hsla(0, 0%, 0%, 0.4);
|
| 126 |
+
}
|
| 127 |
+
|
| 128 |
+
.dark-theme .scrollup {
|
| 129 |
+
box-shadow: 0 2px 8px hsla(0, 0%, 0%, 0.4);
|
| 130 |
+
}
|
| 131 |
+
|
| 132 |
+
.dark-theme .search,
|
| 133 |
+
.dark-theme .login {
|
| 134 |
+
background-color: hsla(230, 12%, 8%, 0.6);
|
| 135 |
+
}
|
| 136 |
+
|
| 137 |
+
.dark-theme::-webkit-scrollbar {
|
| 138 |
+
background-color: hsl(230, 16%, 15%);
|
| 139 |
+
}
|
| 140 |
+
|
| 141 |
+
.dark-theme::-webkit-scrollbar-thumb {
|
| 142 |
+
background-color: hsl(230, 16%, 25%);
|
| 143 |
+
}
|
| 144 |
+
|
| 145 |
+
.dark-theme::-webkit-scrollbar-thumb:hover {
|
| 146 |
+
background-color: hsl(230, 16%, 35%);
|
| 147 |
+
}
|
| 148 |
+
|
| 149 |
+
/*=============== REUSABLE CSS CLASSES ===============*/
|
| 150 |
+
.container {
|
| 151 |
+
max-width: 1220px;
|
| 152 |
+
margin-inline: 1.5rem;
|
| 153 |
+
}
|
| 154 |
+
|
| 155 |
+
.grid {
|
| 156 |
+
display: grid;
|
| 157 |
+
gap: 1.5rem;
|
| 158 |
+
}
|
| 159 |
+
|
| 160 |
+
.section {
|
| 161 |
+
padding-block: 5rem 1rem;
|
| 162 |
+
}
|
| 163 |
+
|
| 164 |
+
.section__title {
|
| 165 |
+
text-align: center;
|
| 166 |
+
font-size: var(--h1-font-size);
|
| 167 |
+
font-family: var(--second-font);
|
| 168 |
+
margin-bottom: 2rem;
|
| 169 |
+
}
|
| 170 |
+
|
| 171 |
+
.main {
|
| 172 |
+
overflow: hidden; /* For animation ScrollReveal */
|
| 173 |
+
}
|
| 174 |
+
|
| 175 |
+
/*=============== HEADER & NAV ===============*/
|
| 176 |
+
.header {
|
| 177 |
+
position: fixed;
|
| 178 |
+
top: 0;
|
| 179 |
+
left: 0;
|
| 180 |
+
width: 100%;
|
| 181 |
+
background-color: var(--body-color);
|
| 182 |
+
z-index: var(--z-fixed);
|
| 183 |
+
transition: box-shadow 0.4s, background-color 0.4s;
|
| 184 |
+
}
|
| 185 |
+
|
| 186 |
+
.nav {
|
| 187 |
+
height: var(--header-height);
|
| 188 |
+
display: flex;
|
| 189 |
+
justify-content: space-between;
|
| 190 |
+
align-items: center;
|
| 191 |
+
}
|
| 192 |
+
|
| 193 |
+
.nav__logo {
|
| 194 |
+
display: inline-flex;
|
| 195 |
+
align-items: center;
|
| 196 |
+
column-gap: 0.5rem;
|
| 197 |
+
color: var(--first-color);
|
| 198 |
+
font-weight: var(--font-medium);
|
| 199 |
+
}
|
| 200 |
+
.nav__logo i {
|
| 201 |
+
font-size: 1.25rem;
|
| 202 |
+
}
|
| 203 |
+
|
| 204 |
+
/* Navigation for mobile devices */
|
| 205 |
+
@media screen and (max-width: 1150px) {
|
| 206 |
+
.nav__menu {
|
| 207 |
+
position: fixed;
|
| 208 |
+
bottom: 0;
|
| 209 |
+
left: 0;
|
| 210 |
+
right: 0;
|
| 211 |
+
width: 100%;
|
| 212 |
+
background-color: var(--container-color);
|
| 213 |
+
box-shadow: 0 -8px 32px hsla(0, 0%, 0%, 0.1);
|
| 214 |
+
padding: 1.25rem 4rem;
|
| 215 |
+
transition: background-color 0.4s;
|
| 216 |
+
}
|
| 217 |
+
}
|
| 218 |
+
|
| 219 |
+
.nav__list {
|
| 220 |
+
display: flex;
|
| 221 |
+
justify-content: space-between;
|
| 222 |
+
}
|
| 223 |
+
|
| 224 |
+
.nav__link {
|
| 225 |
+
color: var(--text-color);
|
| 226 |
+
transition: color 0.4s;
|
| 227 |
+
}
|
| 228 |
+
|
| 229 |
+
.nav__link span {
|
| 230 |
+
display: none;
|
| 231 |
+
}
|
| 232 |
+
|
| 233 |
+
.nav__link i {
|
| 234 |
+
font-size: 1.25rem;
|
| 235 |
+
}
|
| 236 |
+
|
| 237 |
+
.nav__link:hover {
|
| 238 |
+
color: var(--first-color);
|
| 239 |
+
}
|
| 240 |
+
|
| 241 |
+
.nav__actions {
|
| 242 |
+
display: flex;
|
| 243 |
+
align-items: center;
|
| 244 |
+
column-gap: 1rem;
|
| 245 |
+
}
|
| 246 |
+
|
| 247 |
+
.nav__actions i {
|
| 248 |
+
font-size: 1.25rem;
|
| 249 |
+
color: var(--title-color);
|
| 250 |
+
cursor: pointer;
|
| 251 |
+
transition: color 0.4s;
|
| 252 |
+
}
|
| 253 |
+
|
| 254 |
+
.nav__actions i:hover {
|
| 255 |
+
color: var(--first-color);
|
| 256 |
+
}
|
| 257 |
+
|
| 258 |
+
/* Add shadow header */
|
| 259 |
+
.shadow-header {
|
| 260 |
+
box-shadow: 0 2px 16px hsla(0, 0%, 0%, 0.1);
|
| 261 |
+
}
|
| 262 |
+
|
| 263 |
+
/* Active link */
|
| 264 |
+
.active-link {
|
| 265 |
+
color: var(--first-color);
|
| 266 |
+
}
|
| 267 |
+
|
| 268 |
+
/*=============== SEARCH ===============*/
|
| 269 |
+
.search {
|
| 270 |
+
position: fixed;
|
| 271 |
+
top: -100%;
|
| 272 |
+
left: 0;
|
| 273 |
+
width: 100%;
|
| 274 |
+
height: 100%;
|
| 275 |
+
z-index: var(--z-fixed);
|
| 276 |
+
background-color: hsla(230, 62%, 96%, 0.6);
|
| 277 |
+
backdrop-filter: blur(16px);
|
| 278 |
+
padding: 8rem 1.5rem;
|
| 279 |
+
transition: top 0.4s;
|
| 280 |
+
}
|
| 281 |
+
|
| 282 |
+
.search__form {
|
| 283 |
+
display: flex;
|
| 284 |
+
align-items: center;
|
| 285 |
+
column-gap: 0.5rem;
|
| 286 |
+
background-color: var(--container-color);
|
| 287 |
+
border: 2px solid var(--border-color);
|
| 288 |
+
padding-inline: 1rem;
|
| 289 |
+
}
|
| 290 |
+
|
| 291 |
+
.search__icon {
|
| 292 |
+
font-size: 1.25rem;
|
| 293 |
+
color: var(--title-color);
|
| 294 |
+
}
|
| 295 |
+
|
| 296 |
+
.search__input {
|
| 297 |
+
width: 100%;
|
| 298 |
+
padding-block: 1rem;
|
| 299 |
+
background-color: var(--container-color);
|
| 300 |
+
color: var(--text-color);
|
| 301 |
+
}
|
| 302 |
+
|
| 303 |
+
.search__close {
|
| 304 |
+
position: absolute;
|
| 305 |
+
top: 2rem;
|
| 306 |
+
right: 2rem;
|
| 307 |
+
font-size: 2rem;
|
| 308 |
+
color: var(--title-color);
|
| 309 |
+
cursor: pointer;
|
| 310 |
+
}
|
| 311 |
+
|
| 312 |
+
/* Show search */
|
| 313 |
+
.show-search {
|
| 314 |
+
top: 0;
|
| 315 |
+
}
|
| 316 |
+
|
| 317 |
+
/* =============== SHOPPING BAG =============== */
|
| 318 |
+
.bag {
|
| 319 |
+
position: fixed;
|
| 320 |
+
top: -100%;
|
| 321 |
+
left: 0;
|
| 322 |
+
height: 100%;
|
| 323 |
+
width: 100%;
|
| 324 |
+
z-index: var(--z-fixed);
|
| 325 |
+
background-color: hsla(230, 62%, 96%, 0.6);
|
| 326 |
+
backdrop-filter: blur(16px);
|
| 327 |
+
align-items: center;
|
| 328 |
+
padding: 1.5rem;
|
| 329 |
+
text-align: left;
|
| 330 |
+
transition: top 0.4s;
|
| 331 |
+
}
|
| 332 |
+
|
| 333 |
+
.bag__form {
|
| 334 |
+
background-color: var(--container-color);
|
| 335 |
+
padding: 2rem 1.5rem;
|
| 336 |
+
border: 2px solid var(--border-color);
|
| 337 |
+
row-gap: 1.25rem;
|
| 338 |
+
}
|
| 339 |
+
|
| 340 |
+
.bag__title {
|
| 341 |
+
font-size: var(--h2-font-size);
|
| 342 |
+
}
|
| 343 |
+
|
| 344 |
+
.bag__group {
|
| 345 |
+
row-gap: 1.25rem;
|
| 346 |
+
}
|
| 347 |
+
|
| 348 |
+
.bag__close {
|
| 349 |
+
position: absolute;
|
| 350 |
+
top: 2rem;
|
| 351 |
+
right: 2rem;
|
| 352 |
+
font-size: 2rem;
|
| 353 |
+
color: var(--title-color);
|
| 354 |
+
cursor: pointer;
|
| 355 |
+
}
|
| 356 |
+
|
| 357 |
+
/* Show search */
|
| 358 |
+
.show-bag {
|
| 359 |
+
top: 0;
|
| 360 |
+
}
|
| 361 |
+
|
| 362 |
+
.bag__qr {
|
| 363 |
+
display: flex;
|
| 364 |
+
justify-content: center;
|
| 365 |
+
}
|
| 366 |
+
|
| 367 |
+
.bag__qr img {
|
| 368 |
+
width: 50%;
|
| 369 |
+
}
|
| 370 |
+
|
| 371 |
+
/*=============== LOGIN ===============*/
|
| 372 |
+
.login {
|
| 373 |
+
position: fixed;
|
| 374 |
+
top: -100%;
|
| 375 |
+
left: 0;
|
| 376 |
+
width: 100%;
|
| 377 |
+
height: 100%;
|
| 378 |
+
z-index: var(--z-fixed);
|
| 379 |
+
background-color: hsla(230, 62%, 96%, 0.6);
|
| 380 |
+
backdrop-filter: blur(16px);
|
| 381 |
+
align-items: center;
|
| 382 |
+
padding: 1.5rem;
|
| 383 |
+
text-align: center;
|
| 384 |
+
transition: top 0.4s;
|
| 385 |
+
}
|
| 386 |
+
|
| 387 |
+
.login__form {
|
| 388 |
+
background-color: var(--container-color);
|
| 389 |
+
padding: 2rem 1.5rem;
|
| 390 |
+
border: 2px solid var(--border-color);
|
| 391 |
+
row-gap: 1.25rem;
|
| 392 |
+
}
|
| 393 |
+
|
| 394 |
+
.login__title {
|
| 395 |
+
font-size: var(--h2-font-size);
|
| 396 |
+
}
|
| 397 |
+
|
| 398 |
+
.login__group {
|
| 399 |
+
row-gap: 1.25rem;
|
| 400 |
+
}
|
| 401 |
+
|
| 402 |
+
.login__label {
|
| 403 |
+
display: block;
|
| 404 |
+
text-align: initial;
|
| 405 |
+
color: var(--title-color);
|
| 406 |
+
font-weight: var(--font-medium);
|
| 407 |
+
margin-bottom: 0.25rem;
|
| 408 |
+
}
|
| 409 |
+
|
| 410 |
+
.login__input {
|
| 411 |
+
width: 100%;
|
| 412 |
+
background-color: var(--container-color);
|
| 413 |
+
border: 2px solid var(--border-color);
|
| 414 |
+
padding: 1rem;
|
| 415 |
+
color: var(--text-color);
|
| 416 |
+
}
|
| 417 |
+
|
| 418 |
+
.login__signup,
|
| 419 |
+
.login__forgot {
|
| 420 |
+
display: block;
|
| 421 |
+
font-size: var(--small-font-size);
|
| 422 |
+
}
|
| 423 |
+
|
| 424 |
+
.login__signup {
|
| 425 |
+
margin-bottom: 0.5rem;
|
| 426 |
+
}
|
| 427 |
+
|
| 428 |
+
.login__signup a {
|
| 429 |
+
color: var(--first-color);
|
| 430 |
+
font-weight: var(--font-medium);
|
| 431 |
+
}
|
| 432 |
+
|
| 433 |
+
.login__forgot {
|
| 434 |
+
color: var(--first-color);
|
| 435 |
+
margin-bottom: 1.25rem;
|
| 436 |
+
}
|
| 437 |
+
|
| 438 |
+
.login__button {
|
| 439 |
+
width: 100%;
|
| 440 |
+
cursor: pointer;
|
| 441 |
+
}
|
| 442 |
+
|
| 443 |
+
.login__close {
|
| 444 |
+
position: absolute;
|
| 445 |
+
top: 2rem;
|
| 446 |
+
right: 2rem;
|
| 447 |
+
font-size: 2rem;
|
| 448 |
+
color: var(--title-color);
|
| 449 |
+
cursor: pointer;
|
| 450 |
+
}
|
| 451 |
+
|
| 452 |
+
/* Show login */
|
| 453 |
+
.show-login {
|
| 454 |
+
top: 0;
|
| 455 |
+
}
|
| 456 |
+
|
| 457 |
+
/*=============== HOME ===============*/
|
| 458 |
+
.home__swiper {
|
| 459 |
+
margin: initial;
|
| 460 |
+
}
|
| 461 |
+
|
| 462 |
+
.home__container {
|
| 463 |
+
padding-top: 2rem;
|
| 464 |
+
row-gap: 2.5rem;
|
| 465 |
+
}
|
| 466 |
+
|
| 467 |
+
.home__data {
|
| 468 |
+
text-align: center;
|
| 469 |
+
}
|
| 470 |
+
|
| 471 |
+
.home__title {
|
| 472 |
+
font-size: var(--biggest-font-size);
|
| 473 |
+
margin-bottom: 1rem;
|
| 474 |
+
}
|
| 475 |
+
|
| 476 |
+
.home__description {
|
| 477 |
+
margin-bottom: 2rem;
|
| 478 |
+
}
|
| 479 |
+
|
| 480 |
+
.home__images {
|
| 481 |
+
display: grid;
|
| 482 |
+
}
|
| 483 |
+
|
| 484 |
+
.home__article,
|
| 485 |
+
.home__img {
|
| 486 |
+
width: 220px;
|
| 487 |
+
transition: scale 0.4s;
|
| 488 |
+
}
|
| 489 |
+
|
| 490 |
+
.home__article {
|
| 491 |
+
scale: 0.8;
|
| 492 |
+
}
|
| 493 |
+
|
| 494 |
+
/* Swiper class */
|
| 495 |
+
.swiper-slide-active,
|
| 496 |
+
.swiper-slide-duplicate-active {
|
| 497 |
+
scale: 1;
|
| 498 |
+
}
|
| 499 |
+
|
| 500 |
+
/*=============== BUTTON ===============*/
|
| 501 |
+
.button {
|
| 502 |
+
display: inline-block;
|
| 503 |
+
background-color: var(--first-color);
|
| 504 |
+
color: var(--white-color);
|
| 505 |
+
font-weight: var(--font-semi-bold);
|
| 506 |
+
padding: 1rem 1.5rem;
|
| 507 |
+
transition: box-shadow 0.4s;
|
| 508 |
+
border-radius: 10px;
|
| 509 |
+
}
|
| 510 |
+
|
| 511 |
+
.button:hover {
|
| 512 |
+
/* box-shadow: 0 4px 32px hsla(230, 72%, 32%, 0.4); */
|
| 513 |
+
box-shadow: 0 4px 32px #a11f37;
|
| 514 |
+
}
|
| 515 |
+
|
| 516 |
+
/*=============== SERVICES ===============*/
|
| 517 |
+
.services__container {
|
| 518 |
+
row-gap: 3rem;
|
| 519 |
+
}
|
| 520 |
+
|
| 521 |
+
.services__card {
|
| 522 |
+
text-align: center;
|
| 523 |
+
}
|
| 524 |
+
|
| 525 |
+
.services__card i {
|
| 526 |
+
display: block;
|
| 527 |
+
font-size: 3rem;
|
| 528 |
+
color: var(--first-color);
|
| 529 |
+
margin-bottom: 1rem;
|
| 530 |
+
}
|
| 531 |
+
|
| 532 |
+
.services__title {
|
| 533 |
+
font-size: var(--h3-font-size);
|
| 534 |
+
margin-bottom: 0.5rem;
|
| 535 |
+
}
|
| 536 |
+
|
| 537 |
+
/*=============== FEATURED ===============*/
|
| 538 |
+
.featured__card {
|
| 539 |
+
position: relative;
|
| 540 |
+
text-align: center;
|
| 541 |
+
background-color: var(--container-color);
|
| 542 |
+
padding: 2rem;
|
| 543 |
+
overflow: hidden;
|
| 544 |
+
border: 2px solid var(--border-color);
|
| 545 |
+
transition: border 0.4s, background-color 0.4s;
|
| 546 |
+
border-radius: 10px;
|
| 547 |
+
}
|
| 548 |
+
|
| 549 |
+
.featured__img {
|
| 550 |
+
width: 150px;
|
| 551 |
+
margin: 0 auto 0.75rem;
|
| 552 |
+
}
|
| 553 |
+
|
| 554 |
+
.featured__title {
|
| 555 |
+
font-size: var(--h2-font-size);
|
| 556 |
+
margin-bottom: 0.5rem;
|
| 557 |
+
}
|
| 558 |
+
|
| 559 |
+
.featured__prices {
|
| 560 |
+
display: flex;
|
| 561 |
+
justify-content: center;
|
| 562 |
+
align-items: center;
|
| 563 |
+
column-gap: 0.75rem;
|
| 564 |
+
margin-bottom: 1.25rem;
|
| 565 |
+
}
|
| 566 |
+
|
| 567 |
+
.featured__discount {
|
| 568 |
+
color: var(--title-color);
|
| 569 |
+
}
|
| 570 |
+
|
| 571 |
+
.featured__price {
|
| 572 |
+
font-size: var(--small-font-size);
|
| 573 |
+
text-decoration: line-through;
|
| 574 |
+
}
|
| 575 |
+
|
| 576 |
+
.featured__card .button {
|
| 577 |
+
cursor: pointer;
|
| 578 |
+
}
|
| 579 |
+
|
| 580 |
+
.featured__actions {
|
| 581 |
+
display: inline-flex;
|
| 582 |
+
flex-direction: column;
|
| 583 |
+
row-gap: 0.75rem;
|
| 584 |
+
position: absolute;
|
| 585 |
+
top: 2rem;
|
| 586 |
+
right: -1.5rem;
|
| 587 |
+
transition: right 0.4s;
|
| 588 |
+
}
|
| 589 |
+
|
| 590 |
+
.featured__actions button {
|
| 591 |
+
background: none;
|
| 592 |
+
font-size: 1.25rem;
|
| 593 |
+
color: var(--first-color);
|
| 594 |
+
cursor: pointer;
|
| 595 |
+
}
|
| 596 |
+
|
| 597 |
+
.featured__card:hover .featured__actions {
|
| 598 |
+
right: 1.5rem;
|
| 599 |
+
}
|
| 600 |
+
|
| 601 |
+
/* Swiper class */
|
| 602 |
+
.swiper-button-prev::after,
|
| 603 |
+
.swiper-button-next::after {
|
| 604 |
+
content: "";
|
| 605 |
+
}
|
| 606 |
+
|
| 607 |
+
.swiper-button-prev,
|
| 608 |
+
.swiper-button-next {
|
| 609 |
+
width: initial;
|
| 610 |
+
height: initial;
|
| 611 |
+
background-color: var(--container-color);
|
| 612 |
+
border: 2px solid var(--border-color);
|
| 613 |
+
padding: 0.5rem;
|
| 614 |
+
font-size: 1.5rem;
|
| 615 |
+
color: var(--first-color);
|
| 616 |
+
transition: border 0.4s, background-color 0.4s;
|
| 617 |
+
border-radius: 10px;
|
| 618 |
+
}
|
| 619 |
+
|
| 620 |
+
/*=============== DISCOUNT ===============*/
|
| 621 |
+
.discount__container {
|
| 622 |
+
row-gap: 3.5rem;
|
| 623 |
+
}
|
| 624 |
+
|
| 625 |
+
.discount__data {
|
| 626 |
+
text-align: center;
|
| 627 |
+
}
|
| 628 |
+
|
| 629 |
+
.discount__title {
|
| 630 |
+
margin-bottom: 1rem;
|
| 631 |
+
}
|
| 632 |
+
|
| 633 |
+
.discount__description {
|
| 634 |
+
margin-bottom: 2rem;
|
| 635 |
+
}
|
| 636 |
+
|
| 637 |
+
.discount__images {
|
| 638 |
+
display: flex;
|
| 639 |
+
justify-content: center;
|
| 640 |
+
}
|
| 641 |
+
|
| 642 |
+
.discount__img-1,
|
| 643 |
+
.discount__img-2 {
|
| 644 |
+
width: 170px;
|
| 645 |
+
}
|
| 646 |
+
|
| 647 |
+
.discount__img-1 {
|
| 648 |
+
transform: translateX(1rem) rotate(-10deg);
|
| 649 |
+
}
|
| 650 |
+
|
| 651 |
+
.discount__img-2 {
|
| 652 |
+
transform: translateX(-1rem) rotate(10deg);
|
| 653 |
+
}
|
| 654 |
+
|
| 655 |
+
/*=============== NEW ===============*/
|
| 656 |
+
.new__card {
|
| 657 |
+
display: flex;
|
| 658 |
+
align-items: center;
|
| 659 |
+
column-gap: 2.5rem;
|
| 660 |
+
background-color: var(--container-color);
|
| 661 |
+
padding: 1.5rem 1rem;
|
| 662 |
+
color: var(--text-color);
|
| 663 |
+
border: 2px solid var(--border-color);
|
| 664 |
+
transition: border 0.4s, background-color 0.4s;
|
| 665 |
+
border-radius: 10px;
|
| 666 |
+
}
|
| 667 |
+
|
| 668 |
+
.new__card:hover {
|
| 669 |
+
border: 2px solid var(--text-color);
|
| 670 |
+
}
|
| 671 |
+
|
| 672 |
+
.new__img {
|
| 673 |
+
width: 100px;
|
| 674 |
+
}
|
| 675 |
+
|
| 676 |
+
.new__title {
|
| 677 |
+
font-size: var(--h2-font-size);
|
| 678 |
+
margin-bottom: 0.5rem;
|
| 679 |
+
}
|
| 680 |
+
|
| 681 |
+
.new__prices {
|
| 682 |
+
display: flex;
|
| 683 |
+
align-items: center;
|
| 684 |
+
column-gap: 0.75rem;
|
| 685 |
+
margin-bottom: 0.75rem;
|
| 686 |
+
}
|
| 687 |
+
|
| 688 |
+
.new__discount {
|
| 689 |
+
color: var(--title-color);
|
| 690 |
+
}
|
| 691 |
+
|
| 692 |
+
.new__price {
|
| 693 |
+
font-size: var(--small-font-size);
|
| 694 |
+
text-decoration: line-through;
|
| 695 |
+
}
|
| 696 |
+
|
| 697 |
+
.new__stars {
|
| 698 |
+
color: var(--first-color);
|
| 699 |
+
}
|
| 700 |
+
|
| 701 |
+
.new__swiper:nth-child(1) {
|
| 702 |
+
margin-bottom: 2rem;
|
| 703 |
+
}
|
| 704 |
+
|
| 705 |
+
/*=============== JOIN ===============*/
|
| 706 |
+
.join__container {
|
| 707 |
+
position: relative;
|
| 708 |
+
padding-block: 3rem;
|
| 709 |
+
}
|
| 710 |
+
|
| 711 |
+
.join__bg {
|
| 712 |
+
position: absolute;
|
| 713 |
+
top: 0;
|
| 714 |
+
left: 0;
|
| 715 |
+
width: 100%;
|
| 716 |
+
height: 100%;
|
| 717 |
+
object-fit: cover;
|
| 718 |
+
object-position: center;
|
| 719 |
+
}
|
| 720 |
+
|
| 721 |
+
.join__data {
|
| 722 |
+
position: relative;
|
| 723 |
+
}
|
| 724 |
+
|
| 725 |
+
.join__title {
|
| 726 |
+
color: var(--white-color);
|
| 727 |
+
}
|
| 728 |
+
|
| 729 |
+
.join__form {
|
| 730 |
+
display: grid;
|
| 731 |
+
row-gap: 1rem;
|
| 732 |
+
}
|
| 733 |
+
|
| 734 |
+
.join__input {
|
| 735 |
+
padding: 1.25rem 1rem;
|
| 736 |
+
background-color: var(--body-color);
|
| 737 |
+
color: var(--title-color);
|
| 738 |
+
transition: background-color 0.4s;
|
| 739 |
+
border-radius: 10px;
|
| 740 |
+
}
|
| 741 |
+
|
| 742 |
+
.join__input::placeholder {
|
| 743 |
+
color: var(--text-color);
|
| 744 |
+
}
|
| 745 |
+
|
| 746 |
+
.join__button {
|
| 747 |
+
padding-block: 1.25rem;
|
| 748 |
+
cursor: pointer;
|
| 749 |
+
}
|
| 750 |
+
|
| 751 |
+
/*=============== TESTIMONIAL ===============*/
|
| 752 |
+
.testimonial__card {
|
| 753 |
+
text-align: center;
|
| 754 |
+
background-color: var(--container-color);
|
| 755 |
+
padding: 2rem 3rem 2.5rem;
|
| 756 |
+
border: 2px solid var(--border-color);
|
| 757 |
+
transition: border 0.4s, background-color 0.4s;
|
| 758 |
+
border-radius: 10px;
|
| 759 |
+
}
|
| 760 |
+
|
| 761 |
+
.testimonial__img {
|
| 762 |
+
width: 100px;
|
| 763 |
+
border-radius: 50%;
|
| 764 |
+
margin: 0 auto 1.5rem;
|
| 765 |
+
}
|
| 766 |
+
|
| 767 |
+
.testimonial__title {
|
| 768 |
+
font-size: var(--h2-font-size);
|
| 769 |
+
margin-bottom: 0.75rem;
|
| 770 |
+
}
|
| 771 |
+
|
| 772 |
+
.testimonial__description {
|
| 773 |
+
font-size: var(--small-font-size);
|
| 774 |
+
margin-bottom: 1.25rem;
|
| 775 |
+
}
|
| 776 |
+
|
| 777 |
+
.testimonial__stars {
|
| 778 |
+
color: var(--first-color);
|
| 779 |
+
}
|
| 780 |
+
|
| 781 |
+
/*=============== FOOTER ===============*/
|
| 782 |
+
.footer {
|
| 783 |
+
padding-block: 4rem 6rem;
|
| 784 |
+
}
|
| 785 |
+
|
| 786 |
+
.footer__container {
|
| 787 |
+
row-gap: 3rem;
|
| 788 |
+
}
|
| 789 |
+
|
| 790 |
+
.footer__logo {
|
| 791 |
+
display: inline-flex;
|
| 792 |
+
align-items: center;
|
| 793 |
+
column-gap: 0.5rem;
|
| 794 |
+
color: var(--first-color);
|
| 795 |
+
font-size: var(--h3-font-size);
|
| 796 |
+
font-family: var(--second-font);
|
| 797 |
+
margin-bottom: 1.25rem;
|
| 798 |
+
}
|
| 799 |
+
|
| 800 |
+
.footer__logo i {
|
| 801 |
+
font-size: 1.25rem;
|
| 802 |
+
}
|
| 803 |
+
|
| 804 |
+
.footer__data {
|
| 805 |
+
grid-template-columns: repeat(2, max-content);
|
| 806 |
+
gap: 3rem 2rem;
|
| 807 |
+
}
|
| 808 |
+
|
| 809 |
+
.footer__title {
|
| 810 |
+
font-size: var(--h3-font-size);
|
| 811 |
+
margin-bottom: 1.25rem;
|
| 812 |
+
}
|
| 813 |
+
|
| 814 |
+
.footer__links {
|
| 815 |
+
display: grid;
|
| 816 |
+
row-gap: 0.5rem;
|
| 817 |
+
}
|
| 818 |
+
|
| 819 |
+
.footer__link {
|
| 820 |
+
color: var(--text-color);
|
| 821 |
+
transition: color 0.4s;
|
| 822 |
+
}
|
| 823 |
+
|
| 824 |
+
.footer__link:hover {
|
| 825 |
+
color: var(--first-color);
|
| 826 |
+
}
|
| 827 |
+
|
| 828 |
+
.footer__info {
|
| 829 |
+
font-style: normal;
|
| 830 |
+
}
|
| 831 |
+
|
| 832 |
+
.footer__social {
|
| 833 |
+
display: flex;
|
| 834 |
+
column-gap: 1.25rem;
|
| 835 |
+
}
|
| 836 |
+
|
| 837 |
+
.footer__social-link {
|
| 838 |
+
font-size: 1.25rem;
|
| 839 |
+
color: var(--first-color);
|
| 840 |
+
}
|
| 841 |
+
|
| 842 |
+
.footer__copy {
|
| 843 |
+
display: block;
|
| 844 |
+
margin-top: 5rem;
|
| 845 |
+
text-align: center;
|
| 846 |
+
font-size: var(--small-font-size);
|
| 847 |
+
}
|
| 848 |
+
|
| 849 |
+
/*=============== SCROLL BAR ===============*/
|
| 850 |
+
::-webkit-scrollbar {
|
| 851 |
+
width: 0.6rem;
|
| 852 |
+
border-radius: 0.5rem;
|
| 853 |
+
background-color: hsl(230, 16%, 85%);
|
| 854 |
+
}
|
| 855 |
+
|
| 856 |
+
::-webkit-scrollbar-thumb {
|
| 857 |
+
background-color: hsl(230, 16%, 65%);
|
| 858 |
+
border-radius: 0.5rem;
|
| 859 |
+
}
|
| 860 |
+
|
| 861 |
+
::-webkit-scrollbar-thumb:hover {
|
| 862 |
+
background-color: hsl(230, 16%, 55%);
|
| 863 |
+
}
|
| 864 |
+
|
| 865 |
+
/*=============== SCROLL UP ===============*/
|
| 866 |
+
.scrollup {
|
| 867 |
+
position: fixed;
|
| 868 |
+
right: 1rem;
|
| 869 |
+
bottom: -50%;
|
| 870 |
+
background-color: var(--container-color);
|
| 871 |
+
box-shadow: 0 2px 8px hsla(0, 0%, 0%, 0.1);
|
| 872 |
+
display: inline-flex;
|
| 873 |
+
padding: 6px;
|
| 874 |
+
font-size: 1.25rem;
|
| 875 |
+
color: var(--title-color);
|
| 876 |
+
z-index: var(--z-tooltip);
|
| 877 |
+
transition: bottom 0.4s, transform 0.4s, background-color 0.4s;
|
| 878 |
+
}
|
| 879 |
+
|
| 880 |
+
.scrollup:hover {
|
| 881 |
+
transform: translateY(-0.5rem);
|
| 882 |
+
}
|
| 883 |
+
|
| 884 |
+
/* Show Scroll Up */
|
| 885 |
+
.show-scroll {
|
| 886 |
+
bottom: 6rem;
|
| 887 |
+
}
|
| 888 |
+
|
| 889 |
+
/*=============== BREAKPOINTS ===============*/
|
| 890 |
+
/* For small devices */
|
| 891 |
+
@media screen and (max-width: 320px) {
|
| 892 |
+
.container {
|
| 893 |
+
margin-inline: 1rem;
|
| 894 |
+
}
|
| 895 |
+
|
| 896 |
+
.featured__swiper {
|
| 897 |
+
margin-bottom: 16px !important;
|
| 898 |
+
}
|
| 899 |
+
|
| 900 |
+
.nav__menu {
|
| 901 |
+
padding-inline: 3rem;
|
| 902 |
+
border-radius: 10px 10px 0px 0px;
|
| 903 |
+
}
|
| 904 |
+
|
| 905 |
+
.discount__img-1,
|
| 906 |
+
.discount__img-2 {
|
| 907 |
+
width: 140px;
|
| 908 |
+
}
|
| 909 |
+
|
| 910 |
+
.new__card {
|
| 911 |
+
flex-direction: column;
|
| 912 |
+
}
|
| 913 |
+
|
| 914 |
+
.testimonial__card {
|
| 915 |
+
padding-inline: 1rem;
|
| 916 |
+
}
|
| 917 |
+
|
| 918 |
+
.footer__data {
|
| 919 |
+
grid-template-columns: 1fr;
|
| 920 |
+
row-gap: 2rem;
|
| 921 |
+
}
|
| 922 |
+
}
|
| 923 |
+
|
| 924 |
+
/* For medium devices */
|
| 925 |
+
@media screen and (min-width: 450px) {
|
| 926 |
+
.featured__card {
|
| 927 |
+
width: 290px;
|
| 928 |
+
margin-bottom: 16px;
|
| 929 |
+
}
|
| 930 |
+
|
| 931 |
+
.new__card {
|
| 932 |
+
width: 390px;
|
| 933 |
+
}
|
| 934 |
+
|
| 935 |
+
.testimonial__card {
|
| 936 |
+
width: 320px;
|
| 937 |
+
}
|
| 938 |
+
}
|
| 939 |
+
|
| 940 |
+
@media screen and (min-width: 576px) {
|
| 941 |
+
.search__form,
|
| 942 |
+
.bag__form {
|
| 943 |
+
width: 500px;
|
| 944 |
+
margin-inline: auto;
|
| 945 |
+
}
|
| 946 |
+
|
| 947 |
+
.login__form {
|
| 948 |
+
width: 400px;
|
| 949 |
+
justify-self: center;
|
| 950 |
+
}
|
| 951 |
+
|
| 952 |
+
.search__close,
|
| 953 |
+
.bag__close,
|
| 954 |
+
.login__close {
|
| 955 |
+
width: max-content;
|
| 956 |
+
top: 4rem;
|
| 957 |
+
left: 0;
|
| 958 |
+
right: 0;
|
| 959 |
+
margin-inline: auto;
|
| 960 |
+
}
|
| 961 |
+
|
| 962 |
+
.nav__menu {
|
| 963 |
+
width: 380px;
|
| 964 |
+
margin-inline: auto;
|
| 965 |
+
}
|
| 966 |
+
|
| 967 |
+
.home__container,
|
| 968 |
+
.discount__container {
|
| 969 |
+
grid-template-columns: 420px;
|
| 970 |
+
justify-content: center;
|
| 971 |
+
}
|
| 972 |
+
|
| 973 |
+
.join__form {
|
| 974 |
+
width: 328px;
|
| 975 |
+
justify-self: center;
|
| 976 |
+
}
|
| 977 |
+
|
| 978 |
+
.footer__data {
|
| 979 |
+
grid-template-columns: repeat(3, max-content);
|
| 980 |
+
}
|
| 981 |
+
}
|
| 982 |
+
|
| 983 |
+
@media screen and (min-width: 768px) {
|
| 984 |
+
.home__container {
|
| 985 |
+
grid-template-columns: 580px;
|
| 986 |
+
}
|
| 987 |
+
|
| 988 |
+
.home__data {
|
| 989 |
+
width: 420px;
|
| 990 |
+
justify-self: center;
|
| 991 |
+
}
|
| 992 |
+
|
| 993 |
+
.services__container {
|
| 994 |
+
grid-template-columns: repeat(3, max-content);
|
| 995 |
+
justify-content: center;
|
| 996 |
+
column-gap: 5rem;
|
| 997 |
+
}
|
| 998 |
+
|
| 999 |
+
.footer__container {
|
| 1000 |
+
grid-template-columns: repeat(2, max-content);
|
| 1001 |
+
justify-content: space-between;
|
| 1002 |
+
}
|
| 1003 |
+
}
|
| 1004 |
+
|
| 1005 |
+
/* For large devices */
|
| 1006 |
+
@media screen and (min-width: 1150px) {
|
| 1007 |
+
.section {
|
| 1008 |
+
padding-block: 7rem 2rem;
|
| 1009 |
+
}
|
| 1010 |
+
|
| 1011 |
+
.nav {
|
| 1012 |
+
height: calc(var(--header-height) + 2rem);
|
| 1013 |
+
column-gap: 4rem;
|
| 1014 |
+
}
|
| 1015 |
+
.nav__link i {
|
| 1016 |
+
display: none;
|
| 1017 |
+
}
|
| 1018 |
+
.nav__link span {
|
| 1019 |
+
display: block;
|
| 1020 |
+
}
|
| 1021 |
+
.nav__menu {
|
| 1022 |
+
width: initial;
|
| 1023 |
+
margin-inline: auto 0;
|
| 1024 |
+
}
|
| 1025 |
+
.nav__list {
|
| 1026 |
+
column-gap: 4rem;
|
| 1027 |
+
}
|
| 1028 |
+
.nav__link {
|
| 1029 |
+
font-weight: var(--font-medium);
|
| 1030 |
+
}
|
| 1031 |
+
|
| 1032 |
+
.dark-theme .nav__menu {
|
| 1033 |
+
box-shadow: none;
|
| 1034 |
+
}
|
| 1035 |
+
|
| 1036 |
+
.home__data {
|
| 1037 |
+
width: initial;
|
| 1038 |
+
}
|
| 1039 |
+
|
| 1040 |
+
.services__container {
|
| 1041 |
+
column-gap: 10rem;
|
| 1042 |
+
}
|
| 1043 |
+
.services__card i {
|
| 1044 |
+
font-size: 3.5rem;
|
| 1045 |
+
}
|
| 1046 |
+
|
| 1047 |
+
.featured__container {
|
| 1048 |
+
padding-top: 2rem;
|
| 1049 |
+
}
|
| 1050 |
+
.featured__title {
|
| 1051 |
+
font-size: var(--h3-font-size);
|
| 1052 |
+
}
|
| 1053 |
+
|
| 1054 |
+
.discount__container {
|
| 1055 |
+
grid-template-columns: 615px 500px;
|
| 1056 |
+
justify-content: space-between;
|
| 1057 |
+
align-items: center;
|
| 1058 |
+
}
|
| 1059 |
+
.discount__data {
|
| 1060 |
+
order: 1;
|
| 1061 |
+
}
|
| 1062 |
+
.discount__data,
|
| 1063 |
+
.discount__title {
|
| 1064 |
+
text-align: initial;
|
| 1065 |
+
}
|
| 1066 |
+
.discount__description {
|
| 1067 |
+
margin-bottom: 3.5rem;
|
| 1068 |
+
}
|
| 1069 |
+
.discount__img-1,
|
| 1070 |
+
.discount__img-2 {
|
| 1071 |
+
width: 300px;
|
| 1072 |
+
}
|
| 1073 |
+
|
| 1074 |
+
.new__container {
|
| 1075 |
+
padding-top: 2rem;
|
| 1076 |
+
}
|
| 1077 |
+
.new__card {
|
| 1078 |
+
padding: 1.5rem;
|
| 1079 |
+
}
|
| 1080 |
+
.new__img {
|
| 1081 |
+
width: 120px;
|
| 1082 |
+
}
|
| 1083 |
+
.new__title {
|
| 1084 |
+
font-size: var(--h3-font-size);
|
| 1085 |
+
}
|
| 1086 |
+
|
| 1087 |
+
.join__bg {
|
| 1088 |
+
object-position: 0 -5rem;
|
| 1089 |
+
}
|
| 1090 |
+
|
| 1091 |
+
.testimonial__container {
|
| 1092 |
+
padding-top: 2rem;
|
| 1093 |
+
}
|
| 1094 |
+
.testimonial__card {
|
| 1095 |
+
padding-inline: 2rem;
|
| 1096 |
+
}
|
| 1097 |
+
.testimonial__title {
|
| 1098 |
+
font-size: var(--h3-font-size);
|
| 1099 |
+
}
|
| 1100 |
+
.testimonial__description {
|
| 1101 |
+
font-size: var(--normal-font-size);
|
| 1102 |
+
}
|
| 1103 |
+
|
| 1104 |
+
.footer {
|
| 1105 |
+
padding-block: 6rem 3rem;
|
| 1106 |
+
}
|
| 1107 |
+
.footer__data {
|
| 1108 |
+
grid-template-columns: repeat(4, max-content);
|
| 1109 |
+
column-gap: 4.5rem;
|
| 1110 |
+
}
|
| 1111 |
+
.footer__logo,
|
| 1112 |
+
.footer__title {
|
| 1113 |
+
font-size: var(--h2-font-size);
|
| 1114 |
+
margin-bottom: 1.5rem;
|
| 1115 |
+
}
|
| 1116 |
+
.footer__links {
|
| 1117 |
+
row-gap: 1rem;
|
| 1118 |
+
}
|
| 1119 |
+
.footer__social {
|
| 1120 |
+
column-gap: 1.5rem;
|
| 1121 |
+
}
|
| 1122 |
+
.footer__social-link {
|
| 1123 |
+
font-size: 1.5rem;
|
| 1124 |
+
}
|
| 1125 |
+
.footer__copy {
|
| 1126 |
+
margin-top: 7.5rem;
|
| 1127 |
+
}
|
| 1128 |
+
|
| 1129 |
+
.scrollup {
|
| 1130 |
+
right: 3rem;
|
| 1131 |
+
}
|
| 1132 |
+
.show-scroll {
|
| 1133 |
+
bottom: 3rem;
|
| 1134 |
+
}
|
| 1135 |
+
}
|
| 1136 |
+
|
| 1137 |
+
@media screen and (min-width: 1220px) {
|
| 1138 |
+
.container {
|
| 1139 |
+
margin-inline: auto;
|
| 1140 |
+
}
|
| 1141 |
+
|
| 1142 |
+
.home__container {
|
| 1143 |
+
grid-template-columns: 435px 745px;
|
| 1144 |
+
align-items: center;
|
| 1145 |
+
padding-block: 7rem 2rem;
|
| 1146 |
+
}
|
| 1147 |
+
.home__data {
|
| 1148 |
+
text-align: initial;
|
| 1149 |
+
}
|
| 1150 |
+
.home__description {
|
| 1151 |
+
margin-bottom: 4rem;
|
| 1152 |
+
}
|
| 1153 |
+
.home__article,
|
| 1154 |
+
.home__img {
|
| 1155 |
+
width: 290px;
|
| 1156 |
+
}
|
| 1157 |
+
}
|
| 1158 |
+
|
| 1159 |
+
/* ==================== PRODUCT DETAIL ==================== */
|
| 1160 |
+
.product__detail {
|
| 1161 |
+
flex: 1;
|
| 1162 |
+
padding: 20px;
|
| 1163 |
+
margin-top: 2rem;
|
| 1164 |
+
}
|
| 1165 |
+
|
| 1166 |
+
.product__img img {
|
| 1167 |
+
max-width: 100%;
|
| 1168 |
+
height: auto;
|
| 1169 |
+
border-radius: 8px;
|
| 1170 |
+
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
|
| 1171 |
+
}
|
| 1172 |
+
|
| 1173 |
+
.detail {
|
| 1174 |
+
display: flex;
|
| 1175 |
+
gap: 20px;
|
| 1176 |
+
align-items: center;
|
| 1177 |
+
flex-wrap: wrap;
|
| 1178 |
+
justify-content: center;
|
| 1179 |
+
}
|
| 1180 |
+
|
| 1181 |
+
.product__title {
|
| 1182 |
+
text-align: center;
|
| 1183 |
+
width: 100%;
|
| 1184 |
+
}
|
| 1185 |
+
|
| 1186 |
+
.product_info {
|
| 1187 |
+
justify-content: center;
|
| 1188 |
+
}
|
| 1189 |
+
|
| 1190 |
+
@media (max-width: 768px) {
|
| 1191 |
+
.detail {
|
| 1192 |
+
flex-direction: column;
|
| 1193 |
+
}
|
| 1194 |
+
|
| 1195 |
+
.product__title {
|
| 1196 |
+
text-align: center;
|
| 1197 |
+
}
|
| 1198 |
+
}
|
assets/css/swiper-bundle.min.css
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/**
|
| 2 |
+
* Swiper 8.4.7
|
| 3 |
+
* Most modern mobile touch slider and framework with hardware accelerated transitions
|
| 4 |
+
* https://swiperjs.com
|
| 5 |
+
*
|
| 6 |
+
* Copyright 2014-2023 Vladimir Kharlampidi
|
| 7 |
+
*
|
| 8 |
+
* Released under the MIT License
|
| 9 |
+
*
|
| 10 |
+
* Released on: January 30, 2023
|
| 11 |
+
*/
|
| 12 |
+
|
| 13 |
+
@font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-pointer-events{touch-action:pan-y}.swiper-pointer-events.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:10px;right:auto}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:10px;left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'next'}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));display:inline-block;border-radius:50%;background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:10px;top:50%;transform:translate3d(0px,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:4px;left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none!important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}
|
assets/img/QR.png
ADDED
|
Git LFS Details
|
assets/img/favicon.png
ADDED
|
|
assets/img/home-book-1.png
ADDED
|
Git LFS Details
|
assets/img/home-book-2.png
ADDED
|
Git LFS Details
|
assets/img/home-book-3.png
ADDED
|
Git LFS Details
|
assets/img/home-book-4.png
ADDED
|
Git LFS Details
|
assets/img/home-book-5.png
ADDED
|
Git LFS Details
|
assets/img/home-book-6.png
ADDED
|
Git LFS Details
|
assets/img/home-book-7.png
ADDED
|
Git LFS Details
|
assets/img/join-bg.jpg
ADDED
|
Git LFS Details
|
assets/img/testimonial-perfil-1.png
ADDED
|
Git LFS Details
|
assets/img/testimonial-perfil-2.png
ADDED
|
Git LFS Details
|
assets/img/testimonial-perfil-3.png
ADDED
|
Git LFS Details
|
assets/img/testimonial-perfil-4.png
ADDED
|
Git LFS Details
|
assets/js/main.js
ADDED
|
@@ -0,0 +1,419 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== SEARCH ===============*/
|
| 2 |
+
const searchButton = document.getElementById("search-button"),
|
| 3 |
+
searchClose = document.getElementById("search-close"),
|
| 4 |
+
searchContent = document.getElementById("search-content");
|
| 5 |
+
|
| 6 |
+
/*===== SEARCH SHOW =====*/
|
| 7 |
+
/* Validate if constant exists */
|
| 8 |
+
if (searchButton) {
|
| 9 |
+
searchButton.addEventListener("click", () => {
|
| 10 |
+
searchContent.classList.add("show-search");
|
| 11 |
+
});
|
| 12 |
+
}
|
| 13 |
+
|
| 14 |
+
/*===== SEARCH HIDDEN =====*/
|
| 15 |
+
/* Validate if constant exists */
|
| 16 |
+
if (searchClose) {
|
| 17 |
+
searchClose.addEventListener("click", () => {
|
| 18 |
+
searchContent.classList.remove("show-search");
|
| 19 |
+
});
|
| 20 |
+
}
|
| 21 |
+
|
| 22 |
+
/*=============== SHOPPING BAG ===============*/
|
| 23 |
+
const bagButton = document.getElementById("bag-button"),
|
| 24 |
+
bagClose = document.getElementById("bag-close"),
|
| 25 |
+
bagContent = document.getElementById("bag-content");
|
| 26 |
+
|
| 27 |
+
/*===== CART SHOW =====*/
|
| 28 |
+
/* Validate if constant exists */
|
| 29 |
+
if (bagButton) {
|
| 30 |
+
bagButton.addEventListener("click", () => {
|
| 31 |
+
bagContent.classList.add("show-bag");
|
| 32 |
+
});
|
| 33 |
+
}
|
| 34 |
+
|
| 35 |
+
/*===== CART HIDDEN =====*/
|
| 36 |
+
/* Validate if constant exists */
|
| 37 |
+
if (bagClose) {
|
| 38 |
+
bagClose.addEventListener("click", () => {
|
| 39 |
+
bagContent.classList.remove("show-bag");
|
| 40 |
+
});
|
| 41 |
+
}
|
| 42 |
+
|
| 43 |
+
/*=============== LOGIN ===============*/
|
| 44 |
+
const loginButton = document.getElementById("login-button"),
|
| 45 |
+
loginClose = document.getElementById("login-close"),
|
| 46 |
+
loginContent = document.getElementById("login-content");
|
| 47 |
+
|
| 48 |
+
/*===== LOGIN SHOW =====*/
|
| 49 |
+
/* Validate if constant exists */
|
| 50 |
+
if (loginButton) {
|
| 51 |
+
loginButton.addEventListener("click", () => {
|
| 52 |
+
loginContent.classList.add("show-login");
|
| 53 |
+
});
|
| 54 |
+
}
|
| 55 |
+
|
| 56 |
+
/*===== LOGIN HIDDEN =====*/
|
| 57 |
+
/* Validate if constant exists */
|
| 58 |
+
if (loginClose) {
|
| 59 |
+
loginClose.addEventListener("click", () => {
|
| 60 |
+
loginContent.classList.remove("show-login");
|
| 61 |
+
});
|
| 62 |
+
}
|
| 63 |
+
|
| 64 |
+
/*=============== ADD SHADOW HEADER ===============*/
|
| 65 |
+
const shadowHeader = () => {
|
| 66 |
+
const header = document.getElementById("header");
|
| 67 |
+
// When the scroll is greater than 50 viewport height, add the shadow-header class to the header tag
|
| 68 |
+
this.scrollY >= 50
|
| 69 |
+
? header.classList.add("shadow-header")
|
| 70 |
+
: header.classList.remove("shadow-header");
|
| 71 |
+
};
|
| 72 |
+
window.addEventListener("scroll", shadowHeader);
|
| 73 |
+
|
| 74 |
+
/*=============== HOME SWIPER ===============*/
|
| 75 |
+
let swiperHome = new Swiper(".home__swiper", {
|
| 76 |
+
loop: true,
|
| 77 |
+
spaceBetween: -24,
|
| 78 |
+
grabCursor: true,
|
| 79 |
+
slidesPerView: "auto",
|
| 80 |
+
centeredSlides: "auto",
|
| 81 |
+
|
| 82 |
+
autoplay: {
|
| 83 |
+
delay: 3000,
|
| 84 |
+
disableOnInteraction: false,
|
| 85 |
+
},
|
| 86 |
+
|
| 87 |
+
breakpoints: {
|
| 88 |
+
1220: {
|
| 89 |
+
spaceBetween: -32,
|
| 90 |
+
},
|
| 91 |
+
},
|
| 92 |
+
});
|
| 93 |
+
|
| 94 |
+
/*=============== FEATURED SWIPER ===============*/
|
| 95 |
+
let swiperFeatured = new Swiper(".featured__swiper", {
|
| 96 |
+
loop: true,
|
| 97 |
+
spaceBetween: 16,
|
| 98 |
+
grabCursor: true,
|
| 99 |
+
slidesPerView: "auto",
|
| 100 |
+
centeredSlides: "auto",
|
| 101 |
+
|
| 102 |
+
navigation: {
|
| 103 |
+
nextEl: ".swiper-button-next",
|
| 104 |
+
prevEl: ".swiper-button-prev",
|
| 105 |
+
},
|
| 106 |
+
|
| 107 |
+
breakpoints: {
|
| 108 |
+
1150: {
|
| 109 |
+
slidesPerView: 4,
|
| 110 |
+
centeredSlides: false,
|
| 111 |
+
},
|
| 112 |
+
},
|
| 113 |
+
});
|
| 114 |
+
|
| 115 |
+
/*=============== FEATURED ADD TO CART ===============*/
|
| 116 |
+
document.addEventListener("DOMContentLoaded", function () {
|
| 117 |
+
const addToCartButtons = document.querySelectorAll(".featured__card .button");
|
| 118 |
+
const clearCartButton = document.getElementById("clearCart");
|
| 119 |
+
const checkoutButton = document.getElementById("checkOut");
|
| 120 |
+
|
| 121 |
+
addToCartButtons.forEach((button) => {
|
| 122 |
+
button.addEventListener("click", addToCartHandler);
|
| 123 |
+
});
|
| 124 |
+
|
| 125 |
+
clearCartButton.addEventListener("click", clearCartHandler);
|
| 126 |
+
checkoutButton.addEventListener("click", checkoutHandler);
|
| 127 |
+
|
| 128 |
+
updateCartUI();
|
| 129 |
+
});
|
| 130 |
+
|
| 131 |
+
function addToCartHandler(event) {
|
| 132 |
+
const featuredCard = event.target.closest(".featured__card");
|
| 133 |
+
|
| 134 |
+
const productName = featuredCard.querySelector(".featured__title").innerText;
|
| 135 |
+
const productPrice =
|
| 136 |
+
parseFloat(
|
| 137 |
+
featuredCard.querySelector(".featured__discount").dataset.price
|
| 138 |
+
) || 0;
|
| 139 |
+
|
| 140 |
+
alert(`Đã thêm vào giỏ hàng: ${productName}`);
|
| 141 |
+
|
| 142 |
+
addToCart(productName, productPrice);
|
| 143 |
+
|
| 144 |
+
updateCartUI();
|
| 145 |
+
}
|
| 146 |
+
|
| 147 |
+
function addToCart(productName, productPrice) {
|
| 148 |
+
let cartItems = JSON.parse(localStorage.getItem("cartItems")) || [];
|
| 149 |
+
|
| 150 |
+
cartItems.push({ name: productName, price: productPrice });
|
| 151 |
+
|
| 152 |
+
localStorage.setItem("cartItems", JSON.stringify(cartItems));
|
| 153 |
+
}
|
| 154 |
+
|
| 155 |
+
function updateCartUI() {
|
| 156 |
+
const cartItemsContainer = document.getElementById("cartItemsContainer");
|
| 157 |
+
const cartItems = JSON.parse(localStorage.getItem("cartItems")) || [];
|
| 158 |
+
|
| 159 |
+
cartItemsContainer.innerHTML = "";
|
| 160 |
+
|
| 161 |
+
cartItems.forEach((item) => {
|
| 162 |
+
const cartItemElement = document.createElement("div");
|
| 163 |
+
cartItemElement.innerText = `${item.name} - ${item.price} VND`;
|
| 164 |
+
cartItemsContainer.appendChild(cartItemElement);
|
| 165 |
+
});
|
| 166 |
+
|
| 167 |
+
const totalAmount = calculateTotalAmount(cartItems);
|
| 168 |
+
displayTotalAmount(totalAmount);
|
| 169 |
+
}
|
| 170 |
+
|
| 171 |
+
function calculateTotalAmount(cartItems) {
|
| 172 |
+
return cartItems.reduce((total, item) => total + item.price, 0);
|
| 173 |
+
}
|
| 174 |
+
|
| 175 |
+
function displayTotalAmount(amount) {
|
| 176 |
+
let totalAmountContainer = document.getElementById("totalAmountContainer");
|
| 177 |
+
|
| 178 |
+
if (!totalAmountContainer) {
|
| 179 |
+
totalAmountContainer = document.createElement("div");
|
| 180 |
+
totalAmountContainer.id = "totalAmountContainer";
|
| 181 |
+
const bagForm = document.querySelector(".bag__form");
|
| 182 |
+
bagForm.appendChild(totalAmountContainer);
|
| 183 |
+
}
|
| 184 |
+
|
| 185 |
+
totalAmountContainer.innerText = `Tổng cộng: ${amount} VND`;
|
| 186 |
+
}
|
| 187 |
+
|
| 188 |
+
function clearCartHandler() {
|
| 189 |
+
localStorage.removeItem("cartItems");
|
| 190 |
+
|
| 191 |
+
updateCartUI();
|
| 192 |
+
}
|
| 193 |
+
|
| 194 |
+
function checkoutHandler() {
|
| 195 |
+
alert("Đã thanh toán thành công!");
|
| 196 |
+
|
| 197 |
+
resetCart();
|
| 198 |
+
|
| 199 |
+
updateCartUI();
|
| 200 |
+
}
|
| 201 |
+
|
| 202 |
+
function resetCart() {
|
| 203 |
+
localStorage.removeItem("cartItems");
|
| 204 |
+
}
|
| 205 |
+
|
| 206 |
+
/*=============== NEW SWIPER ===============*/
|
| 207 |
+
let swiperNew = new Swiper(".new__swiper", {
|
| 208 |
+
loop: false,
|
| 209 |
+
spaceBetween: 16,
|
| 210 |
+
slidesPerView: "auto",
|
| 211 |
+
|
| 212 |
+
breakpoints: {
|
| 213 |
+
1150: {
|
| 214 |
+
slidesPerView: 3,
|
| 215 |
+
},
|
| 216 |
+
},
|
| 217 |
+
});
|
| 218 |
+
|
| 219 |
+
/*=============== TESTIMONIAL SWIPER ===============*/
|
| 220 |
+
let swiperTestimonial = new Swiper(".testimonial__swiper", {
|
| 221 |
+
loop: true,
|
| 222 |
+
spaceBetween: 16,
|
| 223 |
+
grabCursor: true,
|
| 224 |
+
slidesPerView: "auto",
|
| 225 |
+
centeredSlides: "auto",
|
| 226 |
+
|
| 227 |
+
breakpoints: {
|
| 228 |
+
1150: {
|
| 229 |
+
slidesPerView: 3,
|
| 230 |
+
centeredSlides: false,
|
| 231 |
+
},
|
| 232 |
+
},
|
| 233 |
+
});
|
| 234 |
+
|
| 235 |
+
/*=============== SHOW SCROLL UP ===============*/
|
| 236 |
+
const scrollUp = () => {
|
| 237 |
+
const scrollUp = document.getElementById("scroll-up");
|
| 238 |
+
// When the scroll is higher than 350 viewport height, add the show-scroll class to the a tag with the scrollup class
|
| 239 |
+
this.scrollY >= 350
|
| 240 |
+
? scrollUp.classList.add("show-scroll")
|
| 241 |
+
: scrollUp.classList.remove("show-scroll");
|
| 242 |
+
};
|
| 243 |
+
window.addEventListener("scroll", scrollUp);
|
| 244 |
+
|
| 245 |
+
/*=============== SCROLL SECTIONS ACTIVE LINK ===============*/
|
| 246 |
+
const sections = document.querySelectorAll("section[id]");
|
| 247 |
+
|
| 248 |
+
const scrollActive = () => {
|
| 249 |
+
const scrollDown = window.scrollY;
|
| 250 |
+
|
| 251 |
+
sections.forEach((current) => {
|
| 252 |
+
const sectionHeight = current.offsetHeight,
|
| 253 |
+
sectionTop = current.offsetTop - 58,
|
| 254 |
+
sectionId = current.getAttribute("id"),
|
| 255 |
+
sectionsClass = document.querySelector(
|
| 256 |
+
".nav__menu a[href*=" + sectionId + "]"
|
| 257 |
+
);
|
| 258 |
+
|
| 259 |
+
if (scrollDown > sectionTop && scrollDown <= sectionTop + sectionHeight) {
|
| 260 |
+
sectionsClass.classList.add("active-link");
|
| 261 |
+
} else {
|
| 262 |
+
sectionsClass.classList.remove("active-link");
|
| 263 |
+
}
|
| 264 |
+
});
|
| 265 |
+
};
|
| 266 |
+
window.addEventListener("scroll", scrollActive);
|
| 267 |
+
|
| 268 |
+
/*=============== DARK LIGHT THEME ===============*/
|
| 269 |
+
const themeButton = document.getElementById("theme-button");
|
| 270 |
+
const darkTheme = "dark-theme";
|
| 271 |
+
const iconTheme = "ri-sun-line";
|
| 272 |
+
|
| 273 |
+
// Previously selected topic (if user selected)
|
| 274 |
+
const selectedTheme = localStorage.getItem("selected-theme");
|
| 275 |
+
const selectedIcon = localStorage.getItem("selected-icon");
|
| 276 |
+
|
| 277 |
+
// We obtain the current theme that the interface has by validating the dark-theme class
|
| 278 |
+
const getCurrentTheme = () =>
|
| 279 |
+
document.body.classList.contains(darkTheme) ? "dark" : "light";
|
| 280 |
+
const getCurrentIcon = () =>
|
| 281 |
+
themeButton.classList.contains(iconTheme) ? "ri-moon-line" : "ri-sun-line";
|
| 282 |
+
|
| 283 |
+
// We validate if the user previously chose a topic
|
| 284 |
+
if (selectedTheme) {
|
| 285 |
+
// If the validation is fulfilled, we ask what the issue was to know if we activated or deactivated the dark
|
| 286 |
+
document.body.classList[selectedTheme === "dark" ? "add" : "remove"](
|
| 287 |
+
darkTheme
|
| 288 |
+
);
|
| 289 |
+
themeButton.classList[selectedIcon === "ri-moon-line" ? "add" : "remove"](
|
| 290 |
+
iconTheme
|
| 291 |
+
);
|
| 292 |
+
}
|
| 293 |
+
|
| 294 |
+
// Activate / deactivate the theme manually with the button
|
| 295 |
+
themeButton.addEventListener("click", () => {
|
| 296 |
+
// Add or remove the dark / icon theme
|
| 297 |
+
document.body.classList.toggle(darkTheme);
|
| 298 |
+
themeButton.classList.toggle(iconTheme);
|
| 299 |
+
// We save the theme and the current icon that the user chose
|
| 300 |
+
localStorage.setItem("selected-theme", getCurrentTheme());
|
| 301 |
+
localStorage.setItem("selected-icon", getCurrentIcon());
|
| 302 |
+
});
|
| 303 |
+
|
| 304 |
+
/*=============== SCROLL REVEAL ANIMATION ===============*/
|
| 305 |
+
const sr = ScrollReveal({
|
| 306 |
+
origin: "top",
|
| 307 |
+
distance: "60px",
|
| 308 |
+
duration: 2500,
|
| 309 |
+
delay: 400,
|
| 310 |
+
// reset: true, // Animations repeat
|
| 311 |
+
});
|
| 312 |
+
|
| 313 |
+
sr.reveal(`.home__data, .featured__container, .new__container,
|
| 314 |
+
.join__data, .testimonial__container, .footer`);
|
| 315 |
+
sr.reveal(`.home__images`, { delay: 600 });
|
| 316 |
+
sr.reveal(`.services__card`, { interval: 100 });
|
| 317 |
+
sr.reveal(`.discount__data`, { origin: "left" });
|
| 318 |
+
sr.reveal(`.discount__images`, { origin: "right" });
|
| 319 |
+
|
| 320 |
+
/*=============== OPEN DETAIL TAB ===============*/
|
| 321 |
+
function openDetailPage() {
|
| 322 |
+
// Đường dẫn tới trang detail.html
|
| 323 |
+
var detailPageURL = "product_detail.html";
|
| 324 |
+
|
| 325 |
+
// Mở tab mới
|
| 326 |
+
window.open(detailPageURL, "_blank");
|
| 327 |
+
}
|
| 328 |
+
|
| 329 |
+
/*================ CART ========================*/
|
| 330 |
+
/*=============== FEATURED ADD TO CART ===============*/
|
| 331 |
+
document.addEventListener("DOMContentLoaded", function () {
|
| 332 |
+
const addToCartButtons = document.querySelectorAll(".featured__card .button");
|
| 333 |
+
const clearCartButton = document.getElementById("clearCart");
|
| 334 |
+
const checkoutButton = document.getElementById("checkOut");
|
| 335 |
+
|
| 336 |
+
addToCartButtons.forEach((button) => {
|
| 337 |
+
button.addEventListener("click", addToCartHandler);
|
| 338 |
+
});
|
| 339 |
+
|
| 340 |
+
clearCartButton.addEventListener("click", clearCartHandler);
|
| 341 |
+
checkoutButton.addEventListener("click", checkoutHandler);
|
| 342 |
+
|
| 343 |
+
updateCartUI();
|
| 344 |
+
});
|
| 345 |
+
|
| 346 |
+
function addToCartHandler(event) {
|
| 347 |
+
const featuredCard = event.target.closest(".featured__card");
|
| 348 |
+
|
| 349 |
+
const productName = featuredCard.querySelector(".featured__title").innerText;
|
| 350 |
+
const productPrice =
|
| 351 |
+
parseFloat(
|
| 352 |
+
featuredCard.querySelector(".featured__discount").dataset.price
|
| 353 |
+
) || 0;
|
| 354 |
+
|
| 355 |
+
alert(`Đã thêm vào giỏ hàng: ${productName}`);
|
| 356 |
+
|
| 357 |
+
addToCart(productName, productPrice);
|
| 358 |
+
|
| 359 |
+
updateCartUI();
|
| 360 |
+
}
|
| 361 |
+
|
| 362 |
+
function addToCart(productName, productPrice) {
|
| 363 |
+
let cartItems = JSON.parse(localStorage.getItem("cartItems")) || [];
|
| 364 |
+
|
| 365 |
+
cartItems.push({ name: productName, price: productPrice });
|
| 366 |
+
|
| 367 |
+
localStorage.setItem("cartItems", JSON.stringify(cartItems));
|
| 368 |
+
}
|
| 369 |
+
|
| 370 |
+
function updateCartUI() {
|
| 371 |
+
const cartItemsContainer = document.getElementById("cartItemsContainer");
|
| 372 |
+
const cartItems = JSON.parse(localStorage.getItem("cartItems")) || [];
|
| 373 |
+
|
| 374 |
+
cartItemsContainer.innerHTML = "";
|
| 375 |
+
|
| 376 |
+
cartItems.forEach((item) => {
|
| 377 |
+
const cartItemElement = document.createElement("div");
|
| 378 |
+
cartItemElement.innerText = `${item.name} - ${item.price} VND`;
|
| 379 |
+
cartItemsContainer.appendChild(cartItemElement);
|
| 380 |
+
});
|
| 381 |
+
|
| 382 |
+
const totalAmount = calculateTotalAmount(cartItems);
|
| 383 |
+
displayTotalAmount(totalAmount);
|
| 384 |
+
}
|
| 385 |
+
|
| 386 |
+
function calculateTotalAmount(cartItems) {
|
| 387 |
+
return cartItems.reduce((total, item) => total + item.price, 0);
|
| 388 |
+
}
|
| 389 |
+
|
| 390 |
+
function displayTotalAmount(amount) {
|
| 391 |
+
let totalAmountContainer = document.getElementById("totalAmountContainer");
|
| 392 |
+
|
| 393 |
+
if (!totalAmountContainer) {
|
| 394 |
+
totalAmountContainer = document.createElement("div");
|
| 395 |
+
totalAmountContainer.id = "totalAmountContainer";
|
| 396 |
+
const bagForm = document.querySelector(".bag__form");
|
| 397 |
+
bagForm.appendChild(totalAmountContainer);
|
| 398 |
+
}
|
| 399 |
+
|
| 400 |
+
totalAmountContainer.innerText = `Tổng cộng: ${amount} VND`;
|
| 401 |
+
}
|
| 402 |
+
|
| 403 |
+
function clearCartHandler() {
|
| 404 |
+
localStorage.removeItem("cartItems");
|
| 405 |
+
|
| 406 |
+
updateCartUI();
|
| 407 |
+
}
|
| 408 |
+
|
| 409 |
+
function checkoutHandler() {
|
| 410 |
+
alert("Đã thanh toán thành công!");
|
| 411 |
+
|
| 412 |
+
resetCart();
|
| 413 |
+
|
| 414 |
+
updateCartUI();
|
| 415 |
+
}
|
| 416 |
+
|
| 417 |
+
function resetCart() {
|
| 418 |
+
localStorage.removeItem("cartItems");
|
| 419 |
+
}
|
assets/js/scrollreveal.min.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*! @license ScrollReveal v4.0.9
|
| 2 |
+
|
| 3 |
+
Copyright 2021 Fisssion LLC.
|
| 4 |
+
|
| 5 |
+
Licensed under the GNU General Public License 3.0 for
|
| 6 |
+
compatible open source projects and non-commercial use.
|
| 7 |
+
|
| 8 |
+
For commercial sites, themes, projects, and applications,
|
| 9 |
+
keep your source code private/proprietary by purchasing
|
| 10 |
+
a commercial license from https://scrollrevealjs.org/
|
| 11 |
+
*/
|
| 12 |
+
var ScrollReveal=function(){"use strict";var r={delay:0,distance:"0",duration:600,easing:"cubic-bezier(0.5, 0, 0, 1)",interval:0,opacity:0,origin:"bottom",rotate:{x:0,y:0,z:0},scale:1,cleanup:!1,container:document.documentElement,desktop:!0,mobile:!0,reset:!1,useDelay:"always",viewFactor:0,viewOffset:{top:0,right:0,bottom:0,left:0},afterReset:function(){},afterReveal:function(){},beforeReset:function(){},beforeReveal:function(){}};var n={success:function(){document.documentElement.classList.add("sr"),document.body?document.body.style.height="100%":document.addEventListener("DOMContentLoaded",function(){document.body.style.height="100%"})},failure:function(){return document.documentElement.classList.remove("sr"),{clean:function(){},destroy:function(){},reveal:function(){},sync:function(){},get noop(){return!0}}}};function o(e){return"object"==typeof window.Node?e instanceof window.Node:null!==e&&"object"==typeof e&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName}function u(e,t){if(void 0===t&&(t=document),e instanceof Array)return e.filter(o);if(o(e))return[e];if(n=e,i=Object.prototype.toString.call(n),"object"==typeof window.NodeList?n instanceof window.NodeList:null!==n&&"object"==typeof n&&"number"==typeof n.length&&/^\[object (HTMLCollection|NodeList|Object)\]$/.test(i)&&(0===n.length||o(n[0])))return Array.prototype.slice.call(e);var n,i;if("string"==typeof e)try{var r=t.querySelectorAll(e);return Array.prototype.slice.call(r)}catch(e){return[]}return[]}function s(e){return null!==e&&e instanceof Object&&(e.constructor===Object||"[object Object]"===Object.prototype.toString.call(e))}function f(n,i){if(s(n))return Object.keys(n).forEach(function(e){return i(n[e],e,n)});if(n instanceof Array)return n.forEach(function(e,t){return i(e,t,n)});throw new TypeError("Expected either an array or object literal.")}function h(e){for(var t=[],n=arguments.length-1;0<n--;)t[n]=arguments[n+1];if(this.constructor.debug&&console){var i="%cScrollReveal: "+e;t.forEach(function(e){return i+="\n — "+e}),console.log(i,"color: #ea654b;")}}function t(){var n=this,i={active:[],stale:[]},t={active:[],stale:[]},r={active:[],stale:[]};try{f(u("[data-sr-id]"),function(e){var t=parseInt(e.getAttribute("data-sr-id"));i.active.push(t)})}catch(e){throw e}f(this.store.elements,function(e){-1===i.active.indexOf(e.id)&&i.stale.push(e.id)}),f(i.stale,function(e){return delete n.store.elements[e]}),f(this.store.elements,function(e){-1===r.active.indexOf(e.containerId)&&r.active.push(e.containerId),e.hasOwnProperty("sequence")&&-1===t.active.indexOf(e.sequence.id)&&t.active.push(e.sequence.id)}),f(this.store.containers,function(e){-1===r.active.indexOf(e.id)&&r.stale.push(e.id)}),f(r.stale,function(e){var t=n.store.containers[e].node;t.removeEventListener("scroll",n.delegate),t.removeEventListener("resize",n.delegate),delete n.store.containers[e]}),f(this.store.sequences,function(e){-1===t.active.indexOf(e.id)&&t.stale.push(e.id)}),f(t.stale,function(e){return delete n.store.sequences[e]})}function N(e){if(e.constructor!==Array)throw new TypeError("Expected array.");if(16===e.length)return e;if(6!==e.length)throw new RangeError("Expected array with either 6 or 16 values.");var t=z();return t[0]=e[0],t[1]=e[1],t[4]=e[2],t[5]=e[3],t[12]=e[4],t[13]=e[5],t}function z(){for(var e=[],t=0;t<16;t++)t%5==0?e.push(1):e.push(0);return e}function F(e,t){for(var n=N(e),i=N(t),r=[],o=0;o<4;o++)for(var s=[n[o],n[o+4],n[o+8],n[o+12]],a=0;a<4;a++){var c=4*a,l=[i[c],i[c+1],i[c+2],i[c+3]],d=s[0]*l[0]+s[1]*l[1]+s[2]*l[2]+s[3]*l[3];r[o+c]=d}return r}function D(e,t){var n=z();return n[0]=e,n[5]="number"==typeof t?t:e,n}var S=function(){var n={},i=document.documentElement.style;function e(e,t){if(void 0===t&&(t=i),e&&"string"==typeof e){if(n[e])return n[e];if("string"==typeof t[e])return n[e]=e;if("string"==typeof t["-webkit-"+e])return n[e]="-webkit-"+e;throw new RangeError('Unable to find "'+e+'" style property.')}throw new TypeError("Expected a string.")}return e.clearCache=function(){return n={}},e}();function p(e){var t=window.getComputedStyle(e.node),n=t.position,i=e.config,r={},o=(e.node.getAttribute("style")||"").match(/[\w-]+\s*:\s*[^;]+\s*/gi)||[];r.computed=o?o.map(function(e){return e.trim()}).join("; ")+";":"",r.generated=o.some(function(e){return e.match(/visibility\s?:\s?visible/i)})?r.computed:o.concat(["visibility: visible"]).map(function(e){return e.trim()}).join("; ")+";";var s,a,c,l,d,u,f,h,p,m,y,v,g,b=parseFloat(t.opacity),w=isNaN(parseFloat(i.opacity))?parseFloat(t.opacity):parseFloat(i.opacity),E={computed:b!==w?"opacity: "+b+";":"",generated:b!==w?"opacity: "+w+";":""},j=[];if(parseFloat(i.distance)){var T="top"===i.origin||"bottom"===i.origin?"Y":"X",k=i.distance;"top"!==i.origin&&"left"!==i.origin||(k=/^-/.test(k)?k.substr(1):"-"+k);var O=k.match(/(^-?\d+\.?\d?)|(em$|px$|%$)/g),x=O[0];switch(O[1]){case"em":k=parseInt(t.fontSize)*x;break;case"px":k=x;break;case"%":k="Y"===T?e.node.getBoundingClientRect().height*x/100:e.node.getBoundingClientRect().width*x/100;break;default:throw new RangeError("Unrecognized or missing distance unit.")}"Y"===T?j.push((c=k,(l=z())[13]=c,l)):j.push((s=k,(a=z())[12]=s,a))}i.rotate.x&&j.push((d=i.rotate.x,u=Math.PI/180*d,(f=z())[5]=f[10]=Math.cos(u),f[6]=f[9]=Math.sin(u),f[9]*=-1,f)),i.rotate.y&&j.push((h=i.rotate.y,p=Math.PI/180*h,(m=z())[0]=m[10]=Math.cos(p),m[2]=m[8]=Math.sin(p),m[2]*=-1,m)),i.rotate.z&&j.push((y=i.rotate.z,v=Math.PI/180*y,(g=z())[0]=g[5]=Math.cos(v),g[1]=g[4]=Math.sin(v),g[4]*=-1,g)),1!==i.scale&&(0===i.scale?j.push(D(2e-4)):j.push(D(i.scale)));var R={};if(j.length){R.property=S("transform"),R.computed={raw:t[R.property],matrix:function(e){if("string"==typeof e){var t=e.match(/matrix(3d)?\(([^)]+)\)/);if(t)return N(t[2].split(", ").map(parseFloat))}return z()}(t[R.property])},j.unshift(R.computed.matrix);var q=j.reduce(F);R.generated={initial:R.property+": matrix3d("+q.join(", ")+");",final:R.property+": matrix3d("+R.computed.matrix.join(", ")+");"}}else R.generated={initial:"",final:""};var A={};if(E.generated||R.generated.initial){A.property=S("transition"),A.computed=t[A.property],A.fragments=[];var P=i.delay,L=i.duration,M=i.easing;E.generated&&A.fragments.push({delayed:"opacity "+L/1e3+"s "+M+" "+P/1e3+"s",instant:"opacity "+L/1e3+"s "+M+" 0s"}),R.generated.initial&&A.fragments.push({delayed:R.property+" "+L/1e3+"s "+M+" "+P/1e3+"s",instant:R.property+" "+L/1e3+"s "+M+" 0s"}),A.computed&&!A.computed.match(/all 0s|none 0s/)&&A.fragments.unshift({delayed:A.computed,instant:A.computed});var I=A.fragments.reduce(function(e,t,n){return e.delayed+=0===n?t.delayed:", "+t.delayed,e.instant+=0===n?t.instant:", "+t.instant,e},{delayed:"",instant:""});A.generated={delayed:A.property+": "+I.delayed+";",instant:A.property+": "+I.instant+";"}}else A.generated={delayed:"",instant:""};return{inline:r,opacity:E,position:n,transform:R,transition:A}}function m(r,e){e.split(";").forEach(function(e){var t=e.split(":"),n=t[0],i=t.slice(1);n&&i&&(r.style[n.trim()]=i.join(":"))})}function y(e){var i,r=this;try{f(u(e),function(e){var t=e.getAttribute("data-sr-id");if(null!==t){i=!0;var n=r.store.elements[t];n.callbackTimer&&window.clearTimeout(n.callbackTimer.clock),m(n.node,n.styles.inline.generated),e.removeAttribute("data-sr-id"),delete r.store.elements[t]}})}catch(e){return h.call(this,"Clean failed.",e.message)}if(i)try{t.call(this)}catch(e){return h.call(this,"Clean failed.",e.message)}}function v(n){for(var e=[],t=arguments.length-1;0<t--;)e[t]=arguments[t+1];if(s(n))return f(e,function(e){f(e,function(e,t){s(e)?(n[t]&&s(n[t])||(n[t]={}),v(n[t],e)):n[t]=e})}),n;throw new TypeError("Target must be an object literal.")}function g(e){return void 0===e&&(e=navigator.userAgent),/Android|iPhone|iPad|iPod/i.test(e)}var e,b=(e=0,function(){return e++});function w(){var n=this;t.call(this),f(this.store.elements,function(e){var t=[e.styles.inline.generated];e.visible?(t.push(e.styles.opacity.computed),t.push(e.styles.transform.generated.final),e.revealed=!0):(t.push(e.styles.opacity.generated),t.push(e.styles.transform.generated.initial),e.revealed=!1),m(e.node,t.filter(function(e){return""!==e}).join(" "))}),f(this.store.containers,function(e){var t=e.node===document.documentElement?window:e.node;t.addEventListener("scroll",n.delegate),t.addEventListener("resize",n.delegate)}),this.delegate(),this.initTimeout=null}function c(e,t){void 0===t&&(t={});var n=t.pristine||this.pristine,i="always"===e.config.useDelay||"onload"===e.config.useDelay&&n||"once"===e.config.useDelay&&!e.seen,r=e.visible&&!e.revealed,o=!e.visible&&e.revealed&&e.config.reset;return t.reveal||r?function(e,t){var n=[e.styles.inline.generated,e.styles.opacity.computed,e.styles.transform.generated.final];t?n.push(e.styles.transition.generated.delayed):n.push(e.styles.transition.generated.instant);e.revealed=e.seen=!0,m(e.node,n.filter(function(e){return""!==e}).join(" ")),a.call(this,e,t)}.call(this,e,i):t.reset||o?function(e){var t=[e.styles.inline.generated,e.styles.opacity.generated,e.styles.transform.generated.initial,e.styles.transition.generated.instant];e.revealed=!1,m(e.node,t.filter(function(e){return""!==e}).join(" ")),a.call(this,e)}.call(this,e):void 0}function a(e,t){var n=this,i=t?e.config.duration+e.config.delay:e.config.duration,r=e.revealed?e.config.beforeReveal:e.config.beforeReset,o=e.revealed?e.config.afterReveal:e.config.afterReset,s=0;e.callbackTimer&&(s=Date.now()-e.callbackTimer.start,window.clearTimeout(e.callbackTimer.clock)),r(e.node),e.callbackTimer={start:Date.now(),clock:window.setTimeout(function(){o(e.node),e.callbackTimer=null,e.revealed&&!e.config.reset&&e.config.cleanup&&y.call(n,e.node)},i-s)}}function l(e,t){if(void 0===t&&(t=this.pristine),!e.visible&&e.revealed&&e.config.reset)return c.call(this,e,{reset:!0});var n=this.store.sequences[e.sequence.id],i=e.sequence.index;if(n){var r=new d(n,"visible",this.store),o=new d(n,"revealed",this.store);if(n.models={visible:r,revealed:o},!o.body.length){var s=n.members[r.body[0]],a=this.store.elements[s];if(a)return j.call(this,n,r.body[0],-1,t),j.call(this,n,r.body[0],1,t),c.call(this,a,{reveal:!0,pristine:t})}if(!n.blocked.head&&i===[].concat(o.head).pop()&&i>=[].concat(r.body).shift())return j.call(this,n,i,-1,t),c.call(this,e,{reveal:!0,pristine:t});if(!n.blocked.foot&&i===[].concat(o.foot).shift()&&i<=[].concat(r.body).pop())return j.call(this,n,i,1,t),c.call(this,e,{reveal:!0,pristine:t})}}function E(e){var t=Math.abs(e);if(isNaN(t))throw new RangeError("Invalid sequence interval.");this.id=b(),this.interval=Math.max(t,16),this.members=[],this.models={},this.blocked={head:!1,foot:!1}}function d(e,i,r){var o=this;this.head=[],this.body=[],this.foot=[],f(e.members,function(e,t){var n=r.elements[e];n&&n[i]&&o.body.push(t)}),this.body.length&&f(e.members,function(e,t){var n=r.elements[e];n&&!n[i]&&(t<o.body[0]?o.head.push(t):o.foot.push(t))})}function j(e,t,n,i){var r=this,o=["head",null,"foot"][1+n],s=e.members[t+n],a=this.store.elements[s];e.blocked[o]=!0,setTimeout(function(){e.blocked[o]=!1,a&&l.call(r,a,i)},e.interval)}function i(e,a,t){var c=this;void 0===a&&(a={}),void 0===t&&(t=!1);var l,d=[],n=a.interval||r.interval;try{n&&(l=new E(n));var i=u(e);if(!i.length)throw new Error("Invalid reveal target.");f(i.reduce(function(e,t){var n={},i=t.getAttribute("data-sr-id");i?(v(n,c.store.elements[i]),m(n.node,n.styles.inline.computed)):(n.id=b(),n.node=t,n.seen=!1,n.revealed=!1,n.visible=!1);var r=v({},n.config||c.defaults,a);if(!r.mobile&&g()||!r.desktop&&!g())return i&&y.call(c,n),e;var o,s=u(r.container)[0];if(!s)throw new Error("Invalid container.");return s.contains(t)&&(null===(o=function(t){var e=[],n=arguments.length-1;for(;0<n--;)e[n]=arguments[n+1];var i=null;return f(e,function(e){f(e,function(e){null===i&&e.node===t&&(i=e.id)})}),i}(s,d,c.store.containers))&&(o=b(),d.push({id:o,node:s})),n.config=r,n.containerId=o,n.styles=p(n),l&&(n.sequence={id:l.id,index:l.members.length},l.members.push(n.id)),e.push(n)),e},[]),function(e){(c.store.elements[e.id]=e).node.setAttribute("data-sr-id",e.id)})}catch(e){return h.call(this,"Reveal failed.",e.message)}f(d,function(e){c.store.containers[e.id]={id:e.id,node:e.node}}),l&&(this.store.sequences[l.id]=l),!0!==t&&(this.store.history.push({target:e,options:a}),this.initTimeout&&window.clearTimeout(this.initTimeout),this.initTimeout=window.setTimeout(w.bind(this),0))}var T,k=Math.sign||function(e){return(0<e)-(e<0)||+e},O=(T=Date.now(),function(e){var t=Date.now();16<t-T?e(T=t):setTimeout(function(){return O(e)},0)}),x=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||O;function R(e,t){for(var n=t?e.node.clientHeight:e.node.offsetHeight,i=t?e.node.clientWidth:e.node.offsetWidth,r=0,o=0,s=e.node;isNaN(s.offsetTop)||(r+=s.offsetTop),isNaN(s.offsetLeft)||(o+=s.offsetLeft),s=s.offsetParent;);return{bounds:{top:r,right:o+i,bottom:r+n,left:o},height:n,width:i}}function q(e,t){var i=this;void 0===e&&(e={type:"init"}),void 0===t&&(t=this.store.elements),x(function(){var n="init"===e.type||"resize"===e.type;f(i.store.containers,function(e){n&&(e.geometry=R.call(i,e,!0));var t=function(e){var t,n;return n=e.node===document.documentElement?(t=window.pageYOffset,window.pageXOffset):(t=e.node.scrollTop,e.node.scrollLeft),{top:t,left:n}}.call(i,e);e.scroll&&(e.direction={x:k(t.left-e.scroll.left),y:k(t.top-e.scroll.top)}),e.scroll=t}),f(t,function(e){(n||void 0===e.geometry)&&(e.geometry=R.call(i,e)),e.visible=function(e){void 0===e&&(e={});var t=this.store.containers[e.containerId];if(t){var n=Math.max(0,Math.min(1,e.config.viewFactor)),i=e.config.viewOffset,r=e.geometry.bounds.top+e.geometry.height*n,o=e.geometry.bounds.right-e.geometry.width*n,s=e.geometry.bounds.bottom-e.geometry.height*n,a=e.geometry.bounds.left+e.geometry.width*n,c=t.geometry.bounds.top+t.scroll.top+i.top,l=t.geometry.bounds.right+t.scroll.left-i.right,d=t.geometry.bounds.bottom+t.scroll.top-i.bottom,u=t.geometry.bounds.left+t.scroll.left+i.left;return r<d&&u<o&&c<s&&a<l||"fixed"===e.styles.position}}.call(i,e)}),f(t,function(e){e.sequence?l.call(i,e):c.call(i,e)}),i.pristine=!1})}var A,P,L,M,I,C,W,Y,$="4.0.9";function H(e){var t;if(void 0===e&&(e={}),void 0===this||Object.getPrototypeOf(this)!==H.prototype)return new H(e);if(!H.isSupported())return h.call(this,"Instantiation failed.","This browser is not supported."),n.failure();try{t=v({},C||r,e)}catch(e){return h.call(this,"Invalid configuration.",e.message),n.failure()}try{if(!u(t.container)[0])throw new Error("Invalid container.")}catch(e){return h.call(this,e.message),n.failure()}return!(C=t).mobile&&g()||!C.desktop&&!g()?(h.call(this,"This device is disabled.","desktop: "+C.desktop,"mobile: "+C.mobile),n.failure()):(n.success(),this.store={containers:{},elements:{},history:[],sequences:{}},this.pristine=!0,A=A||q.bind(this),P=P||function(){var n=this;f(this.store.elements,function(e){m(e.node,e.styles.inline.generated),e.node.removeAttribute("data-sr-id")}),f(this.store.containers,function(e){var t=e.node===document.documentElement?window:e.node;t.removeEventListener("scroll",n.delegate),t.removeEventListener("resize",n.delegate)}),this.store={containers:{},elements:{},history:[],sequences:{}}}.bind(this),L=L||i.bind(this),M=M||y.bind(this),I=I||function(){var t=this;f(this.store.history,function(e){i.call(t,e.target,e.options,!0)}),w.call(this)}.bind(this),Object.defineProperty(this,"delegate",{get:function(){return A}}),Object.defineProperty(this,"destroy",{get:function(){return P}}),Object.defineProperty(this,"reveal",{get:function(){return L}}),Object.defineProperty(this,"clean",{get:function(){return M}}),Object.defineProperty(this,"sync",{get:function(){return I}}),Object.defineProperty(this,"defaults",{get:function(){return C}}),Object.defineProperty(this,"version",{get:function(){return $}}),Object.defineProperty(this,"noop",{get:function(){return!1}}),Y||(Y=this))}return H.isSupported=function(){return("transform"in(t=document.documentElement.style)||"WebkitTransform"in t)&&("transition"in(e=document.documentElement.style)||"WebkitTransition"in e);var e,t},Object.defineProperty(H,"debug",{get:function(){return W||!1},set:function(e){return W="boolean"==typeof e?e:W}}),H(),H}();
|
assets/js/swiper-bundle.min.js
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
assets/scss/base/_base.scss
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== BASE ===============*/
|
| 2 |
+
*{
|
| 3 |
+
box-sizing: border-box;
|
| 4 |
+
padding: 0;
|
| 5 |
+
margin: 0;
|
| 6 |
+
}
|
| 7 |
+
|
| 8 |
+
html{
|
| 9 |
+
scroll-behavior: smooth;
|
| 10 |
+
}
|
| 11 |
+
|
| 12 |
+
body,
|
| 13 |
+
input,
|
| 14 |
+
button{
|
| 15 |
+
font-family: var(--body-font);
|
| 16 |
+
font-size: var(--normal-font-size);
|
| 17 |
+
}
|
| 18 |
+
|
| 19 |
+
body{
|
| 20 |
+
background-color: var(--body-color);
|
| 21 |
+
color: var(--text-color);
|
| 22 |
+
transition: background-color .4s;
|
| 23 |
+
}
|
| 24 |
+
|
| 25 |
+
input,
|
| 26 |
+
button{
|
| 27 |
+
border: none;
|
| 28 |
+
outline: none;
|
| 29 |
+
}
|
| 30 |
+
|
| 31 |
+
h1,h2,h3,h4{
|
| 32 |
+
color: var(--title-color);
|
| 33 |
+
font-family: var(--second-font);
|
| 34 |
+
font-weight: var(--font-medium);
|
| 35 |
+
}
|
| 36 |
+
|
| 37 |
+
ul{
|
| 38 |
+
list-style: none;
|
| 39 |
+
}
|
| 40 |
+
|
| 41 |
+
a{
|
| 42 |
+
text-decoration: none;
|
| 43 |
+
}
|
| 44 |
+
|
| 45 |
+
img{
|
| 46 |
+
display: block;
|
| 47 |
+
max-width: 100%;
|
| 48 |
+
height: auto;
|
| 49 |
+
}
|
assets/scss/components/_breakpoints.scss
ADDED
|
@@ -0,0 +1,279 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== BREAKPOINTS ===============*/
|
| 2 |
+
/* For small devices */
|
| 3 |
+
@media screen and (max-width: 320px){
|
| 4 |
+
.container{
|
| 5 |
+
margin-inline: 1rem;
|
| 6 |
+
}
|
| 7 |
+
|
| 8 |
+
.nav__menu{
|
| 9 |
+
padding-inline: 3rem;
|
| 10 |
+
}
|
| 11 |
+
|
| 12 |
+
.discount{
|
| 13 |
+
&__img-1,
|
| 14 |
+
&__img-2{
|
| 15 |
+
width: 140px;
|
| 16 |
+
}
|
| 17 |
+
}
|
| 18 |
+
|
| 19 |
+
.new__card{
|
| 20 |
+
flex-direction: column;
|
| 21 |
+
}
|
| 22 |
+
|
| 23 |
+
.testimonial__card{
|
| 24 |
+
padding-inline: 1rem;
|
| 25 |
+
}
|
| 26 |
+
|
| 27 |
+
.footer__data{
|
| 28 |
+
grid-template-columns: 1fr;
|
| 29 |
+
row-gap: 2rem;
|
| 30 |
+
}
|
| 31 |
+
}
|
| 32 |
+
|
| 33 |
+
/* For medium devices */
|
| 34 |
+
@media screen and (min-width: 450px){
|
| 35 |
+
.featured__card{
|
| 36 |
+
width: 290px;
|
| 37 |
+
}
|
| 38 |
+
|
| 39 |
+
.new__card{
|
| 40 |
+
width: 390px;
|
| 41 |
+
}
|
| 42 |
+
|
| 43 |
+
.testimonial__card{
|
| 44 |
+
width: 320px;
|
| 45 |
+
}
|
| 46 |
+
}
|
| 47 |
+
|
| 48 |
+
@media screen and (min-width: 576px){
|
| 49 |
+
.search__form{
|
| 50 |
+
width: 500px;
|
| 51 |
+
margin-inline: auto;
|
| 52 |
+
}
|
| 53 |
+
|
| 54 |
+
.login__form{
|
| 55 |
+
width: 400px;
|
| 56 |
+
justify-self: center;
|
| 57 |
+
}
|
| 58 |
+
|
| 59 |
+
.search__close,
|
| 60 |
+
.login__close{
|
| 61 |
+
width: max-content;
|
| 62 |
+
top: 4rem;
|
| 63 |
+
left: 0;
|
| 64 |
+
right: 0;
|
| 65 |
+
margin-inline: auto;
|
| 66 |
+
}
|
| 67 |
+
|
| 68 |
+
.nav__menu{
|
| 69 |
+
width: 380px;
|
| 70 |
+
margin-inline: auto;
|
| 71 |
+
}
|
| 72 |
+
|
| 73 |
+
.home__container,
|
| 74 |
+
.discount__container{
|
| 75 |
+
grid-template-columns: 420px;
|
| 76 |
+
justify-content: center;
|
| 77 |
+
}
|
| 78 |
+
|
| 79 |
+
.join__form{
|
| 80 |
+
width: 328px;
|
| 81 |
+
justify-self: center;
|
| 82 |
+
}
|
| 83 |
+
|
| 84 |
+
.footer__data{
|
| 85 |
+
grid-template-columns: repeat(3, max-content);
|
| 86 |
+
}
|
| 87 |
+
}
|
| 88 |
+
|
| 89 |
+
@media screen and (min-width: 768px){
|
| 90 |
+
.home{
|
| 91 |
+
&__container{
|
| 92 |
+
grid-template-columns: 580px;
|
| 93 |
+
}
|
| 94 |
+
&__data{
|
| 95 |
+
width: 420px;
|
| 96 |
+
justify-self: center;
|
| 97 |
+
}
|
| 98 |
+
}
|
| 99 |
+
|
| 100 |
+
.services__container{
|
| 101 |
+
grid-template-columns: repeat(3, max-content);
|
| 102 |
+
justify-content: center;
|
| 103 |
+
column-gap: 5rem;
|
| 104 |
+
}
|
| 105 |
+
|
| 106 |
+
.footer__container{
|
| 107 |
+
grid-template-columns: repeat(2, max-content);
|
| 108 |
+
justify-content: space-between;
|
| 109 |
+
}
|
| 110 |
+
}
|
| 111 |
+
|
| 112 |
+
/* For large devices */
|
| 113 |
+
@media screen and (min-width: 1150px){
|
| 114 |
+
.section{
|
| 115 |
+
padding-block: 7rem 2rem;
|
| 116 |
+
}
|
| 117 |
+
|
| 118 |
+
.nav{
|
| 119 |
+
height: calc(var(--header-height) + 2rem);
|
| 120 |
+
column-gap: 4rem;
|
| 121 |
+
|
| 122 |
+
&__link i{
|
| 123 |
+
display: none;
|
| 124 |
+
}
|
| 125 |
+
&__link span{
|
| 126 |
+
display: block;
|
| 127 |
+
}
|
| 128 |
+
&__menu{
|
| 129 |
+
width: initial;
|
| 130 |
+
margin-inline: auto 0;
|
| 131 |
+
}
|
| 132 |
+
&__list{
|
| 133 |
+
column-gap: 4rem;
|
| 134 |
+
}
|
| 135 |
+
&__link{
|
| 136 |
+
font-weight: var(--font-medium);
|
| 137 |
+
}
|
| 138 |
+
}
|
| 139 |
+
|
| 140 |
+
.dark-theme .nav__menu{
|
| 141 |
+
box-shadow: none;
|
| 142 |
+
}
|
| 143 |
+
|
| 144 |
+
.home__data{
|
| 145 |
+
width: initial;
|
| 146 |
+
}
|
| 147 |
+
|
| 148 |
+
.services{
|
| 149 |
+
&__container{
|
| 150 |
+
column-gap: 10rem;
|
| 151 |
+
}
|
| 152 |
+
&__card i{
|
| 153 |
+
font-size: 3.5rem;
|
| 154 |
+
}
|
| 155 |
+
}
|
| 156 |
+
|
| 157 |
+
.featured{
|
| 158 |
+
&__container{
|
| 159 |
+
padding-top: 2rem;
|
| 160 |
+
}
|
| 161 |
+
&__title{
|
| 162 |
+
font-size: var(--h3-font-size);
|
| 163 |
+
}
|
| 164 |
+
}
|
| 165 |
+
|
| 166 |
+
.discount{
|
| 167 |
+
&__container{
|
| 168 |
+
grid-template-columns: 615px 500px;
|
| 169 |
+
justify-content: space-between;
|
| 170 |
+
align-items: center;
|
| 171 |
+
}
|
| 172 |
+
&__data{
|
| 173 |
+
order: 1;
|
| 174 |
+
}
|
| 175 |
+
&__data,
|
| 176 |
+
&__title{
|
| 177 |
+
text-align: initial;
|
| 178 |
+
}
|
| 179 |
+
&__description{
|
| 180 |
+
margin-bottom: 3.5rem;
|
| 181 |
+
}
|
| 182 |
+
&__img-1,
|
| 183 |
+
&__img-2{
|
| 184 |
+
width: 300px;
|
| 185 |
+
}
|
| 186 |
+
}
|
| 187 |
+
|
| 188 |
+
.new{
|
| 189 |
+
&__container{
|
| 190 |
+
padding-top: 2rem;
|
| 191 |
+
}
|
| 192 |
+
&__card{
|
| 193 |
+
padding: 1.5rem;
|
| 194 |
+
}
|
| 195 |
+
&__img{
|
| 196 |
+
width: 120px;
|
| 197 |
+
}
|
| 198 |
+
&__title{
|
| 199 |
+
font-size: var(--h3-font-size);
|
| 200 |
+
}
|
| 201 |
+
}
|
| 202 |
+
|
| 203 |
+
.join__bg{
|
| 204 |
+
object-position: 0 -5rem;
|
| 205 |
+
}
|
| 206 |
+
|
| 207 |
+
.testimonial{
|
| 208 |
+
&__container{
|
| 209 |
+
padding-top: 2rem;
|
| 210 |
+
}
|
| 211 |
+
&__card{
|
| 212 |
+
padding-inline: 2rem;
|
| 213 |
+
}
|
| 214 |
+
&__title{
|
| 215 |
+
font-size: var(--h3-font-size);
|
| 216 |
+
}
|
| 217 |
+
&__description{
|
| 218 |
+
font-size: var(--normal-font-size);
|
| 219 |
+
}
|
| 220 |
+
}
|
| 221 |
+
|
| 222 |
+
.footer{
|
| 223 |
+
padding-block: 6rem 3rem;
|
| 224 |
+
|
| 225 |
+
&__data{
|
| 226 |
+
grid-template-columns: repeat(4, max-content);
|
| 227 |
+
column-gap: 4.5rem;
|
| 228 |
+
}
|
| 229 |
+
&__logo,
|
| 230 |
+
&__title{
|
| 231 |
+
font-size: var(--h2-font-size);
|
| 232 |
+
margin-bottom: 1.5rem;
|
| 233 |
+
}
|
| 234 |
+
&__links{
|
| 235 |
+
row-gap: 1rem;
|
| 236 |
+
}
|
| 237 |
+
&__social{
|
| 238 |
+
column-gap: 1.5rem;
|
| 239 |
+
|
| 240 |
+
&-link{
|
| 241 |
+
font-size: 1.5rem;
|
| 242 |
+
}
|
| 243 |
+
}
|
| 244 |
+
&__copy{
|
| 245 |
+
margin-top: 7.5rem;
|
| 246 |
+
}
|
| 247 |
+
}
|
| 248 |
+
|
| 249 |
+
.scrollup{
|
| 250 |
+
right: 3rem;
|
| 251 |
+
}
|
| 252 |
+
.show-scroll{
|
| 253 |
+
bottom: 3rem;
|
| 254 |
+
}
|
| 255 |
+
}
|
| 256 |
+
|
| 257 |
+
@media screen and (min-width: 1220px){
|
| 258 |
+
.container{
|
| 259 |
+
margin-inline: auto;
|
| 260 |
+
}
|
| 261 |
+
|
| 262 |
+
.home{
|
| 263 |
+
&__container{
|
| 264 |
+
grid-template-columns: 435px 745px;
|
| 265 |
+
align-items: center;
|
| 266 |
+
padding-block: 7rem 2rem;
|
| 267 |
+
}
|
| 268 |
+
&__data{
|
| 269 |
+
text-align: initial;
|
| 270 |
+
}
|
| 271 |
+
&__description{
|
| 272 |
+
margin-bottom: 4rem;
|
| 273 |
+
}
|
| 274 |
+
&__article,
|
| 275 |
+
&__img{
|
| 276 |
+
width: 290px;
|
| 277 |
+
}
|
| 278 |
+
}
|
| 279 |
+
}
|
assets/scss/components/_button.scss
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== BUTTON ===============*/
|
| 2 |
+
.button{
|
| 3 |
+
display: inline-block;
|
| 4 |
+
background-color: var(--first-color);
|
| 5 |
+
color: var(--white-color);
|
| 6 |
+
font-weight: var(--font-semi-bold);
|
| 7 |
+
padding: 1rem 1.5rem;
|
| 8 |
+
transition: box-shadow .4s;
|
| 9 |
+
|
| 10 |
+
&:hover{
|
| 11 |
+
box-shadow: 0 4px 32px hsla(230, 72%, 32%, .4);
|
| 12 |
+
}
|
| 13 |
+
}
|
assets/scss/components/_discount.scss
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== DISCOUNT ===============*/
|
| 2 |
+
.discount{
|
| 3 |
+
&__container{
|
| 4 |
+
row-gap: 3.5rem;
|
| 5 |
+
}
|
| 6 |
+
&__data{
|
| 7 |
+
text-align: center;
|
| 8 |
+
}
|
| 9 |
+
&__title{
|
| 10 |
+
margin-bottom: 1rem;
|
| 11 |
+
}
|
| 12 |
+
&__description{
|
| 13 |
+
margin-bottom: 2rem;
|
| 14 |
+
}
|
| 15 |
+
&__images{
|
| 16 |
+
display: flex;
|
| 17 |
+
justify-content: center;
|
| 18 |
+
}
|
| 19 |
+
&__img-1,
|
| 20 |
+
&__img-2{
|
| 21 |
+
width: 170px;
|
| 22 |
+
}
|
| 23 |
+
&__img-1{
|
| 24 |
+
transform: translateX(1rem) rotate(-10deg);
|
| 25 |
+
}
|
| 26 |
+
&__img-2{
|
| 27 |
+
transform: translateX(-1rem) rotate(10deg);
|
| 28 |
+
}
|
| 29 |
+
}
|
assets/scss/components/_featured.scss
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== FEATURED ===============*/
|
| 2 |
+
.featured{
|
| 3 |
+
&__card{
|
| 4 |
+
position: relative;
|
| 5 |
+
text-align: center;
|
| 6 |
+
background-color: var(--container-color);
|
| 7 |
+
padding: 2rem;
|
| 8 |
+
overflow: hidden;
|
| 9 |
+
border: 2px solid var(--border-color);
|
| 10 |
+
transition: border .4s, background-color .4s;
|
| 11 |
+
}
|
| 12 |
+
&__img{
|
| 13 |
+
width: 150px;
|
| 14 |
+
margin: 0 auto .75rem;
|
| 15 |
+
}
|
| 16 |
+
&__title{
|
| 17 |
+
font-size: var(--h2-font-size);
|
| 18 |
+
margin-bottom: .5rem;
|
| 19 |
+
}
|
| 20 |
+
&__prices{
|
| 21 |
+
display: flex;
|
| 22 |
+
justify-content: center;
|
| 23 |
+
align-items: center;
|
| 24 |
+
column-gap: .75rem;
|
| 25 |
+
margin-bottom: 1.25rem;
|
| 26 |
+
}
|
| 27 |
+
&__discount{
|
| 28 |
+
color: var(--title-color);
|
| 29 |
+
}
|
| 30 |
+
&__price{
|
| 31 |
+
font-size: var(--small-font-size);
|
| 32 |
+
text-decoration: line-through;
|
| 33 |
+
}
|
| 34 |
+
&__card .button{
|
| 35 |
+
cursor: pointer;
|
| 36 |
+
}
|
| 37 |
+
&__actions{
|
| 38 |
+
display: inline-flex;
|
| 39 |
+
flex-direction: column;
|
| 40 |
+
row-gap: .75rem;
|
| 41 |
+
position: absolute;
|
| 42 |
+
top: 2rem;
|
| 43 |
+
right: -1.5rem;
|
| 44 |
+
transition: right .4s;
|
| 45 |
+
|
| 46 |
+
& button{
|
| 47 |
+
background: none;
|
| 48 |
+
font-size: 1.25rem;
|
| 49 |
+
color: var(--first-color);
|
| 50 |
+
cursor: pointer;
|
| 51 |
+
}
|
| 52 |
+
}
|
| 53 |
+
&__card:hover &__actions{
|
| 54 |
+
right: 1.5rem;
|
| 55 |
+
}
|
| 56 |
+
}
|
| 57 |
+
|
| 58 |
+
/* Swiper class */
|
| 59 |
+
.swiper-button-prev::after,
|
| 60 |
+
.swiper-button-next::after{
|
| 61 |
+
content: '';
|
| 62 |
+
}
|
| 63 |
+
|
| 64 |
+
.swiper-button-prev,
|
| 65 |
+
.swiper-button-next{
|
| 66 |
+
width: initial;
|
| 67 |
+
height: initial;
|
| 68 |
+
background-color: var(--container-color);
|
| 69 |
+
border: 2px solid var(--border-color);
|
| 70 |
+
padding: .5rem;
|
| 71 |
+
font-size: 1.5rem;
|
| 72 |
+
color: var(--first-color);
|
| 73 |
+
transition: border .4s, background-color .4s;
|
| 74 |
+
}
|
assets/scss/components/_footer.scss
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== FOOTER ===============*/
|
| 2 |
+
.footer{
|
| 3 |
+
padding-block: 4rem 6rem;
|
| 4 |
+
|
| 5 |
+
&__container{
|
| 6 |
+
row-gap: 3rem;
|
| 7 |
+
}
|
| 8 |
+
&__logo{
|
| 9 |
+
display: inline-flex;
|
| 10 |
+
align-items: center;
|
| 11 |
+
column-gap: .5rem;
|
| 12 |
+
color: var(--first-color);
|
| 13 |
+
font-size: var(--h3-font-size);
|
| 14 |
+
font-family: var(--second-font);
|
| 15 |
+
margin-bottom: 1.25rem;
|
| 16 |
+
|
| 17 |
+
& i{
|
| 18 |
+
font-size: 1.25rem;
|
| 19 |
+
}
|
| 20 |
+
}
|
| 21 |
+
&__data{
|
| 22 |
+
grid-template-columns: repeat(2, max-content);
|
| 23 |
+
gap: 3rem 2rem;
|
| 24 |
+
}
|
| 25 |
+
&__title{
|
| 26 |
+
font-size: var(--h3-font-size);
|
| 27 |
+
margin-bottom: 1.25rem;
|
| 28 |
+
}
|
| 29 |
+
&__links{
|
| 30 |
+
display: grid;
|
| 31 |
+
row-gap: .5rem;
|
| 32 |
+
}
|
| 33 |
+
&__link{
|
| 34 |
+
color: var(--text-color);
|
| 35 |
+
transition: color .4s;
|
| 36 |
+
|
| 37 |
+
&:hover{
|
| 38 |
+
color: var(--first-color);
|
| 39 |
+
}
|
| 40 |
+
}
|
| 41 |
+
&__info{
|
| 42 |
+
font-style: normal;
|
| 43 |
+
}
|
| 44 |
+
&__social{
|
| 45 |
+
display: flex;
|
| 46 |
+
column-gap: 1.25rem;
|
| 47 |
+
|
| 48 |
+
&-link{
|
| 49 |
+
font-size: 1.25rem;
|
| 50 |
+
color: var(--first-color);
|
| 51 |
+
}
|
| 52 |
+
}
|
| 53 |
+
&__copy{
|
| 54 |
+
display: block;
|
| 55 |
+
margin-top: 5rem;
|
| 56 |
+
text-align: center;
|
| 57 |
+
font-size: var(--small-font-size);
|
| 58 |
+
}
|
| 59 |
+
}
|
assets/scss/components/_header.scss
ADDED
|
@@ -0,0 +1,87 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== HEADER & NAV ===============*/
|
| 2 |
+
.header{
|
| 3 |
+
position: fixed;
|
| 4 |
+
top: 0;
|
| 5 |
+
left: 0;
|
| 6 |
+
width: 100%;
|
| 7 |
+
background-color: var(--body-color);
|
| 8 |
+
z-index: var(--z-fixed);
|
| 9 |
+
transition: box-shadow .4s, background-color .4s;
|
| 10 |
+
}
|
| 11 |
+
|
| 12 |
+
.nav{
|
| 13 |
+
height: var(--header-height);
|
| 14 |
+
display: flex;
|
| 15 |
+
justify-content: space-between;
|
| 16 |
+
align-items: center;
|
| 17 |
+
|
| 18 |
+
&__logo{
|
| 19 |
+
display: inline-flex;
|
| 20 |
+
align-items: center;
|
| 21 |
+
column-gap: .5rem;
|
| 22 |
+
color: var(--first-color);
|
| 23 |
+
font-weight: var(--font-medium);
|
| 24 |
+
|
| 25 |
+
& i{
|
| 26 |
+
font-size: 1.25rem;
|
| 27 |
+
}
|
| 28 |
+
}
|
| 29 |
+
// Navigation for mobile devices
|
| 30 |
+
@media screen and (max-width: 1150px){
|
| 31 |
+
&__menu{
|
| 32 |
+
position: fixed;
|
| 33 |
+
bottom: 0;
|
| 34 |
+
left: 0;
|
| 35 |
+
right: 0;
|
| 36 |
+
width: 100%;
|
| 37 |
+
background-color: var(--container-color);
|
| 38 |
+
box-shadow: 0 -8px 32px hsla(0, 0%, 0%, .1);
|
| 39 |
+
padding: 1.25rem 4rem;
|
| 40 |
+
transition: background-color .4s;
|
| 41 |
+
}
|
| 42 |
+
}
|
| 43 |
+
&__list{
|
| 44 |
+
display: flex;
|
| 45 |
+
justify-content: space-between;
|
| 46 |
+
}
|
| 47 |
+
&__link{
|
| 48 |
+
color: var(--text-color);
|
| 49 |
+
transition: color .4s;
|
| 50 |
+
|
| 51 |
+
& span{
|
| 52 |
+
display: none;
|
| 53 |
+
}
|
| 54 |
+
& i{
|
| 55 |
+
font-size: 1.25rem;
|
| 56 |
+
}
|
| 57 |
+
&:hover{
|
| 58 |
+
color: var(--first-color);
|
| 59 |
+
}
|
| 60 |
+
}
|
| 61 |
+
&__actions{
|
| 62 |
+
display: flex;
|
| 63 |
+
align-items: center;
|
| 64 |
+
column-gap: 1rem;
|
| 65 |
+
|
| 66 |
+
& i{
|
| 67 |
+
font-size: 1.25rem;
|
| 68 |
+
color: var(--title-color);
|
| 69 |
+
cursor: pointer;
|
| 70 |
+
transition: color .4s;
|
| 71 |
+
|
| 72 |
+
&:hover{
|
| 73 |
+
color: var(--first-color);
|
| 74 |
+
}
|
| 75 |
+
}
|
| 76 |
+
}
|
| 77 |
+
}
|
| 78 |
+
|
| 79 |
+
/* Add shadow header */
|
| 80 |
+
.shadow-header{
|
| 81 |
+
box-shadow: 0 2px 16px hsla(0, 0%, 0%, .1);
|
| 82 |
+
}
|
| 83 |
+
|
| 84 |
+
/* Active link */
|
| 85 |
+
.active-link{
|
| 86 |
+
color: var(--first-color);
|
| 87 |
+
}
|
assets/scss/components/_home.scss
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== HOME ===============*/
|
| 2 |
+
.home{
|
| 3 |
+
&__swiper{
|
| 4 |
+
margin: initial;
|
| 5 |
+
}
|
| 6 |
+
&__container{
|
| 7 |
+
padding-top: 2rem;
|
| 8 |
+
row-gap: 2.5rem;
|
| 9 |
+
}
|
| 10 |
+
&__data{
|
| 11 |
+
text-align: center;
|
| 12 |
+
}
|
| 13 |
+
&__title{
|
| 14 |
+
font-size: var(--biggest-font-size);
|
| 15 |
+
margin-bottom: 1rem;
|
| 16 |
+
}
|
| 17 |
+
&__description{
|
| 18 |
+
margin-bottom: 2rem;
|
| 19 |
+
}
|
| 20 |
+
&__images{
|
| 21 |
+
display: grid;
|
| 22 |
+
}
|
| 23 |
+
&__article,
|
| 24 |
+
&__img{
|
| 25 |
+
width: 220px;
|
| 26 |
+
transition: scale .4s;
|
| 27 |
+
}
|
| 28 |
+
&__article{
|
| 29 |
+
scale: .8;
|
| 30 |
+
}
|
| 31 |
+
}
|
| 32 |
+
|
| 33 |
+
/* Swiper class */
|
| 34 |
+
.swiper-slide-active,
|
| 35 |
+
.swiper-slide-duplicate-active{
|
| 36 |
+
scale: 1;
|
| 37 |
+
}
|
assets/scss/components/_join.scss
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== JOIN ===============*/
|
| 2 |
+
.join{
|
| 3 |
+
&__container{
|
| 4 |
+
position: relative;
|
| 5 |
+
padding-block: 3rem;
|
| 6 |
+
}
|
| 7 |
+
&__bg{
|
| 8 |
+
position: absolute;
|
| 9 |
+
top: 0;
|
| 10 |
+
left: 0;
|
| 11 |
+
width: 100%;
|
| 12 |
+
height: 100%;
|
| 13 |
+
object-fit: cover;
|
| 14 |
+
object-position: center;
|
| 15 |
+
}
|
| 16 |
+
&__data{
|
| 17 |
+
position: relative;
|
| 18 |
+
}
|
| 19 |
+
&__title{
|
| 20 |
+
color: var(--white-color);
|
| 21 |
+
|
| 22 |
+
}
|
| 23 |
+
&__form{
|
| 24 |
+
display: grid;
|
| 25 |
+
row-gap: 1rem;
|
| 26 |
+
}
|
| 27 |
+
&__input{
|
| 28 |
+
padding: 1.25rem 1rem;
|
| 29 |
+
background-color: var(--body-color);
|
| 30 |
+
color: var(--title-color);
|
| 31 |
+
transition: background-color .4s;
|
| 32 |
+
|
| 33 |
+
&::placeholder{
|
| 34 |
+
color: var(--text-color);
|
| 35 |
+
}
|
| 36 |
+
}
|
| 37 |
+
&__button{
|
| 38 |
+
padding-block: 1.25rem;
|
| 39 |
+
cursor: pointer;
|
| 40 |
+
}
|
| 41 |
+
}
|
assets/scss/components/_login.scss
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== LOGIN ===============*/
|
| 2 |
+
.login{
|
| 3 |
+
position: fixed;
|
| 4 |
+
top: -100%;
|
| 5 |
+
left: 0;
|
| 6 |
+
width: 100%;
|
| 7 |
+
height: 100%;
|
| 8 |
+
z-index: var(--z-fixed);
|
| 9 |
+
background-color: hsla(230, 62%, 96%, .6);
|
| 10 |
+
backdrop-filter: blur(16px);
|
| 11 |
+
align-items: center;
|
| 12 |
+
padding: 1.5rem;
|
| 13 |
+
text-align: center;
|
| 14 |
+
transition: top .4s;
|
| 15 |
+
|
| 16 |
+
&__form{
|
| 17 |
+
background-color: var(--container-color);
|
| 18 |
+
padding: 2rem 1.5rem;
|
| 19 |
+
border: 2px solid var(--border-color);
|
| 20 |
+
row-gap: 1.25rem;
|
| 21 |
+
}
|
| 22 |
+
&__title{
|
| 23 |
+
font-size: var(--h2-font-size);
|
| 24 |
+
}
|
| 25 |
+
&__group{
|
| 26 |
+
row-gap: 1.25rem;
|
| 27 |
+
}
|
| 28 |
+
&__label{
|
| 29 |
+
display: block;
|
| 30 |
+
text-align: initial;
|
| 31 |
+
color: var(--title-color);
|
| 32 |
+
font-weight: var(--font-medium);
|
| 33 |
+
margin-bottom: .25rem;
|
| 34 |
+
}
|
| 35 |
+
&__input{
|
| 36 |
+
width: 100%;
|
| 37 |
+
background-color: var(--container-color);
|
| 38 |
+
border: 2px solid var(--border-color);
|
| 39 |
+
padding: 1rem;
|
| 40 |
+
color: var(--text-color);
|
| 41 |
+
}
|
| 42 |
+
&__signup,
|
| 43 |
+
&__forgot{
|
| 44 |
+
display: block;
|
| 45 |
+
font-size: var(--small-font-size);
|
| 46 |
+
}
|
| 47 |
+
&__signup{
|
| 48 |
+
margin-bottom: .5rem;
|
| 49 |
+
|
| 50 |
+
& a{
|
| 51 |
+
color: var(--first-color);
|
| 52 |
+
font-weight: var(--font-medium);
|
| 53 |
+
}
|
| 54 |
+
}
|
| 55 |
+
&__forgot{
|
| 56 |
+
color: var(--first-color);
|
| 57 |
+
margin-bottom: 1.25rem;
|
| 58 |
+
}
|
| 59 |
+
&__button{
|
| 60 |
+
width: 100%;
|
| 61 |
+
cursor: pointer;
|
| 62 |
+
}
|
| 63 |
+
&__close{
|
| 64 |
+
position: absolute;
|
| 65 |
+
top: 2rem;
|
| 66 |
+
right: 2rem;
|
| 67 |
+
font-size: 2rem;
|
| 68 |
+
color: var(--title-color);
|
| 69 |
+
cursor: pointer;
|
| 70 |
+
}
|
| 71 |
+
}
|
| 72 |
+
|
| 73 |
+
/* Show login */
|
| 74 |
+
.show-login{
|
| 75 |
+
top: 0;
|
| 76 |
+
}
|
assets/scss/components/_new.scss
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== NEW ===============*/
|
| 2 |
+
.new{
|
| 3 |
+
&__card{
|
| 4 |
+
display: flex;
|
| 5 |
+
align-items: center;
|
| 6 |
+
column-gap: 2.5rem;
|
| 7 |
+
background-color: var(--container-color);
|
| 8 |
+
padding: 1.5rem 1rem;
|
| 9 |
+
color: var(--text-color);
|
| 10 |
+
border: 2px solid var(--border-color);
|
| 11 |
+
transition: border .4s, background-color .4s;
|
| 12 |
+
|
| 13 |
+
&:hover{
|
| 14 |
+
border: 2px solid var(--text-color);
|
| 15 |
+
}
|
| 16 |
+
}
|
| 17 |
+
&__img{
|
| 18 |
+
width: 100px;
|
| 19 |
+
}
|
| 20 |
+
&__title{
|
| 21 |
+
font-size: var(--h2-font-size);
|
| 22 |
+
margin-bottom: .5rem;
|
| 23 |
+
}
|
| 24 |
+
&__prices{
|
| 25 |
+
display: flex;
|
| 26 |
+
align-items: center;
|
| 27 |
+
column-gap: .75rem;
|
| 28 |
+
margin-bottom: .75rem;
|
| 29 |
+
}
|
| 30 |
+
&__discount{
|
| 31 |
+
color: var(--title-color);
|
| 32 |
+
}
|
| 33 |
+
&__price{
|
| 34 |
+
font-size: var(--small-font-size);
|
| 35 |
+
text-decoration: line-through;
|
| 36 |
+
}
|
| 37 |
+
&__stars{
|
| 38 |
+
color: var(--first-color);
|
| 39 |
+
}
|
| 40 |
+
&__swiper:nth-child(1){
|
| 41 |
+
margin-bottom: 2rem;
|
| 42 |
+
}
|
| 43 |
+
}
|
assets/scss/components/_scroll.scss
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== SCROLL BAR ===============*/
|
| 2 |
+
::-webkit-scrollbar{
|
| 3 |
+
width: .6rem;
|
| 4 |
+
border-radius: .5rem;
|
| 5 |
+
background-color: hsl(230, 16%, 85%);
|
| 6 |
+
|
| 7 |
+
&-thumb{
|
| 8 |
+
background-color: hsl(230, 16%, 65%);
|
| 9 |
+
border-radius: .5rem;
|
| 10 |
+
|
| 11 |
+
&:hover{
|
| 12 |
+
background-color: hsl(230, 16%, 55%);
|
| 13 |
+
}
|
| 14 |
+
}
|
| 15 |
+
}
|
| 16 |
+
|
| 17 |
+
/*=============== SCROLL UP ===============*/
|
| 18 |
+
.scrollup {
|
| 19 |
+
position: fixed;
|
| 20 |
+
right: 1rem;
|
| 21 |
+
bottom: -50%;
|
| 22 |
+
background-color: var(--container-color);
|
| 23 |
+
box-shadow: 0 2px 8px hsla(0, 0%, 0%, .1);
|
| 24 |
+
display: inline-flex;
|
| 25 |
+
padding: 6px;
|
| 26 |
+
font-size: 1.25rem;
|
| 27 |
+
color: var(--title-color);
|
| 28 |
+
z-index: var(--z-tooltip);
|
| 29 |
+
transition: bottom .4s, transform .4s, background-color .4s;
|
| 30 |
+
|
| 31 |
+
&:hover{
|
| 32 |
+
transform: translateY(-.5rem);
|
| 33 |
+
}
|
| 34 |
+
}
|
| 35 |
+
|
| 36 |
+
/* Show Scroll Up */
|
| 37 |
+
.show-scroll{
|
| 38 |
+
bottom: 6rem;
|
| 39 |
+
}
|
assets/scss/components/_search.scss
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== SEARCH ===============*/
|
| 2 |
+
.search{
|
| 3 |
+
position: fixed;
|
| 4 |
+
top: -100%;
|
| 5 |
+
left: 0;
|
| 6 |
+
width: 100%;
|
| 7 |
+
height: 100%;
|
| 8 |
+
z-index: var(--z-fixed);
|
| 9 |
+
background-color: hsla(230, 62%, 96%, .6);
|
| 10 |
+
backdrop-filter: blur(16px);
|
| 11 |
+
padding: 8rem 1.5rem;
|
| 12 |
+
transition: top .4s;
|
| 13 |
+
|
| 14 |
+
&__form{
|
| 15 |
+
display: flex;
|
| 16 |
+
align-items: center;
|
| 17 |
+
column-gap: .5rem;
|
| 18 |
+
background-color: var(--container-color);
|
| 19 |
+
border: 2px solid var(--border-color);
|
| 20 |
+
padding-inline: 1rem;
|
| 21 |
+
}
|
| 22 |
+
&__icon{
|
| 23 |
+
font-size: 1.25rem;
|
| 24 |
+
color: var(--title-color);
|
| 25 |
+
}
|
| 26 |
+
&__input{
|
| 27 |
+
width: 100%;
|
| 28 |
+
padding-block: 1rem;
|
| 29 |
+
background-color: var(--container-color);
|
| 30 |
+
color: var(--text-color);
|
| 31 |
+
}
|
| 32 |
+
&__close{
|
| 33 |
+
position: absolute;
|
| 34 |
+
top: 2rem;
|
| 35 |
+
right: 2rem;
|
| 36 |
+
font-size: 2rem;
|
| 37 |
+
color: var(--title-color);
|
| 38 |
+
cursor: pointer;
|
| 39 |
+
}
|
| 40 |
+
}
|
| 41 |
+
|
| 42 |
+
/* Show search */
|
| 43 |
+
.show-search{
|
| 44 |
+
top: 0;
|
| 45 |
+
}
|
assets/scss/components/_services.scss
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== SERVICES ===============*/
|
| 2 |
+
.services{
|
| 3 |
+
&__container{
|
| 4 |
+
row-gap: 3rem;
|
| 5 |
+
}
|
| 6 |
+
&__card{
|
| 7 |
+
text-align: center;
|
| 8 |
+
|
| 9 |
+
& i{
|
| 10 |
+
display: block;
|
| 11 |
+
font-size: 3rem;
|
| 12 |
+
color: var(--first-color);
|
| 13 |
+
margin-bottom: 1rem;
|
| 14 |
+
}
|
| 15 |
+
}
|
| 16 |
+
&__title{
|
| 17 |
+
font-size: var(--h3-font-size);
|
| 18 |
+
margin-bottom: .5rem;
|
| 19 |
+
}
|
| 20 |
+
}
|
assets/scss/components/_testimonial.scss
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== TESTIMONIAL ===============*/
|
| 2 |
+
.testimonial{
|
| 3 |
+
&__card{
|
| 4 |
+
text-align: center;
|
| 5 |
+
background-color: var(--container-color);
|
| 6 |
+
padding: 2rem 3rem 2.5rem;
|
| 7 |
+
border: 2px solid var(--border-color);
|
| 8 |
+
transition: border .4s, background-color .4s;
|
| 9 |
+
}
|
| 10 |
+
&__img{
|
| 11 |
+
width: 100px;
|
| 12 |
+
border-radius: 50%;
|
| 13 |
+
margin: 0 auto 1.5rem;
|
| 14 |
+
}
|
| 15 |
+
&__title{
|
| 16 |
+
font-size: var(--h2-font-size);
|
| 17 |
+
margin-bottom: .75rem;
|
| 18 |
+
}
|
| 19 |
+
&__description{
|
| 20 |
+
font-size: var(--small-font-size);
|
| 21 |
+
margin-bottom: 1.25rem;
|
| 22 |
+
}
|
| 23 |
+
&__stars{
|
| 24 |
+
color: var(--first-color);
|
| 25 |
+
}
|
| 26 |
+
}
|
assets/scss/config/_variables.scss
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== GOOGLE FONTS ===============*/
|
| 2 |
+
@import url("https://fonts.googleapis.com/css2?family=Montagu+Slab:wght@500&family=Montserrat:wght@400;500;600&display=swap");
|
| 3 |
+
|
| 4 |
+
/*=============== VARIABLES CSS ===============*/
|
| 5 |
+
:root {
|
| 6 |
+
--header-height: 3.5rem;
|
| 7 |
+
|
| 8 |
+
/*========== Colors ==========*/
|
| 9 |
+
/*Color mode HSL(hue, saturation, lightness)*/
|
| 10 |
+
--first-color: #5e0011;
|
| 11 |
+
--title-color: hsl(230, 70%, 16%);
|
| 12 |
+
--text-color: hsl(230, 16%, 45%);
|
| 13 |
+
--border-color: #a67c87;
|
| 14 |
+
--white-color: hsl(0, 0%, 100%);
|
| 15 |
+
--body-color: #f2dce0;
|
| 16 |
+
--container-color: #f2c4d0;
|
| 17 |
+
|
| 18 |
+
/*========== Font and typography ==========*/
|
| 19 |
+
/*.5rem = 8px | 1rem = 16px ...*/
|
| 20 |
+
--body-font: "Montserrat", sans-serif;
|
| 21 |
+
--second-font: "Montagu Slab", serif;
|
| 22 |
+
|
| 23 |
+
--biggest-font-size: 2rem;
|
| 24 |
+
--h1-font-size: 1.5rem;
|
| 25 |
+
--h2-font-size: 1.25rem;
|
| 26 |
+
--h3-font-size: 1rem;
|
| 27 |
+
--normal-font-size: 0.938rem;
|
| 28 |
+
--small-font-size: 0.813rem;
|
| 29 |
+
--smaller-font-size: 0.75rem;
|
| 30 |
+
|
| 31 |
+
// Responsive typography
|
| 32 |
+
@media screen and (min-width: 1150px) {
|
| 33 |
+
--biggest-font-size: 3.5rem;
|
| 34 |
+
--h1-font-size: 2.25rem;
|
| 35 |
+
--h2-font-size: 1.5rem;
|
| 36 |
+
--h3-font-size: 1.25rem;
|
| 37 |
+
--normal-font-size: 1rem;
|
| 38 |
+
--small-font-size: 0.875rem;
|
| 39 |
+
--smaller-font-size: 0.813rem;
|
| 40 |
+
}
|
| 41 |
+
|
| 42 |
+
/*========== Font weight ==========*/
|
| 43 |
+
--font-regular: 400;
|
| 44 |
+
--font-medium: 500;
|
| 45 |
+
--font-semi-bold: 600;
|
| 46 |
+
|
| 47 |
+
/*========== z index ==========*/
|
| 48 |
+
--z-tooltip: 10;
|
| 49 |
+
--z-fixed: 100;
|
| 50 |
+
}
|
assets/scss/layout/_layout.scss
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== REUSABLE CSS CLASSES ===============*/
|
| 2 |
+
.container{
|
| 3 |
+
max-width: 1220px;
|
| 4 |
+
margin-inline: 1.5rem;
|
| 5 |
+
}
|
| 6 |
+
|
| 7 |
+
.grid{
|
| 8 |
+
display: grid;
|
| 9 |
+
gap: 1.5rem;
|
| 10 |
+
}
|
| 11 |
+
|
| 12 |
+
.section{
|
| 13 |
+
padding-block: 5rem 1rem;
|
| 14 |
+
|
| 15 |
+
&__title{
|
| 16 |
+
text-align: center;
|
| 17 |
+
font-size: var(--h1-font-size);
|
| 18 |
+
font-family: var(--second-font);
|
| 19 |
+
margin-bottom: 2rem;
|
| 20 |
+
}
|
| 21 |
+
}
|
| 22 |
+
|
| 23 |
+
.main{
|
| 24 |
+
overflow: hidden; /* For animation ScrollReveal */
|
| 25 |
+
}
|
assets/scss/styles.scss
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
@import 'config/variables';
|
| 2 |
+
@import 'base/base';
|
| 3 |
+
@import 'theme/theme';
|
| 4 |
+
@import 'layout/layout';
|
| 5 |
+
@import 'components/header';
|
| 6 |
+
@import 'components/search';
|
| 7 |
+
@import 'components/login';
|
| 8 |
+
@import 'components/home';
|
| 9 |
+
@import 'components/button';
|
| 10 |
+
@import 'components/services';
|
| 11 |
+
@import 'components/featured';
|
| 12 |
+
@import 'components/discount';
|
| 13 |
+
@import 'components/new';
|
| 14 |
+
@import 'components/join';
|
| 15 |
+
@import 'components/testimonial';
|
| 16 |
+
@import 'components/footer';
|
| 17 |
+
@import 'components/scroll';
|
| 18 |
+
@import 'components/breakpoints';
|
assets/scss/theme/_theme.scss
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*=============== THEME ===============*/
|
| 2 |
+
|
| 3 |
+
/*========== Variables Dark theme ==========*/
|
| 4 |
+
body.dark-theme{
|
| 5 |
+
--title-color: hsl(230, 48%, 85%);
|
| 6 |
+
--text-color: hsl(230, 16%, 70%);
|
| 7 |
+
--border-color: hsl(230, 12%, 18%);
|
| 8 |
+
--body-color: hsl(230, 12%, 8%);
|
| 9 |
+
--container-color: hsl(230, 12%, 12%);
|
| 10 |
+
}
|
| 11 |
+
|
| 12 |
+
/*==========
|
| 13 |
+
Color changes in some parts of
|
| 14 |
+
the website, in dark theme
|
| 15 |
+
==========*/
|
| 16 |
+
.dark-theme .shadow-header{
|
| 17 |
+
box-shadow: 0 2px 16px hsla(0, 0%, 0%, .4);
|
| 18 |
+
}
|
| 19 |
+
|
| 20 |
+
.dark-theme .nav__menu{
|
| 21 |
+
box-shadow: 0 -8px 32px hsla(0, 0%, 0%, .4);
|
| 22 |
+
}
|
| 23 |
+
|
| 24 |
+
.dark-theme .scrollup{
|
| 25 |
+
box-shadow: 0 2px 8px hsla(0, 0%, 0%, .4);
|
| 26 |
+
}
|
| 27 |
+
|
| 28 |
+
.dark-theme .search,
|
| 29 |
+
.dark-theme .login{
|
| 30 |
+
background-color: hsla(230, 12, 8, .6);
|
| 31 |
+
}
|
| 32 |
+
|
| 33 |
+
.dark-theme::-webkit-scrollbar{
|
| 34 |
+
background-color: hsl(230, 16%, 15%);
|
| 35 |
+
|
| 36 |
+
&-thumb{
|
| 37 |
+
background-color: hsl(230, 16%, 25%);
|
| 38 |
+
|
| 39 |
+
&:hover{
|
| 40 |
+
background-color: hsl(230, 16%, 35%);
|
| 41 |
+
}
|
| 42 |
+
}
|
| 43 |
+
}
|
index.html
CHANGED
|
@@ -1,19 +1,1890 @@
|
|
| 1 |
-
<!
|
| 2 |
-
<html>
|
| 3 |
-
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<!DOCTYPE html>
|
| 2 |
+
<html lang="en">
|
| 3 |
+
<head>
|
| 4 |
+
<meta charset="UTF-8" />
|
| 5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
| 6 |
+
|
| 7 |
+
<!--=============== FAVICON ===============-->
|
| 8 |
+
<link
|
| 9 |
+
rel="shortcut icon"
|
| 10 |
+
href="assets/img/favicon.png"
|
| 11 |
+
type="image/x-icon"
|
| 12 |
+
/>
|
| 13 |
+
|
| 14 |
+
<!--=============== REMIXICONS ===============-->
|
| 15 |
+
<link
|
| 16 |
+
rel="stylesheet"
|
| 17 |
+
href="https://cdnjs.cloudflare.com/ajax/libs/remixicon/3.5.0/remixicon.css"
|
| 18 |
+
/>
|
| 19 |
+
|
| 20 |
+
<!--=============== SWIPER CSS ===============-->
|
| 21 |
+
<link rel="stylesheet" href="assets/css/swiper-bundle.min.css" />
|
| 22 |
+
|
| 23 |
+
<!--=============== CSS ===============-->
|
| 24 |
+
<link rel="stylesheet" href="assets/css/styles.css" />
|
| 25 |
+
|
| 26 |
+
<title>ThuLieu Cosmetics Store</title>
|
| 27 |
+
</head>
|
| 28 |
+
<body>
|
| 29 |
+
<!--==================== HEADER ====================-->
|
| 30 |
+
<header class="header" id="header">
|
| 31 |
+
<nav class="nav container">
|
| 32 |
+
<a href="#" class="nav__logo">
|
| 33 |
+
<i class="ri-store-2-line"></i> ThuLieu Store
|
| 34 |
+
</a>
|
| 35 |
+
|
| 36 |
+
<div class="nav__menu">
|
| 37 |
+
<ul class="nav__list">
|
| 38 |
+
<li class="nav__item">
|
| 39 |
+
<a href="#home" class="nav__link active-link">
|
| 40 |
+
<i class="ri-home-line"></i>
|
| 41 |
+
<span>Trang chủ</span>
|
| 42 |
+
</a>
|
| 43 |
+
</li>
|
| 44 |
+
|
| 45 |
+
<li class="nav__item">
|
| 46 |
+
<a href="#featured" class="nav__link">
|
| 47 |
+
<i class="ri-fire-line"></i>
|
| 48 |
+
<span>Bán chạy</span>
|
| 49 |
+
</a>
|
| 50 |
+
</li>
|
| 51 |
+
|
| 52 |
+
<li class="nav__item">
|
| 53 |
+
<a href="#discount" class="nav__link">
|
| 54 |
+
<i class="ri-price-tag-3-line"></i>
|
| 55 |
+
<span>Khuyến mãi</span>
|
| 56 |
+
</a>
|
| 57 |
+
</li>
|
| 58 |
+
|
| 59 |
+
<li class="nav__item">
|
| 60 |
+
<a href="#new" class="nav__link">
|
| 61 |
+
<i class="ri-bookmark-line"></i>
|
| 62 |
+
<span>Hàng mới</span>
|
| 63 |
+
</a>
|
| 64 |
+
</li>
|
| 65 |
+
|
| 66 |
+
<li class="nav__item">
|
| 67 |
+
<a href="#testimonial" class="nav__link">
|
| 68 |
+
<i class="ri-message-3-line"></i>
|
| 69 |
+
<span>Đánh giá</span>
|
| 70 |
+
</a>
|
| 71 |
+
</li>
|
| 72 |
+
</ul>
|
| 73 |
+
</div>
|
| 74 |
+
|
| 75 |
+
<div class="nav__actions">
|
| 76 |
+
<!-- Search button -->
|
| 77 |
+
<i class="ri-search-line search-button" id="search-button"></i>
|
| 78 |
+
|
| 79 |
+
<!-- Login button -->
|
| 80 |
+
<i class="ri-user-line login-button" id="login-button"></i>
|
| 81 |
+
|
| 82 |
+
<!-- Shopping bag button -->
|
| 83 |
+
<i class="ri-shopping-bag-line bag-button" id="bag-button"></i>
|
| 84 |
+
|
| 85 |
+
<!-- Theme button -->
|
| 86 |
+
<i class="ri-moon-line change-theme" id="theme-button"></i>
|
| 87 |
+
</div>
|
| 88 |
+
</nav>
|
| 89 |
+
</header>
|
| 90 |
+
|
| 91 |
+
<!--==================== SEARCH ====================-->
|
| 92 |
+
<div class="search" id="search-content">
|
| 93 |
+
<form action="" class="search__form">
|
| 94 |
+
<i class="ri-search-line search__icon"></i>
|
| 95 |
+
<input
|
| 96 |
+
type="search"
|
| 97 |
+
placeholder="Nhập tên sản phẩm bạn muốn tìm..."
|
| 98 |
+
class="search__input"
|
| 99 |
+
/>
|
| 100 |
+
</form>
|
| 101 |
+
|
| 102 |
+
<i class="ri-close-line search__close" id="search-close"></i>
|
| 103 |
+
</div>
|
| 104 |
+
|
| 105 |
+
<!--=============== SHOPPING BAG ===============-->
|
| 106 |
+
<div class="bag grid" id="bag-content">
|
| 107 |
+
<form action="" class="bag__form grid">
|
| 108 |
+
<h3 class="bag__title">Giỏ hàng của bạn</h3>
|
| 109 |
+
|
| 110 |
+
<div class="bag__group grid">
|
| 111 |
+
<div id="cartItemsContainer"></div>
|
| 112 |
+
<div id="totalAmountContainer"></div>
|
| 113 |
+
<button type="button" class="bag__button button" id="clearCart">
|
| 114 |
+
Reset giỏ hàng
|
| 115 |
+
</button>
|
| 116 |
+
<div>
|
| 117 |
+
<h3>Thông tin người nhận</h3>
|
| 118 |
+
<h4>Ngân hàng thụ hưởng: MBBank</h4>
|
| 119 |
+
<h4>Người thụ hưởng: DO THU LIEU</h4>
|
| 120 |
+
<h4>Tài khoản thụ hưởng: 0947.066.385</h4>
|
| 121 |
+
<h4>Nội dung: nguoimuahang_sanpham_ngaymuahang</h4>
|
| 122 |
+
</div>
|
| 123 |
+
<div class="bag__qr">
|
| 124 |
+
<img src="./assets/img/QR.png" alt="QR" />
|
| 125 |
+
</div>
|
| 126 |
+
|
| 127 |
+
<button type="submit" class="bag__button button" id="checkOut">
|
| 128 |
+
Thanh toán
|
| 129 |
+
</button>
|
| 130 |
+
</div>
|
| 131 |
+
</form>
|
| 132 |
+
|
| 133 |
+
<i class="ri-close-line bag__close" id="bag-close"></i>
|
| 134 |
+
</div>
|
| 135 |
+
|
| 136 |
+
<!--==================== LOGIN ====================-->
|
| 137 |
+
<div class="login grid" id="login-content">
|
| 138 |
+
<form action="" class="login__form grid">
|
| 139 |
+
<h3 class="login__title">Đăng nhập</h3>
|
| 140 |
+
|
| 141 |
+
<div class="login__group grid">
|
| 142 |
+
<div>
|
| 143 |
+
<label for="login-email" class="login__label">Email</label>
|
| 144 |
+
<input
|
| 145 |
+
type="email"
|
| 146 |
+
placeholder="Email của bạn"
|
| 147 |
+
id="login-email"
|
| 148 |
+
class="login__input"
|
| 149 |
+
/>
|
| 150 |
+
</div>
|
| 151 |
+
|
| 152 |
+
<div>
|
| 153 |
+
<label for="login-pass" class="login__label">Mật khẩu</label>
|
| 154 |
+
<input
|
| 155 |
+
type="password"
|
| 156 |
+
placeholder="Mật khẩu của bạn"
|
| 157 |
+
id="login-pass"
|
| 158 |
+
class="login__input"
|
| 159 |
+
/>
|
| 160 |
+
</div>
|
| 161 |
+
</div>
|
| 162 |
+
|
| 163 |
+
<div>
|
| 164 |
+
<span class="login__signup">
|
| 165 |
+
Bạn chưa có tài khoản? <a href="#">Đăng ký ngay</a>
|
| 166 |
+
</span>
|
| 167 |
+
|
| 168 |
+
<a href="#" class="login__forgot"> Quên mật khẩu </a>
|
| 169 |
+
|
| 170 |
+
<button type="submit" class="login__button button">Đăng nhập</button>
|
| 171 |
+
</div>
|
| 172 |
+
</form>
|
| 173 |
+
|
| 174 |
+
<i class="ri-close-line login__close" id="login-close"></i>
|
| 175 |
+
</div>
|
| 176 |
+
|
| 177 |
+
<!--==================== MAIN ====================-->
|
| 178 |
+
<main class="main">
|
| 179 |
+
<!--==================== HOME ====================-->
|
| 180 |
+
<section class="home section" id="home">
|
| 181 |
+
<div class="home__container container grid">
|
| 182 |
+
<div class="home__data">
|
| 183 |
+
<h1 class="home__title">
|
| 184 |
+
Tỏa sáng <br />
|
| 185 |
+
vẻ đẹp tự nhiên
|
| 186 |
+
</h1>
|
| 187 |
+
|
| 188 |
+
<p class="home__description">
|
| 189 |
+
Khám phá vẻ đẹp tự nhiên của bạn với bộ sưu tập mỹ phẩm đa dạng,
|
| 190 |
+
từ các thương hiệu uy tín hàng đầu, cùng với những ưu đãi đặc biệt
|
| 191 |
+
và trải nghiệm mua sắm tuyệt vời.
|
| 192 |
+
</p>
|
| 193 |
+
|
| 194 |
+
<a href="#" class="button">Khám phá ngay</a>
|
| 195 |
+
</div>
|
| 196 |
+
|
| 197 |
+
<div class="home__images">
|
| 198 |
+
<div class="home__swiper swiper">
|
| 199 |
+
<div class="swiper-wrapper">
|
| 200 |
+
<article class="home__article swiper-slide">
|
| 201 |
+
<img
|
| 202 |
+
src="assets/img/home-book-1.png"
|
| 203 |
+
alt="image"
|
| 204 |
+
class="home__img"
|
| 205 |
+
/>
|
| 206 |
+
</article>
|
| 207 |
+
|
| 208 |
+
<article class="home__article swiper-slide">
|
| 209 |
+
<img
|
| 210 |
+
src="assets/img/home-book-2.png"
|
| 211 |
+
alt="image"
|
| 212 |
+
class="home__img"
|
| 213 |
+
/>
|
| 214 |
+
</article>
|
| 215 |
+
|
| 216 |
+
<article class="home__article swiper-slide">
|
| 217 |
+
<img
|
| 218 |
+
src="assets/img/home-book-3.png"
|
| 219 |
+
alt="image"
|
| 220 |
+
class="home__img"
|
| 221 |
+
/>
|
| 222 |
+
</article>
|
| 223 |
+
|
| 224 |
+
<article class="home__article swiper-slide">
|
| 225 |
+
<img
|
| 226 |
+
src="assets/img/home-book-4.png"
|
| 227 |
+
alt="image"
|
| 228 |
+
class="home__img"
|
| 229 |
+
/>
|
| 230 |
+
</article>
|
| 231 |
+
|
| 232 |
+
<article class="home__article swiper-slide">
|
| 233 |
+
<img
|
| 234 |
+
src="assets/img/home-book-5.png"
|
| 235 |
+
alt="image"
|
| 236 |
+
class="home__img"
|
| 237 |
+
/>
|
| 238 |
+
</article>
|
| 239 |
+
|
| 240 |
+
<article class="home__article swiper-slide">
|
| 241 |
+
<img
|
| 242 |
+
src="assets/img/home-book-6.png"
|
| 243 |
+
alt="image"
|
| 244 |
+
class="home__img"
|
| 245 |
+
/>
|
| 246 |
+
</article>
|
| 247 |
+
|
| 248 |
+
<article class="home__article swiper-slide">
|
| 249 |
+
<img
|
| 250 |
+
src="assets/img/home-book-7.png"
|
| 251 |
+
alt="image"
|
| 252 |
+
class="home__img"
|
| 253 |
+
/>
|
| 254 |
+
</article>
|
| 255 |
+
</div>
|
| 256 |
+
</div>
|
| 257 |
+
</div>
|
| 258 |
+
</div>
|
| 259 |
+
</section>
|
| 260 |
+
|
| 261 |
+
<!--==================== SERVICES ====================-->
|
| 262 |
+
<section class="services section">
|
| 263 |
+
<div class="services__container container grid">
|
| 264 |
+
<article class="services__card">
|
| 265 |
+
<i class="ri-truck-line"></i>
|
| 266 |
+
<h3 class="services__title">Miễn phí vận chuyển</h3>
|
| 267 |
+
<p class="services__description">Cho đơn hàng trên 500.000 ₫</p>
|
| 268 |
+
</article>
|
| 269 |
+
|
| 270 |
+
<article class="services__card">
|
| 271 |
+
<i class="ri-verified-badge-line"></i>
|
| 272 |
+
<h3 class="services__title">Sản phẩm chất lượng</h3>
|
| 273 |
+
<p class="services__description">Sản phẩm chính hãng 100%</p>
|
| 274 |
+
</article>
|
| 275 |
+
|
| 276 |
+
<article class="services__card">
|
| 277 |
+
<i class="ri-customer-service-2-line"></i>
|
| 278 |
+
<h3 class="services__title">Hỗ trợ 24/7</h3>
|
| 279 |
+
<p class="services__description">Chăm sóc khách hàng 24/7</p>
|
| 280 |
+
</article>
|
| 281 |
+
</div>
|
| 282 |
+
</section>
|
| 283 |
+
|
| 284 |
+
<!--==================== FEATURED ====================-->
|
| 285 |
+
<section class="featured section" id="featured">
|
| 286 |
+
<h2 class="section__title">Sản phẩm bán chạy</h2>
|
| 287 |
+
|
| 288 |
+
<div class="featured__container container">
|
| 289 |
+
<div class="featured__swiper swiper">
|
| 290 |
+
<div class="swiper-wrapper">
|
| 291 |
+
<article class="featured__card swiper-slide">
|
| 292 |
+
<img
|
| 293 |
+
src="assets/img/home-book-1.png"
|
| 294 |
+
alt="image"
|
| 295 |
+
class="featured__img"
|
| 296 |
+
/>
|
| 297 |
+
|
| 298 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 299 |
+
<div class="featured__prices">
|
| 300 |
+
<span class="featured__discount" data-price="999999"
|
| 301 |
+
>999.999 ₫</span
|
| 302 |
+
>
|
| 303 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 304 |
+
</div>
|
| 305 |
+
|
| 306 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 307 |
+
|
| 308 |
+
<div class="featured__actions">
|
| 309 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 310 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 311 |
+
<button>
|
| 312 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 313 |
+
</button>
|
| 314 |
+
</div>
|
| 315 |
+
</article>
|
| 316 |
+
|
| 317 |
+
<article class="featured__card swiper-slide">
|
| 318 |
+
<img
|
| 319 |
+
src="assets/img/home-book-1.png"
|
| 320 |
+
alt="image"
|
| 321 |
+
class="featured__img"
|
| 322 |
+
/>
|
| 323 |
+
|
| 324 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 325 |
+
<div class="featured__prices">
|
| 326 |
+
<span class="featured__discount" data-price="999999"
|
| 327 |
+
>999.999 ₫</span
|
| 328 |
+
>
|
| 329 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 330 |
+
</div>
|
| 331 |
+
|
| 332 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 333 |
+
|
| 334 |
+
<div class="featured__actions">
|
| 335 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 336 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 337 |
+
<button>
|
| 338 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 339 |
+
</button>
|
| 340 |
+
</div>
|
| 341 |
+
</article>
|
| 342 |
+
|
| 343 |
+
<article class="featured__card swiper-slide">
|
| 344 |
+
<img
|
| 345 |
+
src="assets/img/home-book-1.png"
|
| 346 |
+
alt="image"
|
| 347 |
+
class="featured__img"
|
| 348 |
+
/>
|
| 349 |
+
|
| 350 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 351 |
+
<div class="featured__prices">
|
| 352 |
+
<span class="featured__discount" data-price="999999"
|
| 353 |
+
>999.999 ₫</span
|
| 354 |
+
>
|
| 355 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 356 |
+
</div>
|
| 357 |
+
|
| 358 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 359 |
+
|
| 360 |
+
<div class="featured__actions">
|
| 361 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 362 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 363 |
+
<button>
|
| 364 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 365 |
+
</button>
|
| 366 |
+
</div>
|
| 367 |
+
</article>
|
| 368 |
+
|
| 369 |
+
<article class="featured__card swiper-slide">
|
| 370 |
+
<img
|
| 371 |
+
src="assets/img/home-book-1.png"
|
| 372 |
+
alt="image"
|
| 373 |
+
class="featured__img"
|
| 374 |
+
/>
|
| 375 |
+
|
| 376 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 377 |
+
<div class="featured__prices">
|
| 378 |
+
<span class="featured__discount" data-price="999999"
|
| 379 |
+
>999.999 ₫</span
|
| 380 |
+
>
|
| 381 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 382 |
+
</div>
|
| 383 |
+
|
| 384 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 385 |
+
|
| 386 |
+
<div class="featured__actions">
|
| 387 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 388 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 389 |
+
<button>
|
| 390 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 391 |
+
</button>
|
| 392 |
+
</div>
|
| 393 |
+
</article>
|
| 394 |
+
|
| 395 |
+
<article class="featured__card swiper-slide">
|
| 396 |
+
<img
|
| 397 |
+
src="assets/img/home-book-1.png"
|
| 398 |
+
alt="image"
|
| 399 |
+
class="featured__img"
|
| 400 |
+
/>
|
| 401 |
+
|
| 402 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 403 |
+
<div class="featured__prices">
|
| 404 |
+
<span class="featured__discount" data-price="999999"
|
| 405 |
+
>999.999 ₫</span
|
| 406 |
+
>
|
| 407 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 408 |
+
</div>
|
| 409 |
+
|
| 410 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 411 |
+
|
| 412 |
+
<div class="featured__actions">
|
| 413 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 414 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 415 |
+
<button>
|
| 416 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 417 |
+
</button>
|
| 418 |
+
</div>
|
| 419 |
+
</article>
|
| 420 |
+
|
| 421 |
+
<article class="featured__card swiper-slide">
|
| 422 |
+
<img
|
| 423 |
+
src="assets/img/home-book-1.png"
|
| 424 |
+
alt="image"
|
| 425 |
+
class="featured__img"
|
| 426 |
+
/>
|
| 427 |
+
|
| 428 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 429 |
+
<div class="featured__prices">
|
| 430 |
+
<span class="featured__discount" data-price="999999"
|
| 431 |
+
>999.999 ₫</span
|
| 432 |
+
>
|
| 433 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 434 |
+
</div>
|
| 435 |
+
|
| 436 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 437 |
+
|
| 438 |
+
<div class="featured__actions">
|
| 439 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 440 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 441 |
+
<button>
|
| 442 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 443 |
+
</button>
|
| 444 |
+
</div>
|
| 445 |
+
</article>
|
| 446 |
+
|
| 447 |
+
<article class="featured__card swiper-slide">
|
| 448 |
+
<img
|
| 449 |
+
src="assets/img/home-book-1.png"
|
| 450 |
+
alt="image"
|
| 451 |
+
class="featured__img"
|
| 452 |
+
/>
|
| 453 |
+
|
| 454 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 455 |
+
<div class="featured__prices">
|
| 456 |
+
<span class="featured__discount" data-price="999999"
|
| 457 |
+
>999.999 ₫</span
|
| 458 |
+
>
|
| 459 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 460 |
+
</div>
|
| 461 |
+
|
| 462 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 463 |
+
|
| 464 |
+
<div class="featured__actions">
|
| 465 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 466 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 467 |
+
<button>
|
| 468 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 469 |
+
</button>
|
| 470 |
+
</div>
|
| 471 |
+
</article>
|
| 472 |
+
|
| 473 |
+
<article class="featured__card swiper-slide">
|
| 474 |
+
<img
|
| 475 |
+
src="assets/img/home-book-1.png"
|
| 476 |
+
alt="image"
|
| 477 |
+
class="featured__img"
|
| 478 |
+
/>
|
| 479 |
+
|
| 480 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 481 |
+
<div class="featured__prices">
|
| 482 |
+
<span class="featured__discount" data-price="999999"
|
| 483 |
+
>999.999 ₫</span
|
| 484 |
+
>
|
| 485 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 486 |
+
</div>
|
| 487 |
+
|
| 488 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 489 |
+
|
| 490 |
+
<div class="featured__actions">
|
| 491 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 492 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 493 |
+
<button>
|
| 494 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 495 |
+
</button>
|
| 496 |
+
</div>
|
| 497 |
+
</article>
|
| 498 |
+
|
| 499 |
+
<article class="featured__card swiper-slide">
|
| 500 |
+
<img
|
| 501 |
+
src="assets/img/home-book-1.png"
|
| 502 |
+
alt="image"
|
| 503 |
+
class="featured__img"
|
| 504 |
+
/>
|
| 505 |
+
|
| 506 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 507 |
+
<div class="featured__prices">
|
| 508 |
+
<span class="featured__discount" data-price="999999"
|
| 509 |
+
>999.999 ₫</span
|
| 510 |
+
>
|
| 511 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 512 |
+
</div>
|
| 513 |
+
|
| 514 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 515 |
+
|
| 516 |
+
<div class="featured__actions">
|
| 517 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 518 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 519 |
+
<button>
|
| 520 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 521 |
+
</button>
|
| 522 |
+
</div>
|
| 523 |
+
</article>
|
| 524 |
+
|
| 525 |
+
<article class="featured__card swiper-slide">
|
| 526 |
+
<img
|
| 527 |
+
src="assets/img/home-book-1.png"
|
| 528 |
+
alt="image"
|
| 529 |
+
class="featured__img"
|
| 530 |
+
/>
|
| 531 |
+
|
| 532 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 533 |
+
<div class="featured__prices">
|
| 534 |
+
<span class="featured__discount" data-price="999999"
|
| 535 |
+
>999.999 ₫</span
|
| 536 |
+
>
|
| 537 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 538 |
+
</div>
|
| 539 |
+
|
| 540 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 541 |
+
|
| 542 |
+
<div class="featured__actions">
|
| 543 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 544 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 545 |
+
<button>
|
| 546 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 547 |
+
</button>
|
| 548 |
+
</div>
|
| 549 |
+
</article>
|
| 550 |
+
</div>
|
| 551 |
+
|
| 552 |
+
<div class="swiper-button-prev">
|
| 553 |
+
<i class="ri-arrow-left-s-line"></i>
|
| 554 |
+
</div>
|
| 555 |
+
|
| 556 |
+
<div class="swiper-button-next">
|
| 557 |
+
<i class="ri-arrow-right-s-line"></i>
|
| 558 |
+
</div>
|
| 559 |
+
</div>
|
| 560 |
+
</div>
|
| 561 |
+
|
| 562 |
+
<div class="featured__container container">
|
| 563 |
+
<div class="featured__swiper swiper">
|
| 564 |
+
<div class="swiper-wrapper">
|
| 565 |
+
<article class="featured__card swiper-slide">
|
| 566 |
+
<img
|
| 567 |
+
src="assets/img/home-book-4.png"
|
| 568 |
+
alt="image"
|
| 569 |
+
class="featured__img"
|
| 570 |
+
/>
|
| 571 |
+
|
| 572 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 573 |
+
<div class="featured__prices">
|
| 574 |
+
<span class="featured__discount" data-price="999999"
|
| 575 |
+
>999.999 ₫</span
|
| 576 |
+
>
|
| 577 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 578 |
+
</div>
|
| 579 |
+
|
| 580 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 581 |
+
|
| 582 |
+
<div class="featured__actions">
|
| 583 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 584 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 585 |
+
<button>
|
| 586 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 587 |
+
</button>
|
| 588 |
+
</div>
|
| 589 |
+
</article>
|
| 590 |
+
|
| 591 |
+
<article class="featured__card swiper-slide">
|
| 592 |
+
<img
|
| 593 |
+
src="assets/img/home-book-4.png"
|
| 594 |
+
alt="image"
|
| 595 |
+
class="featured__img"
|
| 596 |
+
/>
|
| 597 |
+
|
| 598 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 599 |
+
<div class="featured__prices">
|
| 600 |
+
<span class="featured__discount" data-price="999999"
|
| 601 |
+
>999.999 ₫</span
|
| 602 |
+
>
|
| 603 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 604 |
+
</div>
|
| 605 |
+
|
| 606 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 607 |
+
|
| 608 |
+
<div class="featured__actions">
|
| 609 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 610 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 611 |
+
<button>
|
| 612 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 613 |
+
</button>
|
| 614 |
+
</div>
|
| 615 |
+
</article>
|
| 616 |
+
|
| 617 |
+
<article class="featured__card swiper-slide">
|
| 618 |
+
<img
|
| 619 |
+
src="assets/img/home-book-4.png"
|
| 620 |
+
alt="image"
|
| 621 |
+
class="featured__img"
|
| 622 |
+
/>
|
| 623 |
+
|
| 624 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 625 |
+
<div class="featured__prices">
|
| 626 |
+
<span class="featured__discount" data-price="999999"
|
| 627 |
+
>999.999 ₫</span
|
| 628 |
+
>
|
| 629 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 630 |
+
</div>
|
| 631 |
+
|
| 632 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 633 |
+
|
| 634 |
+
<div class="featured__actions">
|
| 635 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 636 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 637 |
+
<button>
|
| 638 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 639 |
+
</button>
|
| 640 |
+
</div>
|
| 641 |
+
</article>
|
| 642 |
+
|
| 643 |
+
<article class="featured__card swiper-slide">
|
| 644 |
+
<img
|
| 645 |
+
src="assets/img/home-book-4.png"
|
| 646 |
+
alt="image"
|
| 647 |
+
class="featured__img"
|
| 648 |
+
/>
|
| 649 |
+
|
| 650 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 651 |
+
<div class="featured__prices">
|
| 652 |
+
<span class="featured__discount" data-price="999999"
|
| 653 |
+
>999.999 ₫</span
|
| 654 |
+
>
|
| 655 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 656 |
+
</div>
|
| 657 |
+
|
| 658 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 659 |
+
|
| 660 |
+
<div class="featured__actions">
|
| 661 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 662 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 663 |
+
<button>
|
| 664 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 665 |
+
</button>
|
| 666 |
+
</div>
|
| 667 |
+
</article>
|
| 668 |
+
|
| 669 |
+
<article class="featured__card swiper-slide">
|
| 670 |
+
<img
|
| 671 |
+
src="assets/img/home-book-4.png"
|
| 672 |
+
alt="image"
|
| 673 |
+
class="featured__img"
|
| 674 |
+
/>
|
| 675 |
+
|
| 676 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 677 |
+
<div class="featured__prices">
|
| 678 |
+
<span class="featured__discount" data-price="999999"
|
| 679 |
+
>999.999 ₫</span
|
| 680 |
+
>
|
| 681 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 682 |
+
</div>
|
| 683 |
+
|
| 684 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 685 |
+
|
| 686 |
+
<div class="featured__actions">
|
| 687 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 688 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 689 |
+
<button>
|
| 690 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 691 |
+
</button>
|
| 692 |
+
</div>
|
| 693 |
+
</article>
|
| 694 |
+
|
| 695 |
+
<article class="featured__card swiper-slide">
|
| 696 |
+
<img
|
| 697 |
+
src="assets/img/home-book-4.png"
|
| 698 |
+
alt="image"
|
| 699 |
+
class="featured__img"
|
| 700 |
+
/>
|
| 701 |
+
|
| 702 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 703 |
+
<div class="featured__prices">
|
| 704 |
+
<span class="featured__discount" data-price="999999"
|
| 705 |
+
>999.999 ₫</span
|
| 706 |
+
>
|
| 707 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 708 |
+
</div>
|
| 709 |
+
|
| 710 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 711 |
+
|
| 712 |
+
<div class="featured__actions">
|
| 713 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 714 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 715 |
+
<button>
|
| 716 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 717 |
+
</button>
|
| 718 |
+
</div>
|
| 719 |
+
</article>
|
| 720 |
+
|
| 721 |
+
<article class="featured__card swiper-slide">
|
| 722 |
+
<img
|
| 723 |
+
src="assets/img/home-book-4.png"
|
| 724 |
+
alt="image"
|
| 725 |
+
class="featured__img"
|
| 726 |
+
/>
|
| 727 |
+
|
| 728 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 729 |
+
<div class="featured__prices">
|
| 730 |
+
<span class="featured__discount" data-price="999999"
|
| 731 |
+
>999.999 ₫</span
|
| 732 |
+
>
|
| 733 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 734 |
+
</div>
|
| 735 |
+
|
| 736 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 737 |
+
|
| 738 |
+
<div class="featured__actions">
|
| 739 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 740 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 741 |
+
<button>
|
| 742 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 743 |
+
</button>
|
| 744 |
+
</div>
|
| 745 |
+
</article>
|
| 746 |
+
|
| 747 |
+
<article class="featured__card swiper-slide">
|
| 748 |
+
<img
|
| 749 |
+
src="assets/img/home-book-4.png"
|
| 750 |
+
alt="image"
|
| 751 |
+
class="featured__img"
|
| 752 |
+
/>
|
| 753 |
+
|
| 754 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 755 |
+
<div class="featured__prices">
|
| 756 |
+
<span class="featured__discount" data-price="999999"
|
| 757 |
+
>999.999 ₫</span
|
| 758 |
+
>
|
| 759 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 760 |
+
</div>
|
| 761 |
+
|
| 762 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 763 |
+
|
| 764 |
+
<div class="featured__actions">
|
| 765 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 766 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 767 |
+
<button>
|
| 768 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 769 |
+
</button>
|
| 770 |
+
</div>
|
| 771 |
+
</article>
|
| 772 |
+
|
| 773 |
+
<article class="featured__card swiper-slide">
|
| 774 |
+
<img
|
| 775 |
+
src="assets/img/home-book-4.png"
|
| 776 |
+
alt="image"
|
| 777 |
+
class="featured__img"
|
| 778 |
+
/>
|
| 779 |
+
|
| 780 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 781 |
+
<div class="featured__prices">
|
| 782 |
+
<span class="featured__discount" data-price="999999"
|
| 783 |
+
>999.999 ₫</span
|
| 784 |
+
>
|
| 785 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 786 |
+
</div>
|
| 787 |
+
|
| 788 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 789 |
+
|
| 790 |
+
<div class="featured__actions">
|
| 791 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 792 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 793 |
+
<button>
|
| 794 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 795 |
+
</button>
|
| 796 |
+
</div>
|
| 797 |
+
</article>
|
| 798 |
+
|
| 799 |
+
<article class="featured__card swiper-slide">
|
| 800 |
+
<img
|
| 801 |
+
src="assets/img/home-book-4.png"
|
| 802 |
+
alt="image"
|
| 803 |
+
class="featured__img"
|
| 804 |
+
/>
|
| 805 |
+
|
| 806 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 807 |
+
<div class="featured__prices">
|
| 808 |
+
<span class="featured__discount" data-price="999999"
|
| 809 |
+
>999.999 ₫</span
|
| 810 |
+
>
|
| 811 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 812 |
+
</div>
|
| 813 |
+
|
| 814 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 815 |
+
|
| 816 |
+
<div class="featured__actions">
|
| 817 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 818 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 819 |
+
<button>
|
| 820 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 821 |
+
</button>
|
| 822 |
+
</div>
|
| 823 |
+
</article>
|
| 824 |
+
</div>
|
| 825 |
+
|
| 826 |
+
<div class="swiper-button-prev">
|
| 827 |
+
<i class="ri-arrow-left-s-line"></i>
|
| 828 |
+
</div>
|
| 829 |
+
|
| 830 |
+
<div class="swiper-button-next">
|
| 831 |
+
<i class="ri-arrow-right-s-line"></i>
|
| 832 |
+
</div>
|
| 833 |
+
</div>
|
| 834 |
+
</div>
|
| 835 |
+
|
| 836 |
+
<div class="featured__container container">
|
| 837 |
+
<div class="featured__swiper swiper">
|
| 838 |
+
<div class="swiper-wrapper">
|
| 839 |
+
<article class="featured__card swiper-slide">
|
| 840 |
+
<img
|
| 841 |
+
src="assets/img/home-book-6.png"
|
| 842 |
+
alt="image"
|
| 843 |
+
class="featured__img"
|
| 844 |
+
/>
|
| 845 |
+
|
| 846 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 847 |
+
<div class="featured__prices">
|
| 848 |
+
<span class="featured__discount" data-price="999999"
|
| 849 |
+
>999.999 ₫</span
|
| 850 |
+
>
|
| 851 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 852 |
+
</div>
|
| 853 |
+
|
| 854 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 855 |
+
|
| 856 |
+
<div class="featured__actions">
|
| 857 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 858 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 859 |
+
<button>
|
| 860 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 861 |
+
</button>
|
| 862 |
+
</div>
|
| 863 |
+
</article>
|
| 864 |
+
|
| 865 |
+
<article class="featured__card swiper-slide">
|
| 866 |
+
<img
|
| 867 |
+
src="assets/img/home-book-6.png"
|
| 868 |
+
alt="image"
|
| 869 |
+
class="featured__img"
|
| 870 |
+
/>
|
| 871 |
+
|
| 872 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 873 |
+
<div class="featured__prices">
|
| 874 |
+
<span class="featured__discount" data-price="999999"
|
| 875 |
+
>999.999 ₫</span
|
| 876 |
+
>
|
| 877 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 878 |
+
</div>
|
| 879 |
+
|
| 880 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 881 |
+
|
| 882 |
+
<div class="featured__actions">
|
| 883 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 884 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 885 |
+
<button>
|
| 886 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 887 |
+
</button>
|
| 888 |
+
</div>
|
| 889 |
+
</article>
|
| 890 |
+
|
| 891 |
+
<article class="featured__card swiper-slide">
|
| 892 |
+
<img
|
| 893 |
+
src="assets/img/home-book-6.png"
|
| 894 |
+
alt="image"
|
| 895 |
+
class="featured__img"
|
| 896 |
+
/>
|
| 897 |
+
|
| 898 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 899 |
+
<div class="featured__prices">
|
| 900 |
+
<span class="featured__discount" data-price="999999"
|
| 901 |
+
>999.999 ₫</span
|
| 902 |
+
>
|
| 903 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 904 |
+
</div>
|
| 905 |
+
|
| 906 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 907 |
+
|
| 908 |
+
<div class="featured__actions">
|
| 909 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 910 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 911 |
+
<button>
|
| 912 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 913 |
+
</button>
|
| 914 |
+
</div>
|
| 915 |
+
</article>
|
| 916 |
+
|
| 917 |
+
<article class="featured__card swiper-slide">
|
| 918 |
+
<img
|
| 919 |
+
src="assets/img/home-book-6.png"
|
| 920 |
+
alt="image"
|
| 921 |
+
class="featured__img"
|
| 922 |
+
/>
|
| 923 |
+
|
| 924 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 925 |
+
<div class="featured__prices">
|
| 926 |
+
<span class="featured__discount" data-price="999999"
|
| 927 |
+
>999.999 ₫</span
|
| 928 |
+
>
|
| 929 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 930 |
+
</div>
|
| 931 |
+
|
| 932 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 933 |
+
|
| 934 |
+
<div class="featured__actions">
|
| 935 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 936 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 937 |
+
<button>
|
| 938 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 939 |
+
</button>
|
| 940 |
+
</div>
|
| 941 |
+
</article>
|
| 942 |
+
|
| 943 |
+
<article class="featured__card swiper-slide">
|
| 944 |
+
<img
|
| 945 |
+
src="assets/img/home-book-6.png"
|
| 946 |
+
alt="image"
|
| 947 |
+
class="featured__img"
|
| 948 |
+
/>
|
| 949 |
+
|
| 950 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 951 |
+
<div class="featured__prices">
|
| 952 |
+
<span class="featured__discount" data-price="999999"
|
| 953 |
+
>999.999 ₫</span
|
| 954 |
+
>
|
| 955 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 956 |
+
</div>
|
| 957 |
+
|
| 958 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 959 |
+
|
| 960 |
+
<div class="featured__actions">
|
| 961 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 962 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 963 |
+
<button>
|
| 964 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 965 |
+
</button>
|
| 966 |
+
</div>
|
| 967 |
+
</article>
|
| 968 |
+
|
| 969 |
+
<article class="featured__card swiper-slide">
|
| 970 |
+
<img
|
| 971 |
+
src="assets/img/home-book-6.png"
|
| 972 |
+
alt="image"
|
| 973 |
+
class="featured__img"
|
| 974 |
+
/>
|
| 975 |
+
|
| 976 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 977 |
+
<div class="featured__prices">
|
| 978 |
+
<span class="featured__discount" data-price="999999"
|
| 979 |
+
>999.999 ₫</span
|
| 980 |
+
>
|
| 981 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 982 |
+
</div>
|
| 983 |
+
|
| 984 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 985 |
+
|
| 986 |
+
<div class="featured__actions">
|
| 987 |
+
<!-- <button><i class="ri-search-line"></i></button> -->
|
| 988 |
+
<!-- <button><i class="ri-heart-3-line"></i></button> -->
|
| 989 |
+
<button>
|
| 990 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 991 |
+
</button>
|
| 992 |
+
</div>
|
| 993 |
+
</article>
|
| 994 |
+
|
| 995 |
+
<article class="featured__card swiper-slide">
|
| 996 |
+
<img
|
| 997 |
+
src="assets/img/home-book-6.png"
|
| 998 |
+
alt="image"
|
| 999 |
+
class="featured__img"
|
| 1000 |
+
/>
|
| 1001 |
+
|
| 1002 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 1003 |
+
<div class="featured__prices">
|
| 1004 |
+
<span class="featured__discount" data-price="999999"
|
| 1005 |
+
>999.999 ₫</span
|
| 1006 |
+
>
|
| 1007 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 1008 |
+
</div>
|
| 1009 |
+
|
| 1010 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 1011 |
+
|
| 1012 |
+
<div class="featured__actions">
|
| 1013 |
+
<button><i class="ri-search-line"></i></button>
|
| 1014 |
+
<button><i class="ri-heart-3-line"></i></button>
|
| 1015 |
+
<button>
|
| 1016 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 1017 |
+
</button>
|
| 1018 |
+
</div>
|
| 1019 |
+
</article>
|
| 1020 |
+
|
| 1021 |
+
<article class="featured__card swiper-slide">
|
| 1022 |
+
<img
|
| 1023 |
+
src="assets/img/home-book-6.png"
|
| 1024 |
+
alt="image"
|
| 1025 |
+
class="featured__img"
|
| 1026 |
+
/>
|
| 1027 |
+
|
| 1028 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 1029 |
+
<div class="featured__prices">
|
| 1030 |
+
<span class="featured__discount" data-price="999999"
|
| 1031 |
+
>999.999 ₫</span
|
| 1032 |
+
>
|
| 1033 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 1034 |
+
</div>
|
| 1035 |
+
|
| 1036 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 1037 |
+
|
| 1038 |
+
<div class="featured__actions">
|
| 1039 |
+
<button><i class="ri-search-line"></i></button>
|
| 1040 |
+
<button><i class="ri-heart-3-line"></i></button>
|
| 1041 |
+
<button>
|
| 1042 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 1043 |
+
</button>
|
| 1044 |
+
</div>
|
| 1045 |
+
</article>
|
| 1046 |
+
|
| 1047 |
+
<article class="featured__card swiper-slide">
|
| 1048 |
+
<img
|
| 1049 |
+
src="assets/img/home-book-6.png"
|
| 1050 |
+
alt="image"
|
| 1051 |
+
class="featured__img"
|
| 1052 |
+
/>
|
| 1053 |
+
|
| 1054 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 1055 |
+
<div class="featured__prices">
|
| 1056 |
+
<span class="featured__discount" data-price="999999"
|
| 1057 |
+
>999.999 ₫</span
|
| 1058 |
+
>
|
| 1059 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 1060 |
+
</div>
|
| 1061 |
+
|
| 1062 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 1063 |
+
|
| 1064 |
+
<div class="featured__actions">
|
| 1065 |
+
<button><i class="ri-search-line"></i></button>
|
| 1066 |
+
<button><i class="ri-heart-3-line"></i></button>
|
| 1067 |
+
<button>
|
| 1068 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 1069 |
+
</button>
|
| 1070 |
+
</div>
|
| 1071 |
+
</article>
|
| 1072 |
+
|
| 1073 |
+
<article class="featured__card swiper-slide">
|
| 1074 |
+
<img
|
| 1075 |
+
src="assets/img/home-book-6.png"
|
| 1076 |
+
alt="image"
|
| 1077 |
+
class="featured__img"
|
| 1078 |
+
/>
|
| 1079 |
+
|
| 1080 |
+
<h2 class="featured__title">Sản phẩm X</h2>
|
| 1081 |
+
<div class="featured__prices">
|
| 1082 |
+
<span class="featured__discount" data-price="999999"
|
| 1083 |
+
>999.999 ₫</span
|
| 1084 |
+
>
|
| 1085 |
+
<span class="featured__price">1.111.111 ₫</span>
|
| 1086 |
+
</div>
|
| 1087 |
+
|
| 1088 |
+
<button class="button">Thêm vào giỏ hàng</button>
|
| 1089 |
+
|
| 1090 |
+
<div class="featured__actions">
|
| 1091 |
+
<button><i class="ri-search-line"></i></button>
|
| 1092 |
+
<button><i class="ri-heart-3-line"></i></button>
|
| 1093 |
+
<button>
|
| 1094 |
+
<i class="ri-eye-line" onclick="openDetailPage()"></i>
|
| 1095 |
+
</button>
|
| 1096 |
+
</div>
|
| 1097 |
+
</article>
|
| 1098 |
+
</div>
|
| 1099 |
+
|
| 1100 |
+
<div class="swiper-button-prev">
|
| 1101 |
+
<i class="ri-arrow-left-s-line"></i>
|
| 1102 |
+
</div>
|
| 1103 |
+
|
| 1104 |
+
<div class="swiper-button-next">
|
| 1105 |
+
<i class="ri-arrow-right-s-line"></i>
|
| 1106 |
+
</div>
|
| 1107 |
+
</div>
|
| 1108 |
+
</div>
|
| 1109 |
+
</section>
|
| 1110 |
+
|
| 1111 |
+
<!--==================== DISCOUNT ====================-->
|
| 1112 |
+
<section class="discount section" id="discount">
|
| 1113 |
+
<div class="discount__container container grid">
|
| 1114 |
+
<div class="discount__data">
|
| 1115 |
+
<h2 class="discount__title section__title">Giảm Giá Lên Đến 50%</h2>
|
| 1116 |
+
|
| 1117 |
+
<p class="discount__description">
|
| 1118 |
+
Đừng bỏ lỡ cơ hội sở hữu những sản phẩm mỹ phẩm yêu thích với mức
|
| 1119 |
+
giá ưu đãi tuyệt vời. Càng mua nhiều, càng tiết kiệm nhiều hơn.
|
| 1120 |
+
</p>
|
| 1121 |
+
|
| 1122 |
+
<a href="#" class="button">Mua ngay</a>
|
| 1123 |
+
</div>
|
| 1124 |
+
|
| 1125 |
+
<div class="discount__images">
|
| 1126 |
+
<img
|
| 1127 |
+
src="assets/img/home-book-3.png"
|
| 1128 |
+
alt=""
|
| 1129 |
+
class="discount__img-1"
|
| 1130 |
+
/>
|
| 1131 |
+
<img
|
| 1132 |
+
src="assets/img/home-book-4.png"
|
| 1133 |
+
alt=""
|
| 1134 |
+
class="discount__img-2"
|
| 1135 |
+
/>
|
| 1136 |
+
</div>
|
| 1137 |
+
</div>
|
| 1138 |
+
</section>
|
| 1139 |
+
|
| 1140 |
+
<!--==================== Mỹ Kphẩm mới về ====================-->
|
| 1141 |
+
<section class="new section" id="new">
|
| 1142 |
+
<h2 class="section__title">Hàng mới về</h2>
|
| 1143 |
+
|
| 1144 |
+
<div class="new__container container">
|
| 1145 |
+
<div class="new__swiper swiper">
|
| 1146 |
+
<div class="swiper-wrapper">
|
| 1147 |
+
<a href="#" class="new__card swiper-slide">
|
| 1148 |
+
<img
|
| 1149 |
+
src="assets/img/home-book-1.png"
|
| 1150 |
+
alt="image"
|
| 1151 |
+
class="new__img"
|
| 1152 |
+
/>
|
| 1153 |
+
|
| 1154 |
+
<div>
|
| 1155 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1156 |
+
<div class="new__prices">
|
| 1157 |
+
<span class="new__discount">999.999</span>
|
| 1158 |
+
<span class="new__price">1.111.111</span>
|
| 1159 |
+
</div>
|
| 1160 |
+
|
| 1161 |
+
<div class="new__stars">
|
| 1162 |
+
<i class="ri-star-fill"></i>
|
| 1163 |
+
<i class="ri-star-fill"></i>
|
| 1164 |
+
<i class="ri-star-fill"></i>
|
| 1165 |
+
<i class="ri-star-fill"></i>
|
| 1166 |
+
<i class="ri-star-half-fill"></i>
|
| 1167 |
+
</div>
|
| 1168 |
+
</div>
|
| 1169 |
+
</a>
|
| 1170 |
+
|
| 1171 |
+
<a href="#" class="new__card swiper-slide">
|
| 1172 |
+
<img
|
| 1173 |
+
src="assets/img/home-book-2.png"
|
| 1174 |
+
alt="image"
|
| 1175 |
+
class="new__img"
|
| 1176 |
+
/>
|
| 1177 |
+
|
| 1178 |
+
<div>
|
| 1179 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1180 |
+
<div class="new__prices">
|
| 1181 |
+
<span class="new__discount">999.999</span>
|
| 1182 |
+
<span class="new__price">1.111.111</span>
|
| 1183 |
+
</div>
|
| 1184 |
+
|
| 1185 |
+
<div class="new__stars">
|
| 1186 |
+
<i class="ri-star-fill"></i>
|
| 1187 |
+
<i class="ri-star-fill"></i>
|
| 1188 |
+
<i class="ri-star-fill"></i>
|
| 1189 |
+
<i class="ri-star-fill"></i>
|
| 1190 |
+
<i class="ri-star-half-fill"></i>
|
| 1191 |
+
</div>
|
| 1192 |
+
</div>
|
| 1193 |
+
</a>
|
| 1194 |
+
|
| 1195 |
+
<a href="#" class="new__card swiper-slide">
|
| 1196 |
+
<img
|
| 1197 |
+
src="assets/img/home-book-3.png"
|
| 1198 |
+
alt="image"
|
| 1199 |
+
class="new__img"
|
| 1200 |
+
/>
|
| 1201 |
+
|
| 1202 |
+
<div>
|
| 1203 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1204 |
+
<div class="new__prices">
|
| 1205 |
+
<span class="new__discount">999.999</span>
|
| 1206 |
+
<span class="new__price">1.111.111</span>
|
| 1207 |
+
</div>
|
| 1208 |
+
|
| 1209 |
+
<div class="new__stars">
|
| 1210 |
+
<i class="ri-star-fill"></i>
|
| 1211 |
+
<i class="ri-star-fill"></i>
|
| 1212 |
+
<i class="ri-star-fill"></i>
|
| 1213 |
+
<i class="ri-star-fill"></i>
|
| 1214 |
+
<i class="ri-star-half-fill"></i>
|
| 1215 |
+
</div>
|
| 1216 |
+
</div>
|
| 1217 |
+
</a>
|
| 1218 |
+
|
| 1219 |
+
<a href="#" class="new__card swiper-slide">
|
| 1220 |
+
<img
|
| 1221 |
+
src="assets/img/home-book-4.png"
|
| 1222 |
+
alt="image"
|
| 1223 |
+
class="new__img"
|
| 1224 |
+
/>
|
| 1225 |
+
|
| 1226 |
+
<div>
|
| 1227 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1228 |
+
<div class="new__prices">
|
| 1229 |
+
<span class="new__discount">999.999</span>
|
| 1230 |
+
<span class="new__price">1.111.111</span>
|
| 1231 |
+
</div>
|
| 1232 |
+
|
| 1233 |
+
<div class="new__stars">
|
| 1234 |
+
<i class="ri-star-fill"></i>
|
| 1235 |
+
<i class="ri-star-fill"></i>
|
| 1236 |
+
<i class="ri-star-fill"></i>
|
| 1237 |
+
<i class="ri-star-fill"></i>
|
| 1238 |
+
<i class="ri-star-half-fill"></i>
|
| 1239 |
+
</div>
|
| 1240 |
+
</div>
|
| 1241 |
+
</a>
|
| 1242 |
+
|
| 1243 |
+
<a href="#" class="new__card swiper-slide">
|
| 1244 |
+
<img
|
| 1245 |
+
src="assets/img/home-book-5.png"
|
| 1246 |
+
alt="image"
|
| 1247 |
+
class="new__img"
|
| 1248 |
+
/>
|
| 1249 |
+
|
| 1250 |
+
<div>
|
| 1251 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1252 |
+
<div class="new__prices">
|
| 1253 |
+
<span class="new__discount">999.999</span>
|
| 1254 |
+
<span class="new__price">1.111.111</span>
|
| 1255 |
+
</div>
|
| 1256 |
+
|
| 1257 |
+
<div class="new__stars">
|
| 1258 |
+
<i class="ri-star-fill"></i>
|
| 1259 |
+
<i class="ri-star-fill"></i>
|
| 1260 |
+
<i class="ri-star-fill"></i>
|
| 1261 |
+
<i class="ri-star-fill"></i>
|
| 1262 |
+
<i class="ri-star-half-fill"></i>
|
| 1263 |
+
</div>
|
| 1264 |
+
</div>
|
| 1265 |
+
</a>
|
| 1266 |
+
|
| 1267 |
+
<a href="#" class="new__card swiper-slide">
|
| 1268 |
+
<img
|
| 1269 |
+
src="assets/img/home-book-6.png"
|
| 1270 |
+
alt="image"
|
| 1271 |
+
class="new__img"
|
| 1272 |
+
/>
|
| 1273 |
+
|
| 1274 |
+
<div>
|
| 1275 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1276 |
+
<div class="new__prices">
|
| 1277 |
+
<span class="new__discount">999.999</span>
|
| 1278 |
+
<span class="new__price">1.111.111</span>
|
| 1279 |
+
</div>
|
| 1280 |
+
|
| 1281 |
+
<div class="new__stars">
|
| 1282 |
+
<i class="ri-star-fill"></i>
|
| 1283 |
+
<i class="ri-star-fill"></i>
|
| 1284 |
+
<i class="ri-star-fill"></i>
|
| 1285 |
+
<i class="ri-star-fill"></i>
|
| 1286 |
+
<i class="ri-star-half-fill"></i>
|
| 1287 |
+
</div>
|
| 1288 |
+
</div>
|
| 1289 |
+
</a>
|
| 1290 |
+
|
| 1291 |
+
<a href="#" class="new__card swiper-slide">
|
| 1292 |
+
<img
|
| 1293 |
+
src="assets/img/home-book-7.png"
|
| 1294 |
+
alt="image"
|
| 1295 |
+
class="new__img"
|
| 1296 |
+
/>
|
| 1297 |
+
|
| 1298 |
+
<div>
|
| 1299 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1300 |
+
<div class="new__prices">
|
| 1301 |
+
<span class="new__discount">999.999</span>
|
| 1302 |
+
<span class="new__price">1.111.111</span>
|
| 1303 |
+
</div>
|
| 1304 |
+
|
| 1305 |
+
<div class="new__stars">
|
| 1306 |
+
<i class="ri-star-fill"></i>
|
| 1307 |
+
<i class="ri-star-fill"></i>
|
| 1308 |
+
<i class="ri-star-fill"></i>
|
| 1309 |
+
<i class="ri-star-fill"></i>
|
| 1310 |
+
<i class="ri-star-half-fill"></i>
|
| 1311 |
+
</div>
|
| 1312 |
+
</div>
|
| 1313 |
+
</a>
|
| 1314 |
+
|
| 1315 |
+
<a href="#" class="new__card swiper-slide">
|
| 1316 |
+
<img
|
| 1317 |
+
src="assets/img/home-book-1.png"
|
| 1318 |
+
alt="image"
|
| 1319 |
+
class="new__img"
|
| 1320 |
+
/>
|
| 1321 |
+
|
| 1322 |
+
<div>
|
| 1323 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1324 |
+
<div class="new__prices">
|
| 1325 |
+
<span class="new__discount">999.999</span>
|
| 1326 |
+
<span class="new__price">1.111.111</span>
|
| 1327 |
+
</div>
|
| 1328 |
+
|
| 1329 |
+
<div class="new__stars">
|
| 1330 |
+
<i class="ri-star-fill"></i>
|
| 1331 |
+
<i class="ri-star-fill"></i>
|
| 1332 |
+
<i class="ri-star-fill"></i>
|
| 1333 |
+
<i class="ri-star-fill"></i>
|
| 1334 |
+
<i class="ri-star-half-fill"></i>
|
| 1335 |
+
</div>
|
| 1336 |
+
</div>
|
| 1337 |
+
</a>
|
| 1338 |
+
|
| 1339 |
+
<a href="#" class="new__card swiper-slide">
|
| 1340 |
+
<img
|
| 1341 |
+
src="assets/img/home-book-2.png"
|
| 1342 |
+
alt="image"
|
| 1343 |
+
class="new__img"
|
| 1344 |
+
/>
|
| 1345 |
+
|
| 1346 |
+
<div>
|
| 1347 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1348 |
+
<div class="new__prices">
|
| 1349 |
+
<span class="new__discount">999.999</span>
|
| 1350 |
+
<span class="new__price">1.111.111</span>
|
| 1351 |
+
</div>
|
| 1352 |
+
|
| 1353 |
+
<div class="new__stars">
|
| 1354 |
+
<i class="ri-star-fill"></i>
|
| 1355 |
+
<i class="ri-star-fill"></i>
|
| 1356 |
+
<i class="ri-star-fill"></i>
|
| 1357 |
+
<i class="ri-star-fill"></i>
|
| 1358 |
+
<i class="ri-star-half-fill"></i>
|
| 1359 |
+
</div>
|
| 1360 |
+
</div>
|
| 1361 |
+
</a>
|
| 1362 |
+
|
| 1363 |
+
<a href="#" class="new__card swiper-slide">
|
| 1364 |
+
<img
|
| 1365 |
+
src="assets/img/home-book-3.png"
|
| 1366 |
+
alt="image"
|
| 1367 |
+
class="new__img"
|
| 1368 |
+
/>
|
| 1369 |
+
|
| 1370 |
+
<div>
|
| 1371 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1372 |
+
<div class="new__prices">
|
| 1373 |
+
<span class="new__discount">999.999</span>
|
| 1374 |
+
<span class="new__price">1.111.111</span>
|
| 1375 |
+
</div>
|
| 1376 |
+
|
| 1377 |
+
<div class="new__stars">
|
| 1378 |
+
<i class="ri-star-fill"></i>
|
| 1379 |
+
<i class="ri-star-fill"></i>
|
| 1380 |
+
<i class="ri-star-fill"></i>
|
| 1381 |
+
<i class="ri-star-fill"></i>
|
| 1382 |
+
<i class="ri-star-half-fill"></i>
|
| 1383 |
+
</div>
|
| 1384 |
+
</div>
|
| 1385 |
+
</a>
|
| 1386 |
+
</div>
|
| 1387 |
+
</div>
|
| 1388 |
+
|
| 1389 |
+
<div class="new__swiper swiper">
|
| 1390 |
+
<div class="swiper-wrapper">
|
| 1391 |
+
<a href="#" class="new__card swiper-slide">
|
| 1392 |
+
<img
|
| 1393 |
+
src="assets/img/home-book-3.png"
|
| 1394 |
+
alt="image"
|
| 1395 |
+
class="new__img"
|
| 1396 |
+
/>
|
| 1397 |
+
|
| 1398 |
+
<div>
|
| 1399 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1400 |
+
<div class="new__prices">
|
| 1401 |
+
<span class="new__discount">999.999</span>
|
| 1402 |
+
<span class="new__price">1.111.111</span>
|
| 1403 |
+
</div>
|
| 1404 |
+
|
| 1405 |
+
<div class="new__stars">
|
| 1406 |
+
<i class="ri-star-fill"></i>
|
| 1407 |
+
<i class="ri-star-fill"></i>
|
| 1408 |
+
<i class="ri-star-fill"></i>
|
| 1409 |
+
<i class="ri-star-fill"></i>
|
| 1410 |
+
<i class="ri-star-half-fill"></i>
|
| 1411 |
+
</div>
|
| 1412 |
+
</div>
|
| 1413 |
+
</a>
|
| 1414 |
+
|
| 1415 |
+
<a href="#" class="new__card swiper-slide">
|
| 1416 |
+
<img
|
| 1417 |
+
src="assets/img/home-book-2.png"
|
| 1418 |
+
alt="image"
|
| 1419 |
+
class="new__img"
|
| 1420 |
+
/>
|
| 1421 |
+
|
| 1422 |
+
<div>
|
| 1423 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1424 |
+
<div class="new__prices">
|
| 1425 |
+
<span class="new__discount">999.999</span>
|
| 1426 |
+
<span class="new__price">1.111.111</span>
|
| 1427 |
+
</div>
|
| 1428 |
+
|
| 1429 |
+
<div class="new__stars">
|
| 1430 |
+
<i class="ri-star-fill"></i>
|
| 1431 |
+
<i class="ri-star-fill"></i>
|
| 1432 |
+
<i class="ri-star-fill"></i>
|
| 1433 |
+
<i class="ri-star-fill"></i>
|
| 1434 |
+
<i class="ri-star-half-fill"></i>
|
| 1435 |
+
</div>
|
| 1436 |
+
</div>
|
| 1437 |
+
</a>
|
| 1438 |
+
|
| 1439 |
+
<a href="#" class="new__card swiper-slide">
|
| 1440 |
+
<img
|
| 1441 |
+
src="assets/img/home-book-1.png"
|
| 1442 |
+
alt="image"
|
| 1443 |
+
class="new__img"
|
| 1444 |
+
/>
|
| 1445 |
+
|
| 1446 |
+
<div>
|
| 1447 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1448 |
+
<div class="new__prices">
|
| 1449 |
+
<span class="new__discount">999.999</span>
|
| 1450 |
+
<span class="new__price">1.111.111</span>
|
| 1451 |
+
</div>
|
| 1452 |
+
|
| 1453 |
+
<div class="new__stars">
|
| 1454 |
+
<i class="ri-star-fill"></i>
|
| 1455 |
+
<i class="ri-star-fill"></i>
|
| 1456 |
+
<i class="ri-star-fill"></i>
|
| 1457 |
+
<i class="ri-star-fill"></i>
|
| 1458 |
+
<i class="ri-star-half-fill"></i>
|
| 1459 |
+
</div>
|
| 1460 |
+
</div>
|
| 1461 |
+
</a>
|
| 1462 |
+
|
| 1463 |
+
<a href="#" class="new__card swiper-slide">
|
| 1464 |
+
<img
|
| 1465 |
+
src="assets/img/home-book-7.png"
|
| 1466 |
+
alt="image"
|
| 1467 |
+
class="new__img"
|
| 1468 |
+
/>
|
| 1469 |
+
|
| 1470 |
+
<div>
|
| 1471 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1472 |
+
<div class="new__prices">
|
| 1473 |
+
<span class="new__discount">999.999</span>
|
| 1474 |
+
<span class="new__price">1.111.111</span>
|
| 1475 |
+
</div>
|
| 1476 |
+
|
| 1477 |
+
<div class="new__stars">
|
| 1478 |
+
<i class="ri-star-fill"></i>
|
| 1479 |
+
<i class="ri-star-fill"></i>
|
| 1480 |
+
<i class="ri-star-fill"></i>
|
| 1481 |
+
<i class="ri-star-fill"></i>
|
| 1482 |
+
<i class="ri-star-half-fill"></i>
|
| 1483 |
+
</div>
|
| 1484 |
+
</div>
|
| 1485 |
+
</a>
|
| 1486 |
+
|
| 1487 |
+
<a href="#" class="new__card swiper-slide">
|
| 1488 |
+
<img
|
| 1489 |
+
src="assets/img/home-book-6.png"
|
| 1490 |
+
alt="image"
|
| 1491 |
+
class="new__img"
|
| 1492 |
+
/>
|
| 1493 |
+
|
| 1494 |
+
<div>
|
| 1495 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1496 |
+
<div class="new__prices">
|
| 1497 |
+
<span class="new__discount">999.999</span>
|
| 1498 |
+
<span class="new__price">1.111.111</span>
|
| 1499 |
+
</div>
|
| 1500 |
+
|
| 1501 |
+
<div class="new__stars">
|
| 1502 |
+
<i class="ri-star-fill"></i>
|
| 1503 |
+
<i class="ri-star-fill"></i>
|
| 1504 |
+
<i class="ri-star-fill"></i>
|
| 1505 |
+
<i class="ri-star-fill"></i>
|
| 1506 |
+
<i class="ri-star-half-fill"></i>
|
| 1507 |
+
</div>
|
| 1508 |
+
</div>
|
| 1509 |
+
</a>
|
| 1510 |
+
|
| 1511 |
+
<a href="#" class="new__card swiper-slide">
|
| 1512 |
+
<img
|
| 1513 |
+
src="assets/img/home-book-5.png"
|
| 1514 |
+
alt="image"
|
| 1515 |
+
class="new__img"
|
| 1516 |
+
/>
|
| 1517 |
+
|
| 1518 |
+
<div>
|
| 1519 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1520 |
+
<div class="new__prices">
|
| 1521 |
+
<span class="new__discount">999.999</span>
|
| 1522 |
+
<span class="new__price">1.111.111</span>
|
| 1523 |
+
</div>
|
| 1524 |
+
|
| 1525 |
+
<div class="new__stars">
|
| 1526 |
+
<i class="ri-star-fill"></i>
|
| 1527 |
+
<i class="ri-star-fill"></i>
|
| 1528 |
+
<i class="ri-star-fill"></i>
|
| 1529 |
+
<i class="ri-star-fill"></i>
|
| 1530 |
+
<i class="ri-star-half-fill"></i>
|
| 1531 |
+
</div>
|
| 1532 |
+
</div>
|
| 1533 |
+
</a>
|
| 1534 |
+
|
| 1535 |
+
<a href="#" class="new__card swiper-slide">
|
| 1536 |
+
<img
|
| 1537 |
+
src="assets/img/home-book-4.png"
|
| 1538 |
+
alt="image"
|
| 1539 |
+
class="new__img"
|
| 1540 |
+
/>
|
| 1541 |
+
|
| 1542 |
+
<div>
|
| 1543 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1544 |
+
<div class="new__prices">
|
| 1545 |
+
<span class="new__discount">999.999</span>
|
| 1546 |
+
<span class="new__price">1.111.111</span>
|
| 1547 |
+
</div>
|
| 1548 |
+
|
| 1549 |
+
<div class="new__stars">
|
| 1550 |
+
<i class="ri-star-fill"></i>
|
| 1551 |
+
<i class="ri-star-fill"></i>
|
| 1552 |
+
<i class="ri-star-fill"></i>
|
| 1553 |
+
<i class="ri-star-fill"></i>
|
| 1554 |
+
<i class="ri-star-half-fill"></i>
|
| 1555 |
+
</div>
|
| 1556 |
+
</div>
|
| 1557 |
+
</a>
|
| 1558 |
+
|
| 1559 |
+
<a href="#" class="new__card swiper-slide">
|
| 1560 |
+
<img
|
| 1561 |
+
src="assets/img/home-book-3.png"
|
| 1562 |
+
alt="image"
|
| 1563 |
+
class="new__img"
|
| 1564 |
+
/>
|
| 1565 |
+
|
| 1566 |
+
<div>
|
| 1567 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1568 |
+
<div class="new__prices">
|
| 1569 |
+
<span class="new__discount">999.999</span>
|
| 1570 |
+
<span class="new__price">1.111.111</span>
|
| 1571 |
+
</div>
|
| 1572 |
+
|
| 1573 |
+
<div class="new__stars">
|
| 1574 |
+
<i class="ri-star-fill"></i>
|
| 1575 |
+
<i class="ri-star-fill"></i>
|
| 1576 |
+
<i class="ri-star-fill"></i>
|
| 1577 |
+
<i class="ri-star-fill"></i>
|
| 1578 |
+
<i class="ri-star-half-fill"></i>
|
| 1579 |
+
</div>
|
| 1580 |
+
</div>
|
| 1581 |
+
</a>
|
| 1582 |
+
|
| 1583 |
+
<a href="#" class="new__card swiper-slide">
|
| 1584 |
+
<img
|
| 1585 |
+
src="assets/img/home-book-2.png"
|
| 1586 |
+
alt="image"
|
| 1587 |
+
class="new__img"
|
| 1588 |
+
/>
|
| 1589 |
+
|
| 1590 |
+
<div>
|
| 1591 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1592 |
+
<div class="new__prices">
|
| 1593 |
+
<span class="new__discount">999.999</span>
|
| 1594 |
+
<span class="new__price">1.111.111</span>
|
| 1595 |
+
</div>
|
| 1596 |
+
|
| 1597 |
+
<div class="new__stars">
|
| 1598 |
+
<i class="ri-star-fill"></i>
|
| 1599 |
+
<i class="ri-star-fill"></i>
|
| 1600 |
+
<i class="ri-star-fill"></i>
|
| 1601 |
+
<i class="ri-star-fill"></i>
|
| 1602 |
+
<i class="ri-star-half-fill"></i>
|
| 1603 |
+
</div>
|
| 1604 |
+
</div>
|
| 1605 |
+
</a>
|
| 1606 |
+
|
| 1607 |
+
<a href="#" class="new__card swiper-slide">
|
| 1608 |
+
<img
|
| 1609 |
+
src="assets/img/home-book-1.png"
|
| 1610 |
+
alt="image"
|
| 1611 |
+
class="new__img"
|
| 1612 |
+
/>
|
| 1613 |
+
|
| 1614 |
+
<div>
|
| 1615 |
+
<h2 class="new__title">Mỹ phẩm mới về</h2>
|
| 1616 |
+
<div class="new__prices">
|
| 1617 |
+
<span class="new__discount">999.999</span>
|
| 1618 |
+
<span class="new__price">1.111.111</span>
|
| 1619 |
+
</div>
|
| 1620 |
+
|
| 1621 |
+
<div class="new__stars">
|
| 1622 |
+
<i class="ri-star-fill"></i>
|
| 1623 |
+
<i class="ri-star-fill"></i>
|
| 1624 |
+
<i class="ri-star-fill"></i>
|
| 1625 |
+
<i class="ri-star-fill"></i>
|
| 1626 |
+
<i class="ri-star-half-fill"></i>
|
| 1627 |
+
</div>
|
| 1628 |
+
</div>
|
| 1629 |
+
</a>
|
| 1630 |
+
</div>
|
| 1631 |
+
</div>
|
| 1632 |
+
</div>
|
| 1633 |
+
</section>
|
| 1634 |
+
|
| 1635 |
+
<!--==================== JOIN ====================-->
|
| 1636 |
+
<section class="join section">
|
| 1637 |
+
<div class="join__container">
|
| 1638 |
+
<img src="assets/img/join-bg.jpg" alt="image" class="join__bg" />
|
| 1639 |
+
|
| 1640 |
+
<div class="join__data container grid">
|
| 1641 |
+
<h2 class="join__title section__title">
|
| 1642 |
+
Đăng ký để nhận thông báo <br />
|
| 1643 |
+
về sản phẩm mới
|
| 1644 |
+
</h2>
|
| 1645 |
+
|
| 1646 |
+
<form action="" class="join__form">
|
| 1647 |
+
<input
|
| 1648 |
+
type="email"
|
| 1649 |
+
placeholder="Email của bạn"
|
| 1650 |
+
class="join__input"
|
| 1651 |
+
/>
|
| 1652 |
+
<button type="submit" class="join__button button">Đăng ký</button>
|
| 1653 |
+
</form>
|
| 1654 |
+
</div>
|
| 1655 |
+
</div>
|
| 1656 |
+
</section>
|
| 1657 |
+
|
| 1658 |
+
<!--==================== TESTIMONIAL ====================-->
|
| 1659 |
+
<section class="testimonial section" id="testimonial">
|
| 1660 |
+
<h2 class="section__title">Phản hồi từ khách hàng</h2>
|
| 1661 |
+
|
| 1662 |
+
<div class="testimonial__container container">
|
| 1663 |
+
<div class="testimonial__swiper swiper">
|
| 1664 |
+
<div class="swiper-wrapper">
|
| 1665 |
+
<article class="testimonial__card swiper-slide">
|
| 1666 |
+
<img
|
| 1667 |
+
src="assets/img/testimonial-perfil-1.png"
|
| 1668 |
+
alt="img"
|
| 1669 |
+
class="testimonial__img"
|
| 1670 |
+
/>
|
| 1671 |
+
|
| 1672 |
+
<h2 class="testimonial__title">Hồ Ngọc Hà</h2>
|
| 1673 |
+
<p class="testimonial__description">
|
| 1674 |
+
Sản phẩm chính hãng, chất lượng tuyệt vời! Giao hàng nhanh
|
| 1675 |
+
chóng và đóng gói rất cẩn thận. Sẽ tiếp tục ủng hộ shop.
|
| 1676 |
+
</p>
|
| 1677 |
+
|
| 1678 |
+
<div class="testimonial__stars">
|
| 1679 |
+
<i class="ri-star-fill"></i>
|
| 1680 |
+
<i class="ri-star-fill"></i>
|
| 1681 |
+
<i class="ri-star-fill"></i>
|
| 1682 |
+
<i class="ri-star-fill"></i>
|
| 1683 |
+
<i class="ri-star-half-fill"></i>
|
| 1684 |
+
</div>
|
| 1685 |
+
</article>
|
| 1686 |
+
|
| 1687 |
+
<article class="testimonial__card swiper-slide">
|
| 1688 |
+
<img
|
| 1689 |
+
src="assets/img/testimonial-perfil-2.png"
|
| 1690 |
+
alt="img"
|
| 1691 |
+
class="testimonial__img"
|
| 1692 |
+
/>
|
| 1693 |
+
|
| 1694 |
+
<h2 class="testimonial__title">Sơn Tùng M-TP</h2>
|
| 1695 |
+
<p class="testimonial__description">
|
| 1696 |
+
Tư vấn rất nhiệt tình và chuyên nghiệp. Các cô tư vấn giúp
|
| 1697 |
+
mình chọn được sản phẩm phù hợp với da. Rất hài lòng!
|
| 1698 |
+
</p>
|
| 1699 |
+
|
| 1700 |
+
<div class="testimonial__stars">
|
| 1701 |
+
<i class="ri-star-fill"></i>
|
| 1702 |
+
<i class="ri-star-fill"></i>
|
| 1703 |
+
<i class="ri-star-fill"></i>
|
| 1704 |
+
<i class="ri-star-fill"></i>
|
| 1705 |
+
<i class="ri-star-half-fill"></i>
|
| 1706 |
+
</div>
|
| 1707 |
+
</article>
|
| 1708 |
+
|
| 1709 |
+
<article class="testimonial__card swiper-slide">
|
| 1710 |
+
<img
|
| 1711 |
+
src="assets/img/testimonial-perfil-3.png"
|
| 1712 |
+
alt="img"
|
| 1713 |
+
class="testimonial__img"
|
| 1714 |
+
/>
|
| 1715 |
+
|
| 1716 |
+
<h2 class="testimonial__title">Châu Bùi</h2>
|
| 1717 |
+
<p class="testimonial__description">
|
| 1718 |
+
Lần đầu mua online nhưng rất an tâm. Tư vấn tận tình, giao
|
| 1719 |
+
hàng đúng hẹn. Son môi mình mua màu đẹp lắm!
|
| 1720 |
+
</p>
|
| 1721 |
+
|
| 1722 |
+
<div class="testimonial__stars">
|
| 1723 |
+
<i class="ri-star-fill"></i>
|
| 1724 |
+
<i class="ri-star-fill"></i>
|
| 1725 |
+
<i class="ri-star-fill"></i>
|
| 1726 |
+
<i class="ri-star-fill"></i>
|
| 1727 |
+
<i class="ri-star-half-fill"></i>
|
| 1728 |
+
</div>
|
| 1729 |
+
</article>
|
| 1730 |
+
|
| 1731 |
+
<article class="testimonial__card swiper-slide">
|
| 1732 |
+
<img
|
| 1733 |
+
src="assets/img/testimonial-perfil-4.png"
|
| 1734 |
+
alt="img"
|
| 1735 |
+
class="testimonial__img"
|
| 1736 |
+
/>
|
| 1737 |
+
|
| 1738 |
+
<h2 class="testimonial__title">Trấn Thành</h2>
|
| 1739 |
+
<p class="testimonial__description">
|
| 1740 |
+
Shop gói hàng đẹp quá! Mua tặng bạn mà cảm giác như nhận quà
|
| 1741 |
+
cao cấp. Sản phẩm đúng như mô tả, rất ưng ý.
|
| 1742 |
+
</p>
|
| 1743 |
+
|
| 1744 |
+
<div class="testimonial__stars">
|
| 1745 |
+
<i class="ri-star-fill"></i>
|
| 1746 |
+
<i class="ri-star-fill"></i>
|
| 1747 |
+
<i class="ri-star-fill"></i>
|
| 1748 |
+
<i class="ri-star-fill"></i>
|
| 1749 |
+
<i class="ri-star-half-fill"></i>
|
| 1750 |
+
</div>
|
| 1751 |
+
</article>
|
| 1752 |
+
</div>
|
| 1753 |
+
</div>
|
| 1754 |
+
</div>
|
| 1755 |
+
</section>
|
| 1756 |
+
</main>
|
| 1757 |
+
|
| 1758 |
+
<!--==================== FOOTER ====================-->
|
| 1759 |
+
<footer class="footer">
|
| 1760 |
+
<div class="footer__container container grid">
|
| 1761 |
+
<div>
|
| 1762 |
+
<a href="#" class="footer__logo">
|
| 1763 |
+
<i class="ri-store-2-line"></i> ThuLieu Store
|
| 1764 |
+
</a>
|
| 1765 |
+
|
| 1766 |
+
<p class="footer__description">
|
| 1767 |
+
Đồng hành cùng bạn trên<br />
|
| 1768 |
+
hành trình khám phá<br />
|
| 1769 |
+
vẻ đẹp tự nhiên<br />
|
| 1770 |
+
và tự tin.
|
| 1771 |
+
</p>
|
| 1772 |
+
</div>
|
| 1773 |
+
|
| 1774 |
+
<div class="footer__data grid">
|
| 1775 |
+
<div>
|
| 1776 |
+
<h3 class="footer__title">Giới thiệu</h3>
|
| 1777 |
+
|
| 1778 |
+
<ul class="footer__links">
|
| 1779 |
+
<li>
|
| 1780 |
+
<a href="#" class="footer__link">Giải thưởng</a>
|
| 1781 |
+
</li>
|
| 1782 |
+
|
| 1783 |
+
<li>
|
| 1784 |
+
<a href="#" class="footer__link">FAQs</a>
|
| 1785 |
+
</li>
|
| 1786 |
+
|
| 1787 |
+
<li>
|
| 1788 |
+
<a href="#" class="footer__link">Chính sách bảo mật</a>
|
| 1789 |
+
</li>
|
| 1790 |
+
|
| 1791 |
+
<li>
|
| 1792 |
+
<a href="#" class="footer__link">Điều khoản dịch vụ</a>
|
| 1793 |
+
</li>
|
| 1794 |
+
</ul>
|
| 1795 |
+
</div>
|
| 1796 |
+
|
| 1797 |
+
<div>
|
| 1798 |
+
<h3 class="footer__title">Về chúng tôi</h3>
|
| 1799 |
+
|
| 1800 |
+
<ul class="footer__links">
|
| 1801 |
+
<li>
|
| 1802 |
+
<a href="#" class="footer__link">Tin tức</a>
|
| 1803 |
+
</li>
|
| 1804 |
+
|
| 1805 |
+
<li>
|
| 1806 |
+
<a href="#" class="footer__link">Cộng đồng</a>
|
| 1807 |
+
</li>
|
| 1808 |
+
|
| 1809 |
+
<li>
|
| 1810 |
+
<a href="#" class="footer__link">Đội ngũ của chúng tôi</a>
|
| 1811 |
+
</li>
|
| 1812 |
+
|
| 1813 |
+
<li>
|
| 1814 |
+
<a href="#" class="footer__link">Trung tâm hỗ trợ</a>
|
| 1815 |
+
</li>
|
| 1816 |
+
</ul>
|
| 1817 |
+
</div>
|
| 1818 |
+
|
| 1819 |
+
<div>
|
| 1820 |
+
<h3 class="footer__title">Liên hệ</h3>
|
| 1821 |
+
|
| 1822 |
+
<ul class="footer__links">
|
| 1823 |
+
<li>
|
| 1824 |
+
<address class="footer__info">
|
| 1825 |
+
X. Phương Chiểu<br />
|
| 1826 |
+
TP. Hưng Yên, Hưng Yên
|
| 1827 |
+
</address>
|
| 1828 |
+
</li>
|
| 1829 |
+
|
| 1830 |
+
<li>
|
| 1831 |
+
<address class="footer__info">
|
| 1832 |
+
dothulieu12@gmail.com <br />
|
| 1833 |
+
0947-066-385
|
| 1834 |
+
</address>
|
| 1835 |
+
</li>
|
| 1836 |
+
</ul>
|
| 1837 |
+
</div>
|
| 1838 |
+
|
| 1839 |
+
<div>
|
| 1840 |
+
<h3 class="footer__title">Social</h3>
|
| 1841 |
+
|
| 1842 |
+
<div class="footer__social">
|
| 1843 |
+
<a
|
| 1844 |
+
href="https://www.facebook.com/"
|
| 1845 |
+
target="_blank"
|
| 1846 |
+
class="footer__social-link"
|
| 1847 |
+
>
|
| 1848 |
+
<i class="ri-facebook-circle-line"></i>
|
| 1849 |
+
</a>
|
| 1850 |
+
|
| 1851 |
+
<a
|
| 1852 |
+
href="https://www.facebook.com/"
|
| 1853 |
+
target="_blank"
|
| 1854 |
+
class="footer__social-link"
|
| 1855 |
+
>
|
| 1856 |
+
<i class="ri-instagram-line"></i>
|
| 1857 |
+
</a>
|
| 1858 |
+
|
| 1859 |
+
<a
|
| 1860 |
+
href="https://twitter.com/"
|
| 1861 |
+
target="_blank"
|
| 1862 |
+
class="footer__social-link"
|
| 1863 |
+
>
|
| 1864 |
+
<i class="ri-twitter-x-line"></i>
|
| 1865 |
+
</a>
|
| 1866 |
+
</div>
|
| 1867 |
+
</div>
|
| 1868 |
+
</div>
|
| 1869 |
+
</div>
|
| 1870 |
+
|
| 1871 |
+
<span class="footer__copy">
|
| 1872 |
+
© All Rights Reserved By ThuLieu Do
|
| 1873 |
+
</span>
|
| 1874 |
+
</footer>
|
| 1875 |
+
|
| 1876 |
+
<!--========== SCROLL UP ==========-->
|
| 1877 |
+
<a href="#" class="scrollup" id="scroll-up">
|
| 1878 |
+
<i class="ri-arrow-up-line"></i>
|
| 1879 |
+
</a>
|
| 1880 |
+
|
| 1881 |
+
<!--=============== SCROLLREVEAL ===============-->
|
| 1882 |
+
<script src="assets/js/scrollreveal.min.js"></script>
|
| 1883 |
+
|
| 1884 |
+
<!--=============== SWIPER JS ===============-->
|
| 1885 |
+
<script src="assets/js/swiper-bundle.min.js"></script>
|
| 1886 |
+
|
| 1887 |
+
<!--=============== MAIN JS ===============-->
|
| 1888 |
+
<script src="assets/js/main.js"></script>
|
| 1889 |
+
</body>
|
| 1890 |
+
</html>
|
product_detail.html
ADDED
|
@@ -0,0 +1,462 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<!DOCTYPE html>
|
| 2 |
+
<html lang="en">
|
| 3 |
+
<head>
|
| 4 |
+
<meta charset="UTF-8" />
|
| 5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
| 6 |
+
|
| 7 |
+
<!--=============== FAVICON ===============-->
|
| 8 |
+
<link
|
| 9 |
+
rel="shortcut icon"
|
| 10 |
+
href="assets/img/favicon.png"
|
| 11 |
+
type="image/x-icon"
|
| 12 |
+
/>
|
| 13 |
+
|
| 14 |
+
<!--=============== REMIXICONS ===============-->
|
| 15 |
+
<link
|
| 16 |
+
rel="stylesheet"
|
| 17 |
+
href="https://cdnjs.cloudflare.com/ajax/libs/remixicon/3.5.0/remixicon.css"
|
| 18 |
+
/>
|
| 19 |
+
|
| 20 |
+
<!--=============== SWIPER CSS ===============-->
|
| 21 |
+
<link rel="stylesheet" href="assets/css/swiper-bundle.min.css" />
|
| 22 |
+
|
| 23 |
+
<!--=============== CSS ===============-->
|
| 24 |
+
<link rel="stylesheet" href="assets/css/styles.css" />
|
| 25 |
+
|
| 26 |
+
<title>ThuLieu Cosmetics Store</title>
|
| 27 |
+
</head>
|
| 28 |
+
<body>
|
| 29 |
+
<!--==================== HEADER ====================-->
|
| 30 |
+
<header class="header" id="header">
|
| 31 |
+
<nav class="nav container">
|
| 32 |
+
<a href="#" class="nav__logo">
|
| 33 |
+
<i class="ri-store-2-line"></i> ThuLieu Store
|
| 34 |
+
</a>
|
| 35 |
+
|
| 36 |
+
<div class="nav__menu">
|
| 37 |
+
<ul class="nav__list">
|
| 38 |
+
<li class="nav__item">
|
| 39 |
+
<a href="#home" class="nav__link active-link">
|
| 40 |
+
<i class="ri-home-line"></i>
|
| 41 |
+
<span>Trang chủ</span>
|
| 42 |
+
</a>
|
| 43 |
+
</li>
|
| 44 |
+
|
| 45 |
+
<li class="nav__item">
|
| 46 |
+
<a href="#featured" class="nav__link">
|
| 47 |
+
<i class="ri-fire-line"></i>
|
| 48 |
+
<span>Bán chạy</span>
|
| 49 |
+
</a>
|
| 50 |
+
</li>
|
| 51 |
+
|
| 52 |
+
<li class="nav__item">
|
| 53 |
+
<a href="#discount" class="nav__link">
|
| 54 |
+
<i class="ri-price-tag-3-line"></i>
|
| 55 |
+
<span>Khuyến mãi</span>
|
| 56 |
+
</a>
|
| 57 |
+
</li>
|
| 58 |
+
|
| 59 |
+
<li class="nav__item">
|
| 60 |
+
<a href="#new" class="nav__link">
|
| 61 |
+
<i class="ri-bookmark-line"></i>
|
| 62 |
+
<span>Hàng mới</span>
|
| 63 |
+
</a>
|
| 64 |
+
</li>
|
| 65 |
+
|
| 66 |
+
<li class="nav__item">
|
| 67 |
+
<a href="#testimonial" class="nav__link">
|
| 68 |
+
<i class="ri-message-3-line"></i>
|
| 69 |
+
<span>Đánh giá</span>
|
| 70 |
+
</a>
|
| 71 |
+
</li>
|
| 72 |
+
</ul>
|
| 73 |
+
</div>
|
| 74 |
+
|
| 75 |
+
<div class="nav__actions">
|
| 76 |
+
<!-- Search button -->
|
| 77 |
+
<i class="ri-search-line search-button" id="search-button"></i>
|
| 78 |
+
|
| 79 |
+
<!-- Login button -->
|
| 80 |
+
<i class="ri-user-line login-button" id="login-button"></i>
|
| 81 |
+
|
| 82 |
+
<!-- Shopping bag button -->
|
| 83 |
+
<i class="ri-shopping-bag-line bag-button" id="bag-button"></i>
|
| 84 |
+
|
| 85 |
+
<!-- Theme button -->
|
| 86 |
+
<i class="ri-moon-line change-theme" id="theme-button"></i>
|
| 87 |
+
</div>
|
| 88 |
+
</nav>
|
| 89 |
+
</header>
|
| 90 |
+
|
| 91 |
+
<!--==================== SEARCH ====================-->
|
| 92 |
+
<div class="search" id="search-content">
|
| 93 |
+
<form action="" class="search__form">
|
| 94 |
+
<i class="ri-search-line search__icon"></i>
|
| 95 |
+
<input
|
| 96 |
+
type="search"
|
| 97 |
+
placeholder="Nhập tên sản phẩm bạn muốn tìm..."
|
| 98 |
+
class="search__input"
|
| 99 |
+
/>
|
| 100 |
+
</form>
|
| 101 |
+
|
| 102 |
+
<i class="ri-close-line search__close" id="search-close"></i>
|
| 103 |
+
</div>
|
| 104 |
+
|
| 105 |
+
<!--=============== SHOPPING BAG ===============-->
|
| 106 |
+
<div class="bag grid" id="bag-content">
|
| 107 |
+
<form action="" class="bag__form grid">
|
| 108 |
+
<h3 class="bag__title">Giỏ hàng của bạn</h3>
|
| 109 |
+
|
| 110 |
+
<div class="bag__group grid">
|
| 111 |
+
<div id="cartItemsContainer"></div>
|
| 112 |
+
<div id="totalAmountContainer"></div>
|
| 113 |
+
<button type="button" class="bag__button button" id="clearCart">
|
| 114 |
+
Reset giỏ hàng
|
| 115 |
+
</button>
|
| 116 |
+
<div>
|
| 117 |
+
<h3>Thông tin người nhận</h3>
|
| 118 |
+
<h4>Ngân hàng thụ hưởng: MBBank</h4>
|
| 119 |
+
<h4>Người thụ hưởng: Do THU LIEU</h4>
|
| 120 |
+
<h4>Tài khoản thụ hưởng: 0947.066.385</h4>
|
| 121 |
+
<h4>Nội dung: nguoimuahang_sanpham_ngaymuahang</h4>
|
| 122 |
+
</div>
|
| 123 |
+
<div>
|
| 124 |
+
<img src="./assets/img/QR.png" alt="QR" />
|
| 125 |
+
</div>
|
| 126 |
+
|
| 127 |
+
<button type="submit" class="bag__button button" id="clearCart">
|
| 128 |
+
Thanh toán
|
| 129 |
+
</button>
|
| 130 |
+
</div>
|
| 131 |
+
</form>
|
| 132 |
+
|
| 133 |
+
<i class="ri-close-line bag__close" id="bag-close"></i>
|
| 134 |
+
</div>
|
| 135 |
+
|
| 136 |
+
<!--==================== LOGIN ====================-->
|
| 137 |
+
<div class="login grid" id="login-content">
|
| 138 |
+
<form action="" class="login__form grid">
|
| 139 |
+
<h3 class="login__title">Đăng nhập</h3>
|
| 140 |
+
|
| 141 |
+
<div class="login__group grid">
|
| 142 |
+
<div>
|
| 143 |
+
<label for="login-email" class="login__label">Email</label>
|
| 144 |
+
<input
|
| 145 |
+
type="email"
|
| 146 |
+
placeholder="Email của bạn"
|
| 147 |
+
id="login-email"
|
| 148 |
+
class="login__input"
|
| 149 |
+
/>
|
| 150 |
+
</div>
|
| 151 |
+
|
| 152 |
+
<div>
|
| 153 |
+
<label for="login-pass" class="login__label">Mật khẩu</label>
|
| 154 |
+
<input
|
| 155 |
+
type="password"
|
| 156 |
+
placeholder="Mật khẩu của bạn"
|
| 157 |
+
id="login-pass"
|
| 158 |
+
class="login__input"
|
| 159 |
+
/>
|
| 160 |
+
</div>
|
| 161 |
+
</div>
|
| 162 |
+
|
| 163 |
+
<div>
|
| 164 |
+
<span class="login__signup">
|
| 165 |
+
Bạn chưa có tài khoản? <a href="#">Đăng ký ngay</a>
|
| 166 |
+
</span>
|
| 167 |
+
|
| 168 |
+
<a href="#" class="login__forgot"> Quên mật khẩu </a>
|
| 169 |
+
|
| 170 |
+
<button type="submit" class="login__button button">Đăng nhập</button>
|
| 171 |
+
</div>
|
| 172 |
+
</form>
|
| 173 |
+
|
| 174 |
+
<i class="ri-close-line login__close" id="login-close"></i>
|
| 175 |
+
</div>
|
| 176 |
+
|
| 177 |
+
<!--==================== MAIN ====================-->
|
| 178 |
+
<main class="main">
|
| 179 |
+
<!--==================== DETAIL SECTION ====================-->
|
| 180 |
+
<section class="detail section">
|
| 181 |
+
<div class="product__title">
|
| 182 |
+
<h2 class="title">Sản phẩm X</h2>
|
| 183 |
+
</div>
|
| 184 |
+
<div style="clear: both"></div>
|
| 185 |
+
<div class="product__info">
|
| 186 |
+
<div class="product__img">
|
| 187 |
+
<img src="./assets/img/home-book-1.png" alt="image" />
|
| 188 |
+
</div>
|
| 189 |
+
<div class="product__detail">
|
| 190 |
+
<h3 class="product__about">Thông số kỹ thuật</h3>
|
| 191 |
+
<p class="detail">
|
| 192 |
+
- Độ Cứng: Trung Bình <br />
|
| 193 |
+
- Vật liệu khung: H.M Graphite + Nanometrix + Tungsten <br />
|
| 194 |
+
- Vật liệu trục: H.M. Graphite + Namd <br />
|
| 195 |
+
- Trọng lượng: 4U 83g +/-2 <br />
|
| 196 |
+
- Chu vi cán vợt: 4U G5. <br />
|
| 197 |
+
- Chiều dài: 673mm +/-2 <br />
|
| 198 |
+
- Mức căng: 28lbs ~ 12,5kg <br />
|
| 199 |
+
- Màu sắc: Màu Xanh chuối <br />
|
| 200 |
+
- Sản xuất: Nhật Bản. <br />
|
| 201 |
+
</p>
|
| 202 |
+
</div>
|
| 203 |
+
</div>
|
| 204 |
+
|
| 205 |
+
<div class="product__add2cart"></div>
|
| 206 |
+
</section>
|
| 207 |
+
<!--==================== JOIN ====================-->
|
| 208 |
+
<section class="join section">
|
| 209 |
+
<div class="join__container">
|
| 210 |
+
<img src="assets/img/join-bg.jpg" alt="image" class="join__bg" />
|
| 211 |
+
|
| 212 |
+
<div class="join__data container grid">
|
| 213 |
+
<h2 class="join__title section__title">
|
| 214 |
+
Đăng ký để nhận thông báo <br />
|
| 215 |
+
về sản phẩm mới
|
| 216 |
+
</h2>
|
| 217 |
+
|
| 218 |
+
<form action="" class="join__form">
|
| 219 |
+
<input
|
| 220 |
+
type="email"
|
| 221 |
+
placeholder="Email của bạn"
|
| 222 |
+
class="join__input"
|
| 223 |
+
/>
|
| 224 |
+
<button type="submit" class="join__button button">Đăng ký</button>
|
| 225 |
+
</form>
|
| 226 |
+
</div>
|
| 227 |
+
</div>
|
| 228 |
+
</section>
|
| 229 |
+
|
| 230 |
+
<!--==================== TESTIMONIAL ====================-->
|
| 231 |
+
<section class="testimonial section" id="testimonial">
|
| 232 |
+
<h2 class="section__title">Phản hồi từ khách hàng</h2>
|
| 233 |
+
|
| 234 |
+
<div class="testimonial__container container">
|
| 235 |
+
<div class="testimonial__swiper swiper">
|
| 236 |
+
<div class="swiper-wrapper">
|
| 237 |
+
<article class="testimonial__card swiper-slide">
|
| 238 |
+
<img
|
| 239 |
+
src="assets/img/testimonial-perfil-1.png"
|
| 240 |
+
alt="img"
|
| 241 |
+
class="testimonial__img"
|
| 242 |
+
/>
|
| 243 |
+
|
| 244 |
+
<h2 class="testimonial__title">Hồ Ngọc Hà</h2>
|
| 245 |
+
<p class="testimonial__description">
|
| 246 |
+
Sản phẩm chính hãng, chất lượng tuyệt vời! Giao hàng nhanh
|
| 247 |
+
chóng và đóng gói rất cẩn thận. Sẽ tiếp tục ủng hộ shop.
|
| 248 |
+
</p>
|
| 249 |
+
|
| 250 |
+
<div class="testimonial__stars">
|
| 251 |
+
<i class="ri-star-fill"></i>
|
| 252 |
+
<i class="ri-star-fill"></i>
|
| 253 |
+
<i class="ri-star-fill"></i>
|
| 254 |
+
<i class="ri-star-fill"></i>
|
| 255 |
+
<i class="ri-star-half-fill"></i>
|
| 256 |
+
</div>
|
| 257 |
+
</article>
|
| 258 |
+
|
| 259 |
+
<article class="testimonial__card swiper-slide">
|
| 260 |
+
<img
|
| 261 |
+
src="assets/img/testimonial-perfil-2.png"
|
| 262 |
+
alt="img"
|
| 263 |
+
class="testimonial__img"
|
| 264 |
+
/>
|
| 265 |
+
|
| 266 |
+
<h2 class="testimonial__title">Sơn Tùng M-TP</h2>
|
| 267 |
+
<p class="testimonial__description">
|
| 268 |
+
Tư vấn rất nhiệt tình và chuyên nghiệp. Các cô tư vấn giúp
|
| 269 |
+
mình chọn được sản phẩm phù hợp với da. Rất hài lòng!
|
| 270 |
+
</p>
|
| 271 |
+
|
| 272 |
+
<div class="testimonial__stars">
|
| 273 |
+
<i class="ri-star-fill"></i>
|
| 274 |
+
<i class="ri-star-fill"></i>
|
| 275 |
+
<i class="ri-star-fill"></i>
|
| 276 |
+
<i class="ri-star-fill"></i>
|
| 277 |
+
<i class="ri-star-half-fill"></i>
|
| 278 |
+
</div>
|
| 279 |
+
</article>
|
| 280 |
+
|
| 281 |
+
<article class="testimonial__card swiper-slide">
|
| 282 |
+
<img
|
| 283 |
+
src="assets/img/testimonial-perfil-3.png"
|
| 284 |
+
alt="img"
|
| 285 |
+
class="testimonial__img"
|
| 286 |
+
/>
|
| 287 |
+
|
| 288 |
+
<h2 class="testimonial__title">Châu Bùi</h2>
|
| 289 |
+
<p class="testimonial__description">
|
| 290 |
+
Lần đầu mua online nhưng rất an tâm. Tư vấn tận tình, giao
|
| 291 |
+
hàng đúng hẹn. Son môi mình mua màu đẹp lắm!
|
| 292 |
+
</p>
|
| 293 |
+
|
| 294 |
+
<div class="testimonial__stars">
|
| 295 |
+
<i class="ri-star-fill"></i>
|
| 296 |
+
<i class="ri-star-fill"></i>
|
| 297 |
+
<i class="ri-star-fill"></i>
|
| 298 |
+
<i class="ri-star-fill"></i>
|
| 299 |
+
<i class="ri-star-half-fill"></i>
|
| 300 |
+
</div>
|
| 301 |
+
</article>
|
| 302 |
+
|
| 303 |
+
<article class="testimonial__card swiper-slide">
|
| 304 |
+
<img
|
| 305 |
+
src="assets/img/testimonial-perfil-4.png"
|
| 306 |
+
alt="img"
|
| 307 |
+
class="testimonial__img"
|
| 308 |
+
/>
|
| 309 |
+
|
| 310 |
+
<h2 class="testimonial__title">Trấn Thành</h2>
|
| 311 |
+
<p class="testimonial__description">
|
| 312 |
+
Shop gói hàng đẹp quá! Mua tặng bạn mà cảm giác như nhận quà
|
| 313 |
+
cao cấp. Sản phẩm đúng như mô tả, rất ưng ý.
|
| 314 |
+
</p>
|
| 315 |
+
|
| 316 |
+
<div class="testimonial__stars">
|
| 317 |
+
<i class="ri-star-fill"></i>
|
| 318 |
+
<i class="ri-star-fill"></i>
|
| 319 |
+
<i class="ri-star-fill"></i>
|
| 320 |
+
<i class="ri-star-fill"></i>
|
| 321 |
+
<i class="ri-star-half-fill"></i>
|
| 322 |
+
</div>
|
| 323 |
+
</article>
|
| 324 |
+
</div>
|
| 325 |
+
</div>
|
| 326 |
+
</div>
|
| 327 |
+
</section>
|
| 328 |
+
</main>
|
| 329 |
+
|
| 330 |
+
<!--==================== FOOTER ====================-->
|
| 331 |
+
<footer class="footer">
|
| 332 |
+
<div class="footer__container container grid">
|
| 333 |
+
<div>
|
| 334 |
+
<a href="#" class="footer__logo">
|
| 335 |
+
<i class="ri-store-2-line"></i> ThuLieu Store
|
| 336 |
+
</a>
|
| 337 |
+
|
| 338 |
+
<p class="footer__description">
|
| 339 |
+
Đồng hành cùng bạn trên<br />
|
| 340 |
+
hành trình khám phá<br />
|
| 341 |
+
vẻ đẹp tự nhiên<br />
|
| 342 |
+
và tự tin.
|
| 343 |
+
</p>
|
| 344 |
+
</div>
|
| 345 |
+
|
| 346 |
+
<div class="footer__data grid">
|
| 347 |
+
<div>
|
| 348 |
+
<h3 class="footer__title">Giới thiệu</h3>
|
| 349 |
+
|
| 350 |
+
<ul class="footer__links">
|
| 351 |
+
<li>
|
| 352 |
+
<a href="#" class="footer__link">Giải thưởng</a>
|
| 353 |
+
</li>
|
| 354 |
+
|
| 355 |
+
<li>
|
| 356 |
+
<a href="#" class="footer__link">FAQs</a>
|
| 357 |
+
</li>
|
| 358 |
+
|
| 359 |
+
<li>
|
| 360 |
+
<a href="#" class="footer__link">Chính sách bảo mật</a>
|
| 361 |
+
</li>
|
| 362 |
+
|
| 363 |
+
<li>
|
| 364 |
+
<a href="#" class="footer__link">Điều khoản dịch vụ</a>
|
| 365 |
+
</li>
|
| 366 |
+
</ul>
|
| 367 |
+
</div>
|
| 368 |
+
|
| 369 |
+
<div>
|
| 370 |
+
<h3 class="footer__title">Về chúng tôi</h3>
|
| 371 |
+
|
| 372 |
+
<ul class="footer__links">
|
| 373 |
+
<li>
|
| 374 |
+
<a href="#" class="footer__link">Tin tức</a>
|
| 375 |
+
</li>
|
| 376 |
+
|
| 377 |
+
<li>
|
| 378 |
+
<a href="#" class="footer__link">Cộng đồng</a>
|
| 379 |
+
</li>
|
| 380 |
+
|
| 381 |
+
<li>
|
| 382 |
+
<a href="#" class="footer__link">Đội ngũ của chúng tôi</a>
|
| 383 |
+
</li>
|
| 384 |
+
|
| 385 |
+
<li>
|
| 386 |
+
<a href="#" class="footer__link">Trung tâm hỗ trợ</a>
|
| 387 |
+
</li>
|
| 388 |
+
</ul>
|
| 389 |
+
</div>
|
| 390 |
+
|
| 391 |
+
<div>
|
| 392 |
+
<h3 class="footer__title">Liên hệ</h3>
|
| 393 |
+
|
| 394 |
+
<ul class="footer__links">
|
| 395 |
+
<li>
|
| 396 |
+
<address class="footer__info">
|
| 397 |
+
X. Phương Chiểu<br />
|
| 398 |
+
TP. Hưng Yên, Hưng Yên
|
| 399 |
+
</address>
|
| 400 |
+
</li>
|
| 401 |
+
|
| 402 |
+
<li>
|
| 403 |
+
<address class="footer__info">
|
| 404 |
+
dothulieu12@gmail.com <br />
|
| 405 |
+
0947-066-385
|
| 406 |
+
</address>
|
| 407 |
+
</li>
|
| 408 |
+
</ul>
|
| 409 |
+
</div>
|
| 410 |
+
|
| 411 |
+
<div>
|
| 412 |
+
<h3 class="footer__title">Social</h3>
|
| 413 |
+
|
| 414 |
+
<div class="footer__social">
|
| 415 |
+
<a
|
| 416 |
+
href="https://www.facebook.com/"
|
| 417 |
+
target="_blank"
|
| 418 |
+
class="footer__social-link"
|
| 419 |
+
>
|
| 420 |
+
<i class="ri-facebook-circle-line"></i>
|
| 421 |
+
</a>
|
| 422 |
+
|
| 423 |
+
<a
|
| 424 |
+
href="https://www.facebook.com/"
|
| 425 |
+
target="_blank"
|
| 426 |
+
class="footer__social-link"
|
| 427 |
+
>
|
| 428 |
+
<i class="ri-instagram-line"></i>
|
| 429 |
+
</a>
|
| 430 |
+
|
| 431 |
+
<a
|
| 432 |
+
href="https://twitter.com/"
|
| 433 |
+
target="_blank"
|
| 434 |
+
class="footer__social-link"
|
| 435 |
+
>
|
| 436 |
+
<i class="ri-twitter-x-line"></i>
|
| 437 |
+
</a>
|
| 438 |
+
</div>
|
| 439 |
+
</div>
|
| 440 |
+
</div>
|
| 441 |
+
</div>
|
| 442 |
+
|
| 443 |
+
<span class="footer__copy">
|
| 444 |
+
© All Rights Reserved By ThuLieu Do
|
| 445 |
+
</span>
|
| 446 |
+
</footer>
|
| 447 |
+
|
| 448 |
+
<!--========== SCROLL UP ==========-->
|
| 449 |
+
<a href="#" class="scrollup" id="scroll-up">
|
| 450 |
+
<i class="ri-arrow-up-line"></i>
|
| 451 |
+
</a>
|
| 452 |
+
|
| 453 |
+
<!--=============== SCROLLREVEAL ===============-->
|
| 454 |
+
<script src="assets/js/scrollreveal.min.js"></script>
|
| 455 |
+
|
| 456 |
+
<!--=============== SWIPER JS ===============-->
|
| 457 |
+
<script src="assets/js/swiper-bundle.min.js"></script>
|
| 458 |
+
|
| 459 |
+
<!--=============== MAIN JS ===============-->
|
| 460 |
+
<script src="assets/js/main.js"></script>
|
| 461 |
+
</body>
|
| 462 |
+
</html>
|