styles.tsx 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299
  1. import { Button } from "src/components/Button";
  2. import styled from "styled-components";
  3. export const StyledHome = styled.div`
  4. display: flex;
  5. flex-direction: column;
  6. gap: 8em;
  7. font-family: "Roboto", sans-serif;
  8. * {
  9. box-sizing: border-box;
  10. }
  11. @media only screen and (max-width: 768px) {
  12. gap: 3em;
  13. }
  14. `;
  15. export const StyledGradientText = styled.span`
  16. background: #ffb76b;
  17. background: linear-gradient(
  18. to right,
  19. #ffb76b 0%,
  20. #ffa73d 30%,
  21. #ff7c00 60%,
  22. #ff7f04 100%
  23. );
  24. background-clip: text;
  25. -webkit-background-clip: text;
  26. -webkit-text-fill-color: transparent;
  27. `;
  28. export const StyledNavbar = styled.nav`
  29. display: flex;
  30. justify-content: center;
  31. align-items: center;
  32. width: 100%;
  33. padding: 16px 16px;
  34. gap: 20px;
  35. @media only screen and (max-width: 768px) {
  36. a:first-of-type {
  37. display: none;
  38. }
  39. }
  40. `;
  41. export const StyledHeroSection = styled.section`
  42. display: flex;
  43. flex-direction: column;
  44. justify-content: center;
  45. align-items: center;
  46. gap: 1.5em;
  47. min-height: 45vh;
  48. padding: 0 3%;
  49. `;
  50. export const StyledNavLink = styled.a`
  51. display: flex;
  52. justify-content: center;
  53. align-items: center;
  54. font-size: 1rem;
  55. cursor: pointer;
  56. transition: color 0.2s;
  57. &:hover {
  58. font-weight: 500;
  59. color: ${({ theme }) => theme.ORANGE};
  60. }
  61. `;
  62. export const StyledTitle = styled.h1`
  63. font-size: 5rem;
  64. font-weight: 900;
  65. margin: 0;
  66. @media only screen and (max-width: 768px) {
  67. font-size: 3rem;
  68. }
  69. `;
  70. export const StyledSubTitle = styled.h2`
  71. color: #dedede;
  72. text-align: center;
  73. font-size: 2.5rem;
  74. max-width: 40rem;
  75. margin: 0;
  76. @media only screen and (max-width: 768px) {
  77. font-size: 1.75rem;
  78. }
  79. `;
  80. export const StyledMinorTitle = styled.p`
  81. color: #b4b4b4;
  82. text-align: center;
  83. font-size: 1.25rem;
  84. margin: 0;
  85. letter-spacing: 1.2px;
  86. @media only screen and (max-width: 992px) {
  87. font-size: 1rem;
  88. }
  89. `;
  90. export const StyledButton = styled(Button)`
  91. background: ${({ status }) => !status && "#a13cc2"};
  92. padding: 12px 24px;
  93. div {
  94. font-family: "Roboto", sans-serif;
  95. font-weight: 700;
  96. font-size: 16px;
  97. }
  98. `;
  99. export const StyledFeaturesSection = styled.section`
  100. display: flex;
  101. max-width: 85%;
  102. margin: 0 auto;
  103. gap: 2rem;
  104. padding: 60px 3%;
  105. @media only screen and (max-width: 768px) {
  106. flex-direction: column;
  107. max-width: 80%;
  108. }
  109. `;
  110. export const StyledSectionCard = styled.div`
  111. text-align: center;
  112. flex: 1;
  113. `;
  114. export const StyledCardTitle = styled.div`
  115. font-weight: 700;
  116. font-size: 1.5rem;
  117. padding: 1.5rem 0 0.5rem;
  118. letter-spacing: 1px;
  119. `;
  120. export const StyledCardIcon = styled.div``;
  121. export const StyledCardDescription = styled.p`
  122. color: #e0e0e0;
  123. text-align: left;
  124. line-height: 1.5rem;
  125. font-size: 0.875rem;
  126. `;
  127. export const StyledGitHubSection = styled.section`
  128. display: flex;
  129. flex-direction: row;
  130. justify-content: space-between;
  131. max-width: 85%;
  132. margin: 0 auto;
  133. gap: 4rem;
  134. line-height: 1.5;
  135. padding: 60px 3%;
  136. & > div {
  137. width: 100%;
  138. }
  139. @media only screen and (max-width: 768px) {
  140. flex-direction: column-reverse;
  141. max-width: 80%;
  142. }
  143. `;
  144. export const StyledSectionArea = styled.div`
  145. display: flex;
  146. flex-direction: column;
  147. gap: 2rem;
  148. width: 40%;
  149. margin-top: 3rem;
  150. h2,
  151. p {
  152. text-align: left;
  153. letter-spacing: unset;
  154. }
  155. @media only screen and (max-width: 768px) {
  156. width: 100%;
  157. h2,
  158. p {
  159. text-align: center;
  160. }
  161. button {
  162. align-self: center;
  163. }
  164. }
  165. `;
  166. export const StyledSponsorSection = styled.section`
  167. display: flex;
  168. flex-direction: column;
  169. justify-content: center;
  170. align-items: center;
  171. max-width: 85%;
  172. margin: 0 auto;
  173. gap: 2rem;
  174. line-height: 1.5;
  175. padding: 60px 3%;
  176. @media only screen and (max-width: 768px) {
  177. max-width: 80%;
  178. }
  179. `;
  180. export const StyledPreviewSection = styled.section`
  181. display: flex;
  182. flex-direction: row;
  183. justify-content: space-between;
  184. max-width: 85%;
  185. margin: 0 auto;
  186. padding: 0 3%;
  187. @media only screen and (max-width: 768px) {
  188. display: none;
  189. max-width: 80%;
  190. }
  191. `;
  192. export const StyledImage = styled.img`
  193. max-width: 100%;
  194. filter: drop-shadow(0px 0px 12px rgba(255, 255, 255, 0.6));
  195. `;
  196. export const StyledFooter = styled.footer`
  197. display: flex;
  198. flex-direction: row;
  199. justify-content: space-between;
  200. width: 80%;
  201. margin: 0 auto;
  202. padding: 30px 3%;
  203. border-top: 1px solid #b4b4b4;
  204. opacity: 0.7;
  205. `;
  206. export const StyledFooterText = styled.p`
  207. color: #b4b4b4;
  208. `;
  209. export const StyledIconLinks = styled.div`
  210. display: flex;
  211. gap: 20px;
  212. ${StyledNavLink} {
  213. color: unset;
  214. }
  215. `;
  216. export const StyledHighlightedText = styled.span`
  217. text-decoration: underline;
  218. text-decoration-style: dashed;
  219. text-decoration-color: #eab308;
  220. `;
  221. export const StyledProducthunt = styled.div`
  222. display: flex;
  223. flex-direction: column;
  224. justify-content: space-between;
  225. align-items: center;
  226. gap: 3rem;
  227. border-right: 1px solid white;
  228. padding-right: 3rem;
  229. @media only screen and (max-width: 768px) {
  230. border-right: none;
  231. border-bottom: 1px solid white;
  232. padding-bottom: 3rem;
  233. padding-right: 0;
  234. }
  235. `;
  236. export const StyledPaidSection = styled.section`
  237. display: flex;
  238. max-width: 85%;
  239. margin: 0 auto;
  240. gap: 2rem;
  241. padding: 60px 3%;
  242. @media only screen and (max-width: 768px) {
  243. flex-direction: column;
  244. max-width: 80%;
  245. }
  246. `;
  247. export const StyledAffiliate = styled.div`
  248. display: flex;
  249. flex-direction: column;
  250. justify-content: space-between;
  251. align-items: center;
  252. gap: 3rem;
  253. `;