@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800;900&family=Roboto:wght@400;500;700&display=swap'); *{ margin: 0; padding: 0; box-sizing: border-box; font-family: 'Roboto', sans-serif; } body{ font-size: clamp(1rem, 1.2vmax, 4rem); --accent-color: hsl(268,74,51); --hue: 268; --saturation: 74%; --lightness: 51%; --text-color: 17, 17, 17; --foreground-color: 255, 255, 255; scroll-behavior: smooth; overflow: hidden; display: grid; grid-template-rows: auto 1fr; } main{ scroll-snap-type: y mandatory; max-height: calc(100vh - 6rem); display: flex; flex-direction: column; overflow-y: auto; } a:any-link{ text-decoration: none; color: inherit; } h1, h2, h3, h4, h5{ font-family: 'Poppins', sans-serif; font-weight: 600; } h1{ font-size: 2rem; line-height: 1; margin-bottom: 1rem; word-spacing: 0.12em; max-width: 20ch; } h2{ font-size: 2rem; } h3{ font-size: 1.5rem; } h4{ font-size: 1rem; } h5{ font-size: 0.8rem; } p{ font-family: 'Roboto', sans-serif; line-height: 1.6; max-width: 70ch; font-size: 1.2rem; color: rgba(var(--text-color), 0.8); } header{ z-index: 2; position: sticky; top: 0; height: 6rem; display: flex; width: 100%; align-items: center; padding: 1.5rem; .identity{ text-transform: uppercase; margin-left: auto; color: rgba($color: #000000, $alpha: 0.6); } } section{ display: flex; flex-direction: column; justify-content: center; flex: 1; padding: 1.5rem; min-height: 100vh; scroll-snap-align: start; h1{ text-transform: uppercase; font-weight: 800; } sm-button{ display: inline-flex; width: max-content; margin-top: 1.5rem; font-family: 'Poppins', sans-serif; } } .card{ display: flex; width: 18rem; min-width: 18rem; overflow: hidden; flex-direction: column; margin-right: 1.5rem; border-radius: 0.2rem; background: rgba($color: #000000, $alpha: 0.06); border: solid 1px rgba($color: #000000, $alpha: 0.1); img{ height: 100%; width: 100%; object-fit: cover; } p, h4{ padding: 0 1rem; } h4{ padding-top: 1rem; } p{ padding-bottom: 1rem; } } .link{ img{ height: 6rem; } } sm-carousel{ margin-top: 3rem; margin-left: -1.5rem; } sm-carousel::part(carousel){ padding: 1.5rem; } .main-logo{ width: 1.4rem; height: 1.4rem; margin-right: 0.4rem; } @media screen and (min-width: 640px){ h1{ font-size: 3.5rem; } p{ font-size: 1.2rem; } section, header{ padding: 2rem 4rem; } } @media screen and (min-width: 1280px){ section, header{ padding: 2rem 6vw; } } @media screen and (min-width: 1920px){ section, header{ padding: 2rem 8vw; } }