| |
| // HTML & Body |
| |
| html { |
| font-size: calc(77% + 6 * (100vw - 320px) / 1680); |
| scroll-behavior: smooth; |
| } |
| |
| body { |
| color: $white; |
| color: var(--text-white); |
| font-family: 'Ubuntu', sans-serif; |
| background: #9380BF; |
| background-image: linear-gradient(90deg, #4BC0C8 0%, #C779D0 50%, #FEAC5E 100%); |
| background-image: var(--rainbow); |
| } |
| |
| ::selection { |
| background-color: #71DBE2; |
| color: #3D1067; |
| } |
| |
| // ----------------------------- |
| // Typography |
| |
| .h2 { |
| font-family: 'Livvic', sans-serif; |
| font-size: 3.125em; |
| line-height: 1.28; |
| font-weight: 300; |
| margin-bottom: 1.4em; |
| margin-top: 1.4em; |
| } |
| |
| .h3 { |
| font-size: 1.375em; |
| font-weight: 700; |
| margin-bottom: 0.6363em; |
| } |
| |
| .bodytext { |
| font-size: 1.125em; |
| line-height: 1.778; |
| |
| &--large { |
| font-size: 1.375em; |
| line-height: 1.636; |
| } |
| } |
| |
| .quote { |
| font-family: 'Livvic', sans-serif; |
| font-size: calc(2em + 1vw); |
| line-height: 1.28; |
| font-weight: 300; |
| |
| &--small { |
| font-size: calc(0.75em + 1vw); |
| line-height: 1.4; |
| } |
| } |
| |
| // ----------------------------- |
| // Buttons |
| |
| .btn { |
| display: inline-block; |
| background: $white; |
| background: var(--background); |
| border-radius: 0.3125em; |
| color: $medium-purple; |
| color: var(--text-second); |
| text-transform: uppercase; |
| font-weight: 400; |
| font-size: 1.375em; |
| line-height: 1; |
| letter-spacing: 0.136em; |
| padding: 0.636em 1em; |
| text-decoration: none; |
| transition: background 0.2s ease-out; |
| |
| &:hover, |
| &:focus { |
| background: lighten($medium-purple, 40%); |
| } |
| |
| &:focus { |
| outline: 1px dashed $dark-purple; |
| outline-offset: -0.3125em; |
| } |
| } |
| |
| // ----------------------------- |
| // A11y related classes |
| |
| button:focus:not(:focus-visible), |
| a:focus:not(:focus-visible) { |
| outline: 2px solid transparent; |
| } |
| |
| .sr-only:not(:focus):not(:active) { |
| clip: rect(0 0 0 0); |
| clip-path: inset(50%); |
| height: 1px; |
| overflow: hidden; |
| position: absolute; |
| white-space: nowrap; |
| width: 1px; |
| } |