main.css 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570
  1. /**
  2. * Main styles for reveal.js
  3. *
  4. * @author Hakim El Hattab
  5. */
  6. /*********************************************
  7. * FONT-FACE DEFINITIONS
  8. *********************************************/
  9. @font-face {
  10. font-family: 'League Gothic';
  11. src: url('../assets/fonts/leaguegothic/league_gothic-webfont.ttf') format('truetype');
  12. font-weight: normal;
  13. font-style: normal;
  14. }
  15. /*********************************************
  16. * GLOBAL STYLES
  17. *********************************************/
  18. html, body {
  19. position: relative;
  20. padding: 0;
  21. margin: 0;
  22. overflow: hidden;
  23. font-family: 'Lato', Times, 'Times New Roman', serif;
  24. font-size: 36px;
  25. font-weight: 200;
  26. letter-spacing: -0.02em;
  27. background: #111;
  28. color: #eee;
  29. width: 100%;
  30. height: 100%;
  31. min-height: 600px;
  32. background: #555a5f;
  33. background: -moz-radial-gradient(center, ellipse cover, #555a5f 0%, #1c1e20 100%);
  34. background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%,#555a5f), color-stop(100%,#1c1e20));
  35. background: -webkit-radial-gradient(center, ellipse cover, #555a5f 0%,#1c1e20 100%);
  36. background: -o-radial-gradient(center, ellipse cover, #555a5f 0%,#1c1e20 100%);
  37. background: -ms-radial-gradient(center, ellipse cover, #555a5f 0%,#1c1e20 100%);
  38. background: radial-gradient(center, ellipse cover, #555a5f 0%,#1c1e20 100%);
  39. }
  40. /*********************************************
  41. * HEADERS
  42. *********************************************/
  43. h1, h2, h3, h4 {
  44. margin: 0 0 20px 0;
  45. color: #eee;
  46. font-family: 'League Gothic', sans-serif;
  47. line-height: 0.9em;
  48. letter-spacing: 0.02em;
  49. text-transform: uppercase;
  50. text-shadow: 0px 0px 6px rgba(0,0,0,0.2);
  51. }
  52. h1 { font-size: 136px; }
  53. h2 { font-size: 76px; }
  54. h3 { font-size: 56px; }
  55. h4 { font-size: 36px; }
  56. h1.inverted,
  57. h2.inverted,
  58. h3.inverted,
  59. h4.inverted {
  60. color: #fff;
  61. text-shadow: 0px 0px 2px rgba(0,0,0,0.2);
  62. }
  63. h1 {
  64. text-shadow: 0 1px 0 #ccc,
  65. 0 2px 0 #c9c9c9,
  66. 0 3px 0 #bbb,
  67. 0 4px 0 #b9b9b9,
  68. 0 5px 0 #aaa,
  69. 0 6px 1px rgba(0,0,0,.1),
  70. 0 0 5px rgba(0,0,0,.1),
  71. 0 1px 3px rgba(0,0,0,.3),
  72. 0 3px 5px rgba(0,0,0,.2),
  73. 0 5px 10px rgba(0,0,0,.25),
  74. 0 20px 20px rgba(0,0,0,.15);
  75. }
  76. /*********************************************
  77. * SLIDES
  78. *********************************************/
  79. #main {
  80. position: absolute;
  81. width: 900px;
  82. height: 600px;
  83. left: 50%;
  84. top: 50%;
  85. margin-left: -450px;
  86. margin-top: -320px;
  87. padding: 20px 0px;
  88. text-align: center;
  89. -webkit-perspective: 600px;
  90. -moz-perspective: 600px;
  91. -ms-perspective: 600px;
  92. perspective: 600px;
  93. -webkit-perspective-origin: 50% 25%;
  94. -moz-perspective-origin: 50% 25%;
  95. -ms-perspective-origin: 50% 25%;
  96. perspective-origin: 50% 25%;
  97. }
  98. #main>section,
  99. #main>section>section {
  100. display: none;
  101. position: absolute;
  102. width: 100%;
  103. min-height: 600px;
  104. -webkit-transform-style: preserve-3d;
  105. -moz-transform-style: preserve-3d;
  106. -ms-transform-style: preserve-3d;
  107. transform-style: preserve-3d;
  108. -webkit-transition: all 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
  109. -moz-transition: all 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
  110. -ms-transition: all 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
  111. -o-transition: all 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
  112. transition: all 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
  113. }
  114. #main section.present {
  115. display: block;
  116. position: absolute;
  117. z-index: 10;
  118. }
  119. /*********************************************
  120. * DEFAULT THEME
  121. *********************************************/
  122. #main section.past {
  123. display: block;
  124. opacity: 0;
  125. -webkit-transform: translate3d(-100%, 0, 0) rotateY(-90deg) translate3d(-100%, 0, 0);
  126. -moz-transform: translate3d(-100%, 0, 0) rotateY(-90deg) translate3d(-100%, 0, 0);
  127. -ms-transform: translate3d(-100%, 0, 0) rotateY(-90deg) translate3d(-100%, 0, 0);
  128. transform: translate3d(-100%, 0, 0) rotateY(-90deg) translate3d(-100%, 0, 0);
  129. }
  130. #main section.future {
  131. display: block;
  132. opacity: 0;
  133. -webkit-transform: translate3d(100%, 0, 0) rotateY(90deg) translate3d(100%, 0, 0);
  134. -moz-transform: translate3d(100%, 0, 0) rotateY(90deg) translate3d(100%, 0, 0);
  135. -ms-transform: translate3d(100%, 0, 0) rotateY(90deg) translate3d(100%, 0, 0);
  136. transform: translate3d(100%, 0, 0) rotateY(90deg) translate3d(100%, 0, 0);
  137. }
  138. #main section>section.past {
  139. display: block;
  140. opacity: 0;
  141. -webkit-transform: translate3d(0, -50%, 0) rotateX(70deg) translate3d(0, -50%, 0);
  142. -moz-transform: translate3d(0, -50%, 0) rotateX(70deg) translate3d(0, -50%, 0);
  143. -ms-transform: translate3d(0, -50%, 0) rotateX(70deg) translate3d(0, -50%, 0);
  144. transform: translate3d(0, -50%, 0) rotateX(70deg) translate3d(0, -50%, 0);
  145. }
  146. #main section>section.future {
  147. display: block;
  148. opacity: 0;
  149. -webkit-transform: translate3d(0, 50%, 0) rotateX(-70deg) translate3d(0, 50%, 0);
  150. -moz-transform: translate3d(0, 50%, 0) rotateX(-70deg) translate3d(0, 50%, 0);
  151. -ms-transform: translate3d(0, 50%, 0) rotateX(-70deg) translate3d(0, 50%, 0);
  152. transform: translate3d(0, 50%, 0) rotateX(-70deg) translate3d(0, 50%, 0);
  153. }
  154. /*********************************************
  155. * CONCAVE THEME
  156. *********************************************/
  157. .concave #main>section.past {
  158. -webkit-transform: translate3d(-100%, 0, 0) rotateY(90deg) translate3d(-100%, 0, 0);
  159. -moz-transform: translate3d(-100%, 0, 0) rotateY(90deg) translate3d(-100%, 0, 0);
  160. -ms-transform: translate3d(-100%, 0, 0) rotateY(90deg) translate3d(-100%, 0, 0);
  161. transform: translate3d(-100%, 0, 0) rotateY(90deg) translate3d(-100%, 0, 0);
  162. }
  163. .concave #main>section.future {
  164. -webkit-transform: translate3d(100%, 0, 0) rotateY(-90deg) translate3d(100%, 0, 0);
  165. -moz-transform: translate3d(100%, 0, 0) rotateY(-90deg) translate3d(100%, 0, 0);
  166. -ms-transform: translate3d(100%, 0, 0) rotateY(-90deg) translate3d(100%, 0, 0);
  167. transform: translate3d(100%, 0, 0) rotateY(-90deg) translate3d(100%, 0, 0);
  168. }
  169. .concave #main section>section.past {
  170. -webkit-transform: translate3d(0, -80%, 0) rotateX(-70deg) translate3d(0, -80%, 0);
  171. -moz-transform: translate3d(0, -80%, 0) rotateX(-70deg) translate3d(0, -80%, 0);
  172. -ms-transform: translate3d(0, -80%, 0) rotateX(-70deg) translate3d(0, -80%, 0);
  173. transform: translate3d(0, -80%, 0) rotateX(-70deg) translate3d(0, -80%, 0);
  174. }
  175. .concave #main section>section.future {
  176. -webkit-transform: translate3d(0, 80%, 0) rotateX(70deg) translate3d(0, 80%, 0);
  177. -moz-transform: translate3d(0, 80%, 0) rotateX(70deg) translate3d(0, 80%, 0);
  178. -ms-transform: translate3d(0, 80%, 0) rotateX(70deg) translate3d(0, 80%, 0);
  179. transform: translate3d(0, 80%, 0) rotateX(70deg) translate3d(0, 80%, 0);
  180. }
  181. /*********************************************
  182. * LINEAR THEME
  183. *********************************************/
  184. .linear #main>section.past {
  185. -webkit-transform: translate3d(-100%, 0, 0);
  186. -moz-transform: translate3d(-100%, 0, 0);
  187. -ms-transform: translate3d(-100%, 0, 0);
  188. transform: translate3d(-100%, 0, 0);
  189. }
  190. .linear #main>section.future {
  191. -webkit-transform: translate3d(100%, 0, 0);
  192. -moz-transform: translate3d(100%, 0, 0);
  193. -ms-transform: translate3d(100%, 0, 0);
  194. transform: translate3d(100%, 0, 0);
  195. }
  196. .linear #main section>section.past {
  197. -webkit-transform: translate3d(0, -100%, 0);
  198. -moz-transform: translate3d(0, -100%, 0);
  199. -ms-transform: translate3d(0, -100%, 0);
  200. transform: translate3d(0, -100%, 0);
  201. }
  202. .linear #main section>section.future {
  203. -webkit-transform: translate3d(0, 100%, 0);
  204. -moz-transform: translate3d(0, 100%, 0);
  205. -ms-transform: translate3d(0, 100%, 0);
  206. transform: translate3d(0, 100%, 0);
  207. }
  208. /*********************************************
  209. * VIEW FRAGMENTS
  210. *********************************************/
  211. #main section .fragment {
  212. opacity: 0;
  213. -webkit-transition: all .2s ease;
  214. -moz-transition: all .2s ease;
  215. -ms-transition: all .2s ease;
  216. -o-transition: all .2s ease;
  217. transition: all .2s ease;
  218. }
  219. #main section .fragment.visible {
  220. opacity: 1;
  221. }
  222. /*********************************************
  223. * DEFAULT ELEMENT STYLES
  224. *********************************************/
  225. #main>section {
  226. line-height: 1.2em;
  227. font-weight: normal;
  228. }
  229. strong, b {
  230. font-weight: bold;
  231. }
  232. em, i {
  233. font-style: italic;
  234. }
  235. ol, ul {
  236. display: inline-block;
  237. text-align: left;
  238. margin: 0 auto;
  239. }
  240. ol {
  241. list-style: decimal;
  242. list-style-position: inside;
  243. }
  244. ul {
  245. list-style: disc;
  246. }
  247. p {
  248. margin-bottom: 10px;
  249. }
  250. blockquote {
  251. display: block;
  252. position: relative;
  253. width: 70%;
  254. margin: 5px auto;
  255. padding: 5px;
  256. font-style: italic;
  257. background: rgba(255, 255, 255, 0.05);
  258. box-shadow: 0px 0px 2px rgba(0,0,0,0.2);
  259. }
  260. blockquote:before {
  261. content: '“';
  262. }
  263. blockquote:after {
  264. content: '”';
  265. }
  266. pre {
  267. display: block;
  268. position: relative;
  269. width: 90%;
  270. margin: 10px auto;
  271. text-align: left;
  272. font-size: 14px;
  273. font-family: monospace;
  274. line-height: 1.1em;
  275. word-wrap: break-word;
  276. box-shadow: 0px 0px 6px rgba(0,0,0,0.3);
  277. }
  278. code {
  279. font-family: monospace;
  280. }
  281. small {
  282. font-size: 60%;
  283. line-height: 1em;
  284. vertical-align: top;
  285. }
  286. q {
  287. font-style: italic;
  288. }
  289. q:before {
  290. content: '“';
  291. }
  292. q:after {
  293. content: '”';
  294. }
  295. a:not(.image) {
  296. color: hsl(185, 85%, 50%);
  297. text-decoration: none;
  298. -webkit-transition: all .2s ease;
  299. -moz-transition: all .2s ease;
  300. -ms-transition: all .2s ease;
  301. -o-transition: all .2s ease;
  302. transition: all .2s ease;
  303. }
  304. a:not(.image):hover {
  305. color: hsl(185, 85%, 70%);
  306. background: hsla(185, 25%, 20%, 0.4);
  307. text-shadow: none;
  308. border: none;
  309. border-radius: 2px;
  310. }
  311. section img {
  312. margin: 30px 0 0 0;
  313. background: rgba(255,255,255,0.12);
  314. border: 4px solid #eee;
  315. -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
  316. -moz-box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
  317. -o-box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
  318. box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
  319. -webkit-transition: all .2s linear;
  320. -moz-transition: all .2s linear;
  321. -ms-transition: all .2s linear;
  322. -o-transition: all .2s linear;
  323. transition: all .2s linear;
  324. }
  325. a.image:hover img {
  326. background: rgba(255,255,255,0.2);
  327. border-color: #13DAEC;
  328. -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.55);
  329. -moz-box-shadow: 0 0 20px rgba(0, 0, 0, 0.55);
  330. -o-box-shadow: 0 0 20px rgba(0, 0, 0, 0.55);
  331. box-shadow: 0 0 20px rgba(0, 0, 0, 0.55);
  332. }
  333. /*********************************************
  334. * CONTROLS
  335. *********************************************/
  336. .controls {
  337. display: none;
  338. position: fixed;
  339. width: 100px;
  340. height: 100px;
  341. right: 0;
  342. bottom: 0;
  343. }
  344. .controls a {
  345. font-size: 30px;
  346. position: absolute;
  347. opacity: 0.1;
  348. color: #fff;
  349. }
  350. .controls a.enabled {
  351. opacity: 0.6;
  352. color: hsl(185, 85%, 70%);
  353. text-shadow: 0px 0px 2px hsla(185, 45%, 70%, 0.3);
  354. }
  355. .controls a.enabled:active {
  356. margin-top: 1px;
  357. }
  358. .controls .left {
  359. top: 30px;
  360. }
  361. .controls .right {
  362. left: 60px;
  363. top: 30px;
  364. }
  365. .controls .up {
  366. left: 30px;
  367. }
  368. .controls .down {
  369. left: 30px;
  370. top: 60px;
  371. }
  372. /*********************************************
  373. * PROGRESS BAR
  374. *********************************************/
  375. .progress {
  376. position: absolute;
  377. display: none;
  378. height: 4px;
  379. width: 100%;
  380. bottom: 0;
  381. left: 0;
  382. background: rgba(0,0,0,0.2);
  383. }
  384. .progress span {
  385. display: block;
  386. background: hsl(185, 85%, 50%);
  387. height: 100%;
  388. width: 0px;
  389. -webkit-transition: width 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
  390. -moz-transition: width 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
  391. -ms-transition: width 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
  392. -o-transition: width 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
  393. transition: width 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985);
  394. }
  395. /*********************************************
  396. * ROLLING LINKS
  397. *********************************************/
  398. .roll {
  399. display: inline-block;
  400. overflow: hidden;
  401. vertical-align: top;
  402. -webkit-perspective: 400px;
  403. -moz-perspective: 400px;
  404. -ms-perspective: 400px;
  405. perspective: 400px;
  406. -webkit-perspective-origin: 50% 50%;
  407. -moz-perspective-origin: 50% 50%;
  408. -ms-perspective-origin: 50% 50%;
  409. perspective-origin: 50% 50%;
  410. }
  411. .roll:hover {
  412. background: none;
  413. text-shadow: none;
  414. }
  415. .roll span {
  416. display: block;
  417. position: relative;
  418. padding: 0 2px;
  419. pointer-events: none;
  420. -webkit-transition: all 400ms ease;
  421. -moz-transition: all 400ms ease;
  422. -ms-transition: all 400ms ease;
  423. transition: all 400ms ease;
  424. -webkit-transform-origin: 50% 0%;
  425. -moz-transform-origin: 50% 0%;
  426. -ms-transform-origin: 50% 0%;
  427. transform-origin: 50% 0%;
  428. -webkit-transform-style: preserve-3d;
  429. -moz-transform-style: preserve-3d;
  430. -ms-transform-style: preserve-3d;
  431. transform-style: preserve-3d;
  432. }
  433. .roll:hover span {
  434. background: rgba(0,0,0,0.5);
  435. -webkit-transform: translate3d( 0px, 0px, -45px ) rotateX( 90deg );
  436. -moz-transform: translate3d( 0px, 0px, -45px ) rotateX( 90deg );
  437. -ms-transform: translate3d( 0px, 0px, -45px ) rotateX( 90deg );
  438. transform: translate3d( 0px, 0px, -45px ) rotateX( 90deg );
  439. }
  440. .roll span:after {
  441. content: attr(data-title);
  442. display: block;
  443. position: absolute;
  444. left: 0;
  445. top: 0;
  446. padding: 0 2px;
  447. color: #fff;
  448. background: hsl(185, 60%, 35%);
  449. -webkit-transform-origin: 50% 0%;
  450. -moz-transform-origin: 50% 0%;
  451. -ms-transform-origin: 50% 0%;
  452. transform-origin: 50% 0%;
  453. -webkit-transform: translate3d( 0px, 105%, 0px ) rotateX( -90deg );
  454. -moz-transform: translate3d( 0px, 105%, 0px ) rotateX( -90deg );
  455. -ms-transform: translate3d( 0px, 105%, 0px ) rotateX( -90deg );
  456. transform: translate3d( 0px, 105%, 0px ) rotateX( -90deg );
  457. }