main.css 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564
  1. @import url('https://fonts.googleapis.com/css?family=La+Belle+Aurore|Open+Sans');
  2. :root {
  3. --brightYellow:#E3B505;
  4. --darkBrown:#BB9457;
  5. --yellow:rgb(242, 180, 80);
  6. --brown:#382923;
  7. --black:#191919;
  8. --grey:#A9B2AC;
  9. }
  10. * {
  11. margin: 0;
  12. padding: 0;
  13. box-sizing: border-box;
  14. }
  15. body {
  16. font-family: 'Open Sans', sans-serif;
  17. background: linear-gradient(rgba(255,255,255,0.85), rgba(255,255,255,0.85)), url('https://raw.githubusercontent.com/john-smilga/grid-coffee-project-final/master/img/bodyBcg.jpeg');
  18. color: var(--black);
  19. }
  20. /* global styles */
  21. .bell-fonts {
  22. font-family: 'La Belle Aurore', cursive;
  23. }
  24. /* section padding */
  25. .section-padding {
  26. padding: 3rem 0;
  27. }
  28. /* grid container */
  29. .grid-container {
  30. max-width: 90vw;
  31. margin: 2rem auto;
  32. display: grid;
  33. grid-row-gap: 2rem;
  34. }
  35. @media screen and (min-width: 768px) {
  36. .grid-container--medium-2 {
  37. display: grid;
  38. grid-template-columns: 1fr 1fr;
  39. grid-column-gap: 4rem;
  40. }
  41. .grid-container {
  42. max-width: 75vw;
  43. }
  44. }
  45. /* secition title */
  46. .section-title {
  47. padding: 1rem 0.5rem;
  48. }
  49. .section-title--left {
  50. margin-left: 10rem;
  51. }
  52. .section-title__name {
  53. font-size: 3rem;
  54. text-transform: capitalize;
  55. }
  56. .section-title__underline {
  57. background: var(--yellow);
  58. width: 5rem;
  59. height: 0.25rem;
  60. }
  61. .section-title__text {
  62. letter-spacing: 0.1rem;
  63. line-height: 1.5;
  64. margin-top: 1rem;
  65. color: var(--grey);
  66. }
  67. /* end of global styles */
  68. /* preloader */
  69. .preloader{
  70. position: fixed;
  71. top: 0;
  72. left: 0;
  73. right: 0;
  74. bottom: 0;
  75. background: var(--brightYellow);
  76. z-index: 999;
  77. display: grid;
  78. justify-content: center;
  79. align-items: center;
  80. }
  81. /* header */
  82. .header {
  83. height: 100vh;
  84. display: grid;
  85. grid-template-columns: 80%;
  86. justify-content: center;
  87. align-items: center;
  88. position: relative;
  89. }
  90. @media screen and (max-width: 768px) {
  91. .header {
  92. background: url('https://raw.githubusercontent.com/john-smilga/grid-coffee-project-final/master/img/headerBcg.jpeg') center/cover fixed no-repeat;
  93. /* background-position: center;
  94. background-size: cover;
  95. background-attachment: fixed;
  96. background-repeat: no-repeat; */
  97. }
  98. }
  99. /* banner */
  100. .banner {
  101. text-align: center;
  102. /* z-index: 3; */
  103. }
  104. .banner__title{
  105. font-size: 4rem;
  106. text-transform: capitalize;
  107. color: var(--brightYellow);
  108. }
  109. @media screen and (min-width: 768px) {
  110. .banner__title{
  111. font-size: 9rem;
  112. }
  113. }
  114. .banner__social-icon {
  115. display: block;
  116. text-decoration: none;
  117. color: var(--black);
  118. border: 0.1rem solid var(--black);
  119. border-radius: 50%;
  120. padding: 0.25rem;
  121. transition: all 0.5s linear;
  122. }
  123. .banner__social-icon:hover {
  124. background:var(--brightYellow);
  125. color: var(--black);
  126. }
  127. .banner__icons {
  128. width: 50%;
  129. margin: 0 auto;
  130. display: grid;
  131. grid-template-columns: repeat(4, 2rem);
  132. grid-column-gap: 0.5rem;
  133. }
  134. /* video */
  135. .video__container {
  136. position: absolute;
  137. top: 0;
  138. left: 0;
  139. width: 100%;
  140. height: 100%;
  141. z-index: -1;
  142. }
  143. .video__item {
  144. width: 100%;
  145. height: 100%;
  146. object-fit: cover;
  147. }
  148. /* nav Btn */
  149. .navBtn{
  150. position: fixed;
  151. top: 5%;
  152. right: 5%;
  153. font-size: 3.5rem;
  154. color: var(--yellow);
  155. cursor: pointer;
  156. animation-name: pulse;
  157. animation-duration: 2s;
  158. animation-iteration-count: infinite;
  159. }
  160. /* nav btn animation */
  161. @keyframes pulse{
  162. 0%{
  163. transform: scale(1)
  164. }
  165. 50%{
  166. transform: scale(1.5)
  167. }
  168. 100%{
  169. transform: scale(1)
  170. }
  171. }
  172. /* nav */
  173. .nav{
  174. position: fixed;
  175. top: 0;
  176. left: 0;
  177. height: 100%;
  178. width: 10rem;
  179. background: rgba(242,180,80,0.9);
  180. z-index: 3;
  181. }
  182. .nav__links{
  183. list-style-type: none;
  184. }
  185. .nav__single-link
  186. {
  187. display: block;
  188. text-decoration: none;
  189. text-transform: capitalize;
  190. color: var(--brown);
  191. font-size: 1.5rem;
  192. padding: 0.5rem 1rem;
  193. transition: all 0.5s ease-in-out;
  194. }
  195. .nav__single-link:hover{
  196. background: var(--brown);
  197. color: rgba(242,180,80,0.9);
  198. padding-left: 1.5rem;
  199. }
  200. .nav__logo:hover{
  201. background: var(--grey);
  202. }
  203. /* */
  204. .nav{
  205. width: 0;
  206. overflow: hidden;
  207. transition: all 0.5s linear;
  208. }
  209. .nav--show{
  210. width: 10rem;
  211. }
  212. /* video switch */
  213. .video__switch-container{
  214. display: none;
  215. }
  216. @media screen and (min-width:768px){
  217. .video__switch-container{
  218. display: block;
  219. position: absolute;
  220. bottom: 5%;
  221. right: 5%;
  222. z-index: 3;
  223. }
  224. .video__switch{
  225. position: relative;
  226. width: 5rem;
  227. background: var(--yellow);
  228. text-transform: uppercase;
  229. display: flex;
  230. justify-content: space-between;
  231. padding: 0.25rem;
  232. cursor: pointer;
  233. border-radius: 0.5rem;
  234. }
  235. .video__switch-btn{
  236. position: absolute;
  237. top: 0;
  238. left: 0;
  239. height: 100%;
  240. width: 50%;
  241. background: var(--brown);
  242. border-radius: 0.5rem;
  243. transition: all 0.3s ease-out;
  244. }
  245. .btnSlide{
  246. left: 50%;
  247. }
  248. }
  249. /* about */
  250. .about-container {
  251. display: grid;
  252. grid-template-columns: 100%;
  253. grid-template-rows: auto 1fr;
  254. grid-gap: 2rem;
  255. }
  256. .about__img-item {
  257. width: 100%;
  258. display: block;
  259. height: 100%;
  260. border-radius: 0.25rem;
  261. }
  262. @media screen and (min-width: 768px) {
  263. .about__img-special {
  264. order: -1;
  265. }
  266. .about-container {
  267. grid-template-rows: 1fr 1fr;
  268. }
  269. }
  270. /* drink section */
  271. .drink{
  272. background: var(--brown);
  273. color: var(--brightYellow);
  274. text-transform: capitalize;
  275. }
  276. .drink-form,.drink-card{
  277. text-align: center;
  278. display: grid;
  279. grid-template-columns: 70%;
  280. justify-content: center;
  281. grid-row-gap: 1.25rem;
  282. }
  283. .drink-form__feedback{
  284. border:0.1rem solid var(--brightYellow);
  285. padding: 0.25rem;
  286. display: none;
  287. }
  288. .error{
  289. display: block;
  290. color: red;
  291. border-color: red;
  292. }
  293. .success{
  294. display: block;
  295. color: green;
  296. border-color: green;
  297. }
  298. .drink-form__title,.drink-card__title{
  299. font-size: 3rem;
  300. }
  301. .input-name,.input-lastname,.input-email{
  302. width: 100%;
  303. }
  304. .input-name,.input-lastname,.input-email,.input-submit{
  305. font-size: 1rem;
  306. border-radius: 0.5rem;
  307. padding: 0.25rem 0.5rem;
  308. background: rgba(111,87,77,0.6);
  309. color: var(--darkBrown);
  310. border:none;
  311. outline: none;
  312. }
  313. .input-name::placeholder,.input-lastname::placeholder,.input-email::placeholder{
  314. color: var(--darkBrown);
  315. text-transform: capitalize;
  316. }
  317. .input-submit{
  318. background: var(--yellow);
  319. color: var(--black);
  320. transition: all 0.5s linear;
  321. cursor: pointer;
  322. text-transform: uppercase;
  323. }
  324. .input-submit:hover{
  325. opacity: 0.8;
  326. }
  327. .drink-card__list{
  328. display: grid;
  329. grid-template-columns: 100%;
  330. grid-row-gap: 2rem;
  331. }
  332. .person{
  333. display: grid;
  334. grid-template-columns: auto auto 1fr;
  335. align-items: center;
  336. text-align: left;
  337. grid-gap: 1rem;
  338. border:0.1rem solid rgba(111,87,77,0.6);
  339. padding: 1rem;
  340. border-radius: 0.5rem;
  341. font-size: 1.5rem;
  342. }
  343. .person__thumbnail{
  344. border-radius: 50%;
  345. }
  346. @media screen and (min-width:768px){
  347. .drink-card__list{
  348. grid-template-columns: 1fr 1fr;
  349. grid-gap: 1rem;
  350. }
  351. }
  352. /* work section */
  353. .work-container{
  354. max-width: 90vw;
  355. margin:2rem auto;
  356. }
  357. .work-item__img{
  358. width: 100%;
  359. height: 100%;
  360. display: block;
  361. transition: all 1s linear;
  362. opacity: 1;
  363. }
  364. .work-item{
  365. background: linear-gradient(var(--yellow),var(--yellow));
  366. overflow: hidden;
  367. position: relative;
  368. }
  369. .work-item:hover .work-item__img{
  370. opacity:0.5;
  371. transform: scale(1.2)
  372. }
  373. .work-item__icon{
  374. position: absolute;
  375. color: var(--brightYellow);
  376. top: 50%;
  377. left: 50%;
  378. display: inline-block;
  379. font-size: 4rem;
  380. text-decoration: none;
  381. transition: all 0.5s ease;
  382. transform: scale(0);
  383. }
  384. .work-item:hover .work-item__icon{
  385. transform: scale(1.3) translate(-50%,-50%)
  386. }
  387. .work-item__icon:hover{
  388. color: var(--brown);
  389. cursor: pointer;
  390. }
  391. @media screen and (min-width:576px){
  392. .work-container{
  393. display: grid;
  394. grid-template-columns: 1fr 1fr;
  395. grid-gap: 1rem;
  396. }
  397. }
  398. @media screen and (min-width:992px){
  399. .work-container{
  400. height: 100vh;
  401. grid-template-columns: repeat(4,1fr);
  402. grid-template-rows: repeat(4,1fr);
  403. grid-template-areas:
  404. "one one two three"
  405. "one one four four"
  406. "five six seven seven"
  407. "eight nine seven seven"
  408. }
  409. .item-1{
  410. grid-area: one;
  411. }
  412. .item-2{
  413. grid-area: two;
  414. }
  415. .item-3{
  416. grid-area: three;
  417. }
  418. .item-4{
  419. grid-area: four;
  420. }
  421. .item-5{
  422. grid-area: five;
  423. }
  424. .item-6{
  425. grid-area: six;
  426. }
  427. .item-7{
  428. grid-area: seven;
  429. }
  430. .item-8{
  431. grid-area: eight;
  432. }
  433. .item-9{
  434. grid-area: nine;
  435. }
  436. }
  437. /* modal */
  438. .work-modal{
  439. display: none;
  440. }
  441. .work-modal--show{
  442. position: fixed;
  443. background: rgba(0,0,0,0.5);
  444. top: 0;
  445. left: 0;
  446. bottom: 0;
  447. right: 0;
  448. z-index: 999;
  449. display: grid;
  450. justify-content: center;
  451. align-items: center;
  452. }
  453. .work-modal__item{
  454. background: url('https://raw.githubusercontent.com/john-smilga/grid-coffee-project-final/master/img/work-1.jpeg') center/cover;
  455. height: 70vh;
  456. width: 80vw;
  457. border:0.5rem solid var(--yellow);
  458. border-radius: 0.4rem;
  459. }
  460. @media screen and (min-width:768px){
  461. .work-modal__item{
  462. height: 80vh;
  463. width: 60vw;
  464. }
  465. }
  466. .work-modal__close{
  467. position: fixed;
  468. font-size: 3rem;
  469. color: var(--brightYellow);
  470. bottom: 5%;
  471. right: 5%;
  472. transition: color 0.5s linear;
  473. cursor: pointer;
  474. text-decoration: none;
  475. display: inline-block;
  476. }
  477. .work-modal__close:hover{
  478. color: red;
  479. }
  480. /* contact section */
  481. .contact-container{
  482. max-width: 90vw;
  483. margin: 0 auto;
  484. display: grid;
  485. grid-row-gap: 1rem;
  486. }
  487. .contact-info{
  488. display: grid;
  489. justify-content: center;
  490. }
  491. .contact-item{
  492. margin: 1rem 0;
  493. padding: 0.5rem;
  494. }
  495. .contact-item__icon{
  496. font-size: 3rem;
  497. color: var(--yellow)
  498. }
  499. .contact-item__title{
  500. text-transform: uppercase;
  501. margin: 0.5rem 0;
  502. letter-spacing: 0.25rem;
  503. font-style: italic;
  504. }
  505. .contact-item__text{
  506. font-size: 1rem;
  507. text-transform: uppercase;
  508. color: var(--grey);
  509. }
  510. @media screen and (min-width:768px){
  511. .contact-info{
  512. grid-template-columns: repeat(3, 1fr);
  513. order:-1;
  514. }
  515. }
  516. @media screen and (min-width:992px){
  517. .contact-info{
  518. grid-template-columns: 1fr;
  519. order:0;
  520. }
  521. .contact-container{
  522. display: grid;
  523. grid-template-columns: 2fr 1fr;
  524. grid-column-gap: 2rem
  525. }
  526. .contact-map{
  527. align-self: center;
  528. }
  529. }