@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap'); /* Variables CSS */ :root { --header-height: 3.5rem; /* Color mode HSL(hue, saturation, lightness) */ --first-color: hsl(0, 42%, 24%); --first-color-alt: hsl(0, 0%, 22%); --second-color: hsl(55, 50%, 47%); --second-color: hsl(55, 20%, 27%); --title-color: hsl(0, 0%, 100%); --text-color: hsl(0, 0%, 53%); --body-color: hsl(0, 0%, 13%); /* .5rem = 8px / 1rem = 16px */ --body-font: "Montserrat", sans-serif; --biggest-font-size: 2rem; --normal-font-size: .938rem; --small-font-size: .813rem; /* Font weight */ --font-medium: 500; --font-semi-bold: 600; --font-bold: 700; /* z index */ --z-tooltip: 10; --z-fixed: 100; } /* Responsive typography */ @media screen and (min-width: 1152px) { :root { --biggest-font-size: 4rem; --h3-font-size: 1.125rem; --normal-font-size: 1rem; --small-font-size: .875rem; } } /* Base */ * { box-sizing: border-box; padding: 0; margin: 0; } body { font-family: var(--body-font); font-size: var(--normal-font-size); font-weight: var(--font-medium); background-color: var(--body-color); color: var(--text-color); } /* Navigation for mabile devices */ @media screen and (max-width: 1023px) { .nav-menu { position: fixed; top: 0; right: -100%; background-color: var(--body-color); width: 80%; height: 100%; box-shadow: 0 0 16px hsla(268, 58%, 4%, .2); padding: 6rem 3rem; display: flex; flex-direction: column; row-gap: 2.5rem; transition: right .4s; } } ul { list-style: none; } a { text-decoration: none; } img { display: block; max-width: 100%; height: auto; } /* Reusable css classes */ .nav-container, .container { max-width: 1120px; margin-inline: 1.5rem; } .main { overflow: hidden; /* for animation */ } /* Header & Nav */ .header { position: fixed; width: 100%; top: 0; left: 0; background-color: var(--body-color); z-index: var(--z-fixed); } .nav-container { position: relative; height: var(--header-height); display: flex; justify-content: space-between; align-items: center; } .nav-logo, .nav-toggle, .nav-close { display: flex; justify-content: center; align-items: center; } .nav-logo { color: var(--text-color); column-gap: .5rem; font-weight: var(--font-semi-bold); } .nav-logo img { font-size: 1.25rem; font-weight: initial; } .nav-toggle, .nav-close { background-color: var(--first-color-alt); width: 1.8rem; height: 1.8rem; border-radius: 20%; font-size: 1.25rem; cursor: pointer; /* margin: 1rem; */ } .nav-list { display: flex; flex-direction: column; row-gap: 2.5rem; } .nav-link { color: var(--text-color); font-weight: var(--font-semi-bold); transition: color .4s; } .nav-link:hover { color: var(--title-color); } .nav-button { display: inline-block; width: max-content; background-color: var(--body-color); border: 1px solid var(--text-color); padding: .5rem 2rem; border-radius: 4rem; color: var(--title-color); font-weight: var(--font-semi-bold); } .nav-close { position: absolute; top: 1rem; right: 1.45rem; } /* Show menu */ .show-menu { right: 0; } /* Home */ .home { position: relative; height: 100vh; } .home-container { padding-top: 7rem; display: grid; row-gap: 3rem; } .home-content { text-align: center; } .home-subtitle { font-size: var(--biggest-font-size); margin-bottom: 3rem; letter-spacing: 5px; } .home-title { position: relative; width: max-content; margin: 0 auto .75rem; font-size: var(--biggest-font-size); color: var(--title-color); } .home-title img { position: absolute; right: 0; bottom: 0; } .home-title span { position: relative; z-index: 5; } .home-description { line-height: 1.5; margin-bottom: 1.75rem; } .home-button { display: inline-block; color: var(--title-color); border: 1px solid var(--text-color); padding: 1.125rem 3rem; border-radius: 4rem; font-weight: var(--font-semi-bold); box-shadow: 0 8px 32px hsla(0, 0%, 32%, 0.3), inset 0 4px 8px hsla(0, 0%, 44%, 0.4); } .home-images { position: relative; display: flex; justify-content: center; height: 250px; } .home-images img { position: absolute; } .home-frame { width: 256px; top: -1rem; } .home-sphere { width: 256px; } .home-triangle { width: 256px; } .home-r { width: 256px; } .home-l { width: 256px; } /* .home-text-render, .home-text-line { width: 256px; } */ .footer { display: block; margin-inline: 3rem; border-top: .2px solid var(--text-color); } .footer-copyright { display: flex; justify-content: left; width: 100%; padding-left: 1.5rem; margin-top: 1rem; font-weight: var(--font-semi-bold); } .footer-list { display: flex; align-items: center; column-gap: 4.5rem; padding: 1.5rem; color: var(--title-color); font-size: var(--small-font-size); font-weight: var(--font-medium); } /* For small devices */ @media screen and (max-width: 300px) { .nav-container { margin-inline: 1rem; } .home-title { font-size: 1.75rem; } .footer-list { column-gap: .5rem; } } /* Samsung Z Fold 5 */ @media screen and (min-width: 344px) and (min-height: 882px) { .home-container { padding-top: 10rem; } .home-title { font-size: 1.75rem; } .footer { margin-top: 8rem; margin-inline: 1rem; } .footer-list { column-gap: 1rem; } } /* Samsung S8+ */ @media screen and (min-width: 360px) and (min-height: 740px) { .home-container { padding-top: 10rem; } .home-title { font-size: 1.75rem; } .footer { margin-top: 8rem; margin-inline: 1rem; } .footer-list { column-gap: 1rem; } } /* iPhone SE */ @media screen and (min-width: 375px) and (min-height: 667px) { .home-container { padding-top: 8rem; } .home-title { font-size: 1.75rem; } .footer { margin-top: 15rem; margin-inline: 1rem; } .footer-list { column-gap: 1rem; } } @media screen and (min-width: 376px) and (min-height: 800px) { .home-container { padding-top: 10rem; } .footer-list { column-gap: 1rem; } } @media screen and (min-width: 576px) { .home-container { grid-template-columns: 400px; justify-content: center; } .nav-menu { width: 50%; } } @media screen and (min-width: 767px) { .home { display: grid; place-content: center; } .home-container { grid-template-columns: repeat(2, 350px); padding-top: 0; } .home-content { text-align: initial; } .home-title { margin-inline: 0; } .home-frame, .home-sphere, .home-triangle, .home-r, .home-l { margin-left: 4rem; } } @media screen and (min-width: 1023px) { .nav { height: calc(--header-height) + 2rem; } .nav-toggle, .nav-close { display: none; } .nav-menu { width: 100%; display: flex; align-items: center; column-gap: 4.5rem; } .nav-list { margin-left: auto; flex-direction: row; column-gap: 4.5rem; } } @media screen and (min-width: 1152px) { .nav-container { margin-inline: auto; } .home-container { grid-template-columns: 460px 650px; align-items: center; z-index: 5; } .home-subtitle { font-size: var(--normal-font-size); margin-bottom: .75rem; } .home-title { /* letter-spacing: -3px; */ margin-bottom: 1rem; } .home-title img { width: 100px; right: -.5rem; } .home-description { font-size: var(--h3-font-size); margin-bottom: 3rem; } .home-frame, .home-sphere, .home-triangle, .home-r, .home-l { width: 350px; margin-left: 8rem; } }