index.html 38 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899
  1. <!doctype html>
  2. <meta charset="utf-8">
  3. <title>Zammad Chat</title>
  4. <meta name="viewport" content="width=device-width">
  5. <style>
  6. /* Fonts
  7. -------------------------------------------------- */
  8. @font-face {
  9. font-family: 'Fira Sans';
  10. src: url("../fonts/FiraSans-Regular.eot");
  11. src: url("../fonts/FiraSans-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/FiraSans-Regular.woff") format("woff"), url("../fonts/FiraSans-Regular.ttf") format("truetype"), url("../fonts/FiraSans-Regular.svg#fira_sansregular") format("svg");
  12. font-weight: normal;
  13. font-style: normal; }
  14. @font-face {
  15. font-family: 'Fira Sans';
  16. src: url("../fonts/FiraSans-Medium.eot");
  17. src: url("../fonts/FiraSans-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/FiraSans-Medium.woff") format("woff"), url("../fonts/FiraSans-Medium.ttf") format("truetype"), url("../fonts/FiraSans-Medium.svg#fira_sansbold") format("svg");
  18. font-weight: 500;
  19. font-style: normal; }
  20. @font-face {
  21. font-family: 'Fira Sans';
  22. src: url("../fonts/FiraSans-Bold.eot");
  23. src: url("../fonts/FiraSans-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/FiraSans-Bold.woff") format("woff"), url("../fonts/FiraSans-Bold.ttf") format("truetype"), url("../fonts/FiraSans-Bold.svg#fira_sansbold") format("svg");
  24. font-weight: bold;
  25. font-style: normal; }
  26. body {
  27. margin: 0;
  28. font: 16px/1.6875 "Fira Sans", Helvetica, Arial, Verdana, sans-serif;
  29. color: #34393C; }
  30. h1, h2, h3 {
  31. color: #28292E;
  32. line-height: 1;
  33. margin: 0 0 1rem; }
  34. @media screen and (max-width: 768px) {
  35. h1, h2, h3 {
  36. margin-bottom: 0.6em; } }
  37. h1 {
  38. font-weight: 500;
  39. font-size: 48px;
  40. line-height: 1.12; }
  41. @media screen and (max-width: 992px) {
  42. h1 {
  43. font-size: 44px; } }
  44. @media screen and (max-width: 768px) {
  45. h1 {
  46. font-size: 38px; } }
  47. @media screen and (max-width: 420px) {
  48. h1 {
  49. font-size: 26px;
  50. line-height: 1.2; } }
  51. h2 {
  52. font-size: 29px;
  53. font-weight: normal;
  54. line-height: 1.4;
  55. margin-bottom: 8px; }
  56. @media screen and (max-width: 992px) {
  57. h2 {
  58. font-size: 27px; } }
  59. @media screen and (max-width: 768px) {
  60. h2 {
  61. font-size: 24px; } }
  62. @media screen and (max-width: 420px) {
  63. h2 {
  64. font-size: 22px; } }
  65. h3 {
  66. font-size: 22px;
  67. font-weight: normal; }
  68. p {
  69. margin: 0 0 16px; }
  70. a {
  71. text-decoration: none;
  72. color: #0f94d6; }
  73. code {
  74. display: none; }
  75. .ie-alert {
  76. background: #2a2e31;
  77. color: white;
  78. border-bottom: 1px solid #282b2e; }
  79. .ie-alert-headline {
  80. padding-top: 2rem;
  81. font-size: 2.5rem;
  82. max-width: 800px;
  83. margin: 0 auto; }
  84. .ie-alert-text {
  85. font-size: 1.5rem;
  86. max-width: 800px;
  87. margin: 0 auto;
  88. padding: 1em 0 4rem; }
  89. .banner {
  90. padding-bottom: 38px;
  91. position: relative;
  92. color: white;
  93. text-align: center; }
  94. @media screen and (max-width: 768px) {
  95. .banner > .language-switch {
  96. display: none; } }
  97. .banner h1 {
  98. color: inherit;
  99. margin: 73px auto 0; }
  100. .banner h1 p {
  101. margin: 0; }
  102. .background,
  103. .background .image,
  104. .background .overlay {
  105. position: absolute;
  106. left: 0;
  107. top: 0;
  108. width: 100%;
  109. height: 100%; }
  110. .background {
  111. z-index: -1; }
  112. .background .image {
  113. background-color: #444a4f;
  114. background-size: cover;
  115. background-position: center; }
  116. .background .overlay {
  117. background: rgba(0, 0, 0, 0.5); }
  118. .wrapper,
  119. .small-wrapper {
  120. max-width: 1074px;
  121. margin: 0 auto;
  122. padding: 0 16px; }
  123. .small-wrapper {
  124. max-width: 800px; }
  125. .main {
  126. padding-top: 32px;
  127. padding-bottom: 32px; }
  128. .main p:last-child {
  129. margin-bottom: 0; }
  130. main p,
  131. main h1,
  132. main h2,
  133. main h3,
  134. main ul {
  135. max-width: 800px;
  136. margin-left: auto;
  137. margin-right: auto; }
  138. .language-switch.wrapper {
  139. position: relative; }
  140. .header {
  141. padding-top: 34px;
  142. font-size: 15px;
  143. display: -webkit-box;
  144. display: -webkit-flex;
  145. display: -ms-flexbox;
  146. display: flex;
  147. -webkit-box-align: center;
  148. -webkit-align-items: center;
  149. -ms-flex-align: center;
  150. align-items: center; }
  151. @media screen and (max-width: 992px) {
  152. .header .start-trial-link {
  153. display: none; } }
  154. @media screen and (max-width: 768px) {
  155. .header {
  156. padding-top: 16px;
  157. -webkit-box-pack: justify;
  158. -webkit-justify-content: space-between;
  159. -ms-flex-pack: justify;
  160. justify-content: space-between; } }
  161. .main-menu {
  162. -webkit-box-flex: 1;
  163. -webkit-flex: 1;
  164. -ms-flex: 1;
  165. flex: 1;
  166. margin: 0 32px; }
  167. @media screen and (max-width: 992px) {
  168. .main-menu {
  169. margin: 0 16px; } }
  170. @media screen and (max-width: 768px) {
  171. .main-menu {
  172. display: none; } }
  173. .logo {
  174. margin-top: -9px; }
  175. @media screen and (max-width: 768px) {
  176. .logo {
  177. margin-top: 0; } }
  178. .logo img {
  179. vertical-align: bottom;
  180. border-style: none; }
  181. .navigation {
  182. padding: 7px 0 0 0;
  183. margin: 0;
  184. display: -webkit-box;
  185. display: -webkit-flex;
  186. display: -ms-flexbox;
  187. display: flex;
  188. -webkit-box-align: center;
  189. -webkit-align-items: center;
  190. -ms-flex-align: center;
  191. align-items: center;
  192. -webkit-justify-content: space-around;
  193. -ms-flex-pack: distribute;
  194. justify-content: space-around; }
  195. .navigation a {
  196. float: left;
  197. color: white;
  198. text-decoration: none;
  199. padding: 0 2px 5px;
  200. border-bottom: 2px solid transparent; }
  201. .navigation a.active {
  202. border-bottom-color: white; }
  203. .hamburger-menu-open,
  204. .hamburger-menu-close {
  205. position: absolute;
  206. cursor: pointer;
  207. display: none;
  208. -webkit-box-align: center;
  209. -webkit-align-items: center;
  210. -ms-flex-align: center;
  211. align-items: center;
  212. -webkit-box-pack: center;
  213. -webkit-justify-content: center;
  214. -ms-flex-pack: center;
  215. justify-content: center;
  216. outline: none;
  217. right: 0;
  218. top: 0;
  219. padding: 16px 16px 10px 10px; }
  220. @media screen and (max-width: 768px) {
  221. .hamburger-menu-open,
  222. .hamburger-menu-close {
  223. display: -webkit-box;
  224. display: -webkit-flex;
  225. display: -ms-flexbox;
  226. display: flex; } }
  227. .hamburger-menu-close {
  228. margin-left: 21px; }
  229. .hamburger-menu {
  230. position: fixed;
  231. right: 0;
  232. top: 0;
  233. bottom: 0;
  234. z-index: 7;
  235. -webkit-transform: translateX(0);
  236. -ms-transform: translateX(0);
  237. transform: translateX(0);
  238. -webkit-transition: 300ms;
  239. transition: 300ms;
  240. display: none;
  241. overflow: auto;
  242. -webkit-overflow-scrolling: touch;
  243. background: #2c2d35; }
  244. @media screen and (max-width: 768px) {
  245. .hamburger-menu {
  246. display: block; } }
  247. .hamburger-menu.is-hidden {
  248. -webkit-transform: translateX(100%);
  249. -ms-transform: translateX(100%);
  250. transform: translateX(100%); }
  251. .hamburger-menu .hamburger-menu-body {
  252. padding: 17px 36px; }
  253. .hamburger-menu .navigation {
  254. -webkit-box-orient: vertical;
  255. -webkit-box-direction: normal;
  256. -webkit-flex-direction: column;
  257. -ms-flex-direction: column;
  258. flex-direction: column;
  259. -webkit-box-align: start;
  260. -webkit-align-items: flex-start;
  261. -ms-flex-align: start;
  262. align-items: flex-start;
  263. padding: 0;
  264. margin-top: 5px; }
  265. .hamburger-menu .navigation a {
  266. line-height: 1;
  267. padding: 10px 0;
  268. margin-bottom: 5px;
  269. float: none; }
  270. .hamburger-menu-head {
  271. padding: 18px 66px 0 36px; }
  272. .hamburger-menu-clickCatcher {
  273. display: none;
  274. position: fixed;
  275. z-index: 6;
  276. top: 0;
  277. left: 0;
  278. width: 100%;
  279. height: 100%;
  280. background: black;
  281. will-change: opacity;
  282. opacity: 0.5;
  283. -webkit-transition: 300ms;
  284. transition: 300ms;
  285. cursor: pointer; }
  286. .hamburger-menu-clickCatcher.is-hidden {
  287. opacity: 0;
  288. pointer-events: none; }
  289. @media screen and (max-width: 768px) {
  290. .hamburger-menu-clickCatcher {
  291. display: block; } }
  292. .subtitle {
  293. font-size: 20px;
  294. line-height: 1.5;
  295. opacity: 0.95; }
  296. @media screen and (max-width: 768px) {
  297. .subtitle {
  298. font-size: 18px; } }
  299. .subtitle p {
  300. margin: 0.85em 0; }
  301. .btn {
  302. font-size: 14px;
  303. padding: 7px 18px;
  304. color: white;
  305. text-decoration: none;
  306. background: #389cd8;
  307. border: none;
  308. outline: none;
  309. box-shadow: none;
  310. -webkit-appearance: none;
  311. -moz-appearance: none;
  312. appearance: none;
  313. border-radius: 4px;
  314. display: inline-block;
  315. cursor: pointer; }
  316. @media screen and (max-width: 768px) {
  317. .btn {
  318. font-size: 100%; } }
  319. .btn[disabled] {
  320. pointer-events: none;
  321. cursor: not-allowed;
  322. box-shadow: none;
  323. opacity: .65; }
  324. .btn + .btn {
  325. margin-left: 5px; }
  326. .btn.btn--success {
  327. background: #36af6a; }
  328. .btn.btn--subtle {
  329. color: #389cd8;
  330. background: none; }
  331. .smile.icon {
  332. vertical-align: middle;
  333. margin-right: 1rem; }
  334. .loading.icon {
  335. display: inline-block;
  336. width: 36px;
  337. height: 36px;
  338. background: #38ad69;
  339. -webkit-animation: rotateplane 1.2s infinite ease-in-out;
  340. animation: rotateplane 1.2s infinite ease-in-out;
  341. will-change: transform; }
  342. @-webkit-keyframes rotateplane {
  343. 0% {
  344. -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg) translateZ(0);
  345. transform: perspective(120px) rotateX(0deg) rotateY(0deg) translateZ(0); }
  346. 50% {
  347. -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg) translateZ(0);
  348. transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg) translateZ(0); }
  349. 100% {
  350. -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg) translateZ(0);
  351. transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg) translateZ(0); } }
  352. @keyframes rotateplane {
  353. 0% {
  354. -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg) translateZ(0);
  355. transform: perspective(120px) rotateX(0deg) rotateY(0deg) translateZ(0); }
  356. 50% {
  357. -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg) translateZ(0);
  358. transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg) translateZ(0); }
  359. 100% {
  360. -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg) translateZ(0);
  361. transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg) translateZ(0); } }
  362. p .btn {
  363. margin-top: 1.8rem; }
  364. input[type=text],
  365. input[type=email],
  366. input[type=password],
  367. textarea {
  368. width: 340px;
  369. max-width: 100%;
  370. padding: 10px 13px;
  371. font-size: 0.8125rem;
  372. border: none;
  373. border-radius: 4px;
  374. height: 41px;
  375. box-sizing: border-box;
  376. box-shadow: none;
  377. outline: none;
  378. -webkit-appearance: none;
  379. -moz-appearance: none;
  380. appearance: none; }
  381. input[disabled],
  382. input[readonly],
  383. textarea[disabled],
  384. textarea[readonly] {
  385. cursor: not-allowed;
  386. background-color: #eee;
  387. opacity: 1; }
  388. textarea {
  389. height: auto; }
  390. input:focus {
  391. outline: none; }
  392. input + input {
  393. margin-left: 15px; }
  394. .one-line input + .btn {
  395. height: 39px;
  396. vertical-align: middle; }
  397. .horizontal {
  398. display: -webkit-box;
  399. display: -webkit-flex;
  400. display: -ms-flexbox;
  401. display: flex;
  402. -webkit-box-align: center;
  403. -webkit-align-items: center;
  404. -ms-flex-align: center;
  405. align-items: center; }
  406. .align-right {
  407. margin-left: auto; }
  408. /*
  409. Language
  410. */
  411. .languages {
  412. position: absolute;
  413. right: 32px;
  414. top: 0; }
  415. .languages a {
  416. float: left;
  417. font-size: 0.85em;
  418. color: rgba(255, 255, 255, 0.6);
  419. padding: 1px 4px 0;
  420. text-transform: uppercase;
  421. margin: 0 1px; }
  422. .languages a.active {
  423. color: white;
  424. background: rgba(128, 128, 128, 0.5); }
  425. .languages.languages--menu {
  426. position: static;
  427. overflow: hidden;
  428. display: -webkit-box;
  429. display: -webkit-flex;
  430. display: -ms-flexbox;
  431. display: flex; }
  432. .languages.languages--menu a {
  433. border: 1px solid white;
  434. margin: 0;
  435. -webkit-box-flex: 1;
  436. -webkit-flex: 1;
  437. -ms-flex: 1;
  438. flex: 1;
  439. color: white;
  440. font-size: 1em;
  441. padding-left: 16px;
  442. padding-right: 16px; }
  443. .languages.languages--menu a:first-child {
  444. border-radius: 5px 0 0 5px; }
  445. .languages.languages--menu a:last-child {
  446. border-radius: 0 5px 5px 0; }
  447. .languages.languages--menu a:not(:last-child) {
  448. border-right: none; }
  449. .languages.languages--menu a.active {
  450. color: #2c2d35;
  451. background: white; }
  452. /*
  453. Hero Animation
  454. */
  455. .home .banner {
  456. padding-bottom: 0;
  457. min-height: 90vh; }
  458. @media screen and (max-width: 768px) {
  459. .home .banner {
  460. height: 410px;
  461. min-height: 60vh; } }
  462. .home .banner .wrapper,
  463. .home .feature-body {
  464. position: relative;
  465. z-index: 2;
  466. -webkit-transition: 300ms;
  467. transition: 300ms;
  468. will-change: opacity, z-index; }
  469. .home .language-switch.wrapper {
  470. z-index: 3; }
  471. .home .banner .wrapper.fade-out,
  472. .home .feature-body.fade-out {
  473. opacity: 0;
  474. z-index: 1; }
  475. .home .background {
  476. display: none; }
  477. .video-backdrop {
  478. position: absolute;
  479. width: 100%;
  480. height: 93%;
  481. top: 0;
  482. left: 0;
  483. z-index: 1;
  484. will-change: height, transform, opacity;
  485. background-color: #319d62;
  486. background-image: -webkit-radial-gradient(#38ac69, #2e8f57);
  487. background-image: radial-gradient(#38ac69, #2e8f57);
  488. -webkit-transition: 300ms;
  489. transition: 300ms; }
  490. @media screen and (max-width: 768px) {
  491. .video-backdrop {
  492. height: 410px;
  493. min-height: 50vh; } }
  494. .video-backdrop.is-open {
  495. cursor: pointer;
  496. background-color: #232628;
  497. background-image: -webkit-radial-gradient(#363b3f, #232628);
  498. background-image: radial-gradient(#363b3f, #232628); }
  499. .video-player {
  500. display: none; }
  501. .video-holder.is-open .video-player {
  502. display: block; }
  503. .video-holder {
  504. left: 0;
  505. top: 480px;
  506. width: 100%;
  507. margin-top: -200px;
  508. position: absolute;
  509. z-index: 5;
  510. will-change: transform;
  511. cursor: pointer;
  512. -webkit-transition: 300ms;
  513. transition: 300ms; }
  514. .video-inner {
  515. width: 100%;
  516. max-width: 921px;
  517. margin: 0 auto;
  518. position: relative; }
  519. .video-laptop {
  520. width: 100%;
  521. max-width: 921px;
  522. height: auto;
  523. -webkit-filter: drop-shadow(0 12px 20px rgba(0, 0, 0, 0.3));
  524. filter: drop-shadow(0 12px 20px rgba(0, 0, 0, 0.3)); }
  525. .video-screen {
  526. position: absolute;
  527. top: 12%;
  528. left: 15.9%;
  529. width: 69.2%; }
  530. .video-screen iframe {
  531. width: 100%;
  532. height: 100%;
  533. position: absolute;
  534. top: 0;
  535. left: 0; }
  536. .video-preview {
  537. vertical-align: bottom;
  538. width: 100%;
  539. height: auto; }
  540. .video-play-button {
  541. position: absolute;
  542. left: 50%;
  543. top: 50%;
  544. width: 73px;
  545. height: 73px;
  546. margin: -23px 0 0 -36px;
  547. border-radius: 100%;
  548. background: #38ad69 url(../images/play_arrow.svg) no-repeat 27px center;
  549. box-shadow: 0 0 0 5px rgba(56, 173, 105, 0.5); }
  550. @media screen and (max-width: 992px) {
  551. .video-play-button {
  552. width: 36px;
  553. height: 36px;
  554. margin: -14px 0 0 -18px;
  555. background-size: 16px;
  556. background-position: 13px center;
  557. box-shadow: 0 0 0 3px rgba(56, 173, 105, 0.5); } }
  558. .video-holder.is-open .video-play-button {
  559. display: none; }
  560. .video-holder.is-open .video-preview {
  561. opacity: 0; }
  562. .video-close-button {
  563. position: fixed;
  564. right: 0;
  565. top: 0;
  566. color: rgba(255, 255, 255, 0.5);
  567. padding: 20px 20px 24px;
  568. font-family: sans-serif;
  569. font-size: 34px;
  570. width: 34px;
  571. text-align: center;
  572. line-height: 1;
  573. font-weight: 100;
  574. z-index: 2;
  575. cursor: pointer;
  576. -webkit-user-select: none;
  577. -moz-user-select: none;
  578. -ms-user-select: none;
  579. user-select: none;
  580. -webkit-transition: 0.5s ease-in-out;
  581. transition: 0.5s ease-in-out;
  582. will-change: transform;
  583. display: none; }
  584. .video-close-button:hover {
  585. -webkit-transform: rotate(0.5turn);
  586. -ms-transform: rotate(0.5turn);
  587. transform: rotate(0.5turn);
  588. -webkit-transform-origin: center;
  589. -ms-transform-origin: center;
  590. transform-origin: center; }
  591. .home .video-holder + .feature-container {
  592. padding-top: 0; }
  593. /*
  594. Feature
  595. */
  596. .feature-container {
  597. padding-top: 100px;
  598. padding-bottom: 85px;
  599. overflow: hidden; }
  600. @media screen and (max-width: 768px) {
  601. .feature-container {
  602. padding-top: 40px;
  603. padding-bottom: 30px; } }
  604. .feature-body {
  605. position: relative;
  606. overflow: hidden; }
  607. .feature-container.gray {
  608. background: #f0f0f0;
  609. box-shadow: 0 1px #d2d1d1 inset; }
  610. .feature-container .text {
  611. padding: 40px 0;
  612. margin: 0;
  613. width: 45%;
  614. float: right; }
  615. .feature-container .text p:last-child {
  616. margin-bottom: 0; }
  617. @media screen and (max-width: 768px) {
  618. .feature-container .text {
  619. width: 100%;
  620. padding: 20px 0 0; }
  621. .feature-container .text .btn + .btn {
  622. margin: 10px 0 0; } }
  623. .feature-container .media {
  624. position: absolute;
  625. min-width: 45%;
  626. text-align: center;
  627. top: 50%;
  628. -webkit-transform: translateY(-50%);
  629. -ms-transform: translateY(-50%);
  630. transform: translateY(-50%); }
  631. @media screen and (max-width: 768px) {
  632. .feature-container .media {
  633. position: static;
  634. -webkit-transform: none;
  635. -ms-transform: none;
  636. transform: none; } }
  637. .feature-container .media img {
  638. max-width: 100%;
  639. height: auto; }
  640. .feature-container .media figure.video {
  641. margin: 0;
  642. width: 100%;
  643. padding-bottom: 56.25%;
  644. position: relative; }
  645. .feature-container .media figure.video iframe {
  646. position: absolute;
  647. width: 100%;
  648. height: 100%;
  649. top: 0;
  650. left: 0; }
  651. .feature-container.left .text {
  652. float: left; }
  653. .feature-container.left .media {
  654. left: 55%; }
  655. .feature-container .category {
  656. text-transform: uppercase;
  657. font-size: 0.75rem;
  658. letter-spacing: 0.05rem;
  659. color: #444a4f;
  660. margin-bottom: 1rem; }
  661. .feature-container .category figure {
  662. display: inline;
  663. margin: 0 5px 0 0; }
  664. .feature-container .category img {
  665. vertical-align: middle; }
  666. /*
  667. Small Feature
  668. */
  669. .small-features-body {
  670. display: -webkit-box;
  671. display: -webkit-flex;
  672. display: -ms-flexbox;
  673. display: flex;
  674. -webkit-flex-wrap: wrap;
  675. -ms-flex-wrap: wrap;
  676. flex-wrap: wrap;
  677. width: 100%; }
  678. .small-feature {
  679. -webkit-box-flex: 1;
  680. -webkit-flex: 1 1 33%;
  681. -ms-flex: 1 1 33%;
  682. flex: 1 1 33%;
  683. text-align: center;
  684. padding-left: 1.5rem;
  685. padding-right: 1.5rem;
  686. box-sizing: border-box; }
  687. .small-feature:first-child {
  688. padding-left: 0; }
  689. .small-feature:last-child {
  690. padding-right: 0; }
  691. .small-feature h3 {
  692. margin-top: 1rem;
  693. margin-bottom: 0.7rem; }
  694. /*
  695. Features
  696. */
  697. .features h2 {
  698. margin-top: 58px;
  699. color: #565b61; }
  700. .feature-list {
  701. border: 1px solid #ecf1f4;
  702. border-bottom: none;
  703. border-right: none;
  704. display: -webkit-box;
  705. display: -webkit-flex;
  706. display: -ms-flexbox;
  707. display: flex;
  708. -webkit-flex-wrap: wrap;
  709. -ms-flex-wrap: wrap;
  710. flex-wrap: wrap;
  711. margin: 31px 0 91px;
  712. box-shadow: 0 1px #f4f9fa, 0 2px #f9f9fb; }
  713. @media screen and (max-width: 768px) {
  714. .feature-list {
  715. display: block;
  716. border: none;
  717. box-shadow: none;
  718. margin: 0 -16px; } }
  719. .feature-list-entry {
  720. border: 1px solid #ecf1f4;
  721. border-top: none;
  722. border-left: none;
  723. -webkit-box-flex: 1;
  724. -webkit-flex: 1 1 50%;
  725. -ms-flex: 1 1 50%;
  726. flex: 1 1 50%;
  727. display: -webkit-box;
  728. display: -webkit-flex;
  729. display: -ms-flexbox;
  730. display: flex;
  731. color: #595d60;
  732. box-sizing: border-box; }
  733. @media screen and (max-width: 768px) {
  734. .feature-list-entry {
  735. display: block;
  736. border-left: none;
  737. border-right: none;
  738. padding: 16px; }
  739. .feature-list-entry p:last-child {
  740. margin-bottom: 0; } }
  741. .feature-list-entry:nth-child(4n),
  742. .feature-list-entry:nth-child(4n-1) {
  743. background: #fcfcfc; }
  744. @media screen and (max-width: 768px) {
  745. .feature-list-entry:nth-child(4n),
  746. .feature-list-entry:nth-child(4n-1) {
  747. background: none; } }
  748. @media screen and (max-width: 768px) {
  749. .feature-list-entry:nth-child(even) {
  750. background: #fcfcfc; } }
  751. .feature-entry-icon,
  752. .feature-entry-body {
  753. padding: 24px 26px 6px; }
  754. @media screen and (max-width: 768px) {
  755. .feature-entry-icon,
  756. .feature-entry-body {
  757. padding: 0; } }
  758. .feature-entry-icon {
  759. border-right: 1px solid #ecf1f4;
  760. width: 128px;
  761. box-sizing: border-box; }
  762. @media screen and (max-width: 768px) {
  763. .feature-entry-icon {
  764. border: none;
  765. width: auto;
  766. display: inline-block;
  767. float: left;
  768. padding: 0;
  769. margin: 0 7px 0 0; } }
  770. .feature-entry-icon svg {
  771. width: 76px;
  772. height: 50px; }
  773. @media screen and (max-width: 768px) {
  774. .feature-entry-icon svg {
  775. width: 38px;
  776. height: 25px; } }
  777. .feature-entry-body {
  778. -webkit-box-flex: 1;
  779. -webkit-flex: 1;
  780. -ms-flex: 1;
  781. flex: 1;
  782. font-size: 15px;
  783. padding-top: 21px; }
  784. @media screen and (max-width: 768px) {
  785. .feature-entry-body {
  786. padding-top: 0; } }
  787. .feature-entry-body h3 {
  788. color: inherit;
  789. font-weight: normal;
  790. font-size: 19px;
  791. line-height: 1.4; }
  792. .feature-icon {
  793. max-width: 76px;
  794. display: inline-block;
  795. font-size: 14px;
  796. vertical-align: top; }
  797. @media screen and (max-width: 768px) {
  798. .feature-icon {
  799. font-size: 12px; } }
  800. .feature-icon p {
  801. margin: 0; }
  802. .feature-icon.module {
  803. background: #e3eef3;
  804. border-radius: 8px;
  805. padding: 0 12px;
  806. margin-top: 3px; }
  807. .feature-icon.mark {
  808. line-height: 1.45; }
  809. .feature-icon.mark em {
  810. font-style: normal;
  811. background: #e3eef3; }
  812. /*
  813. Tour
  814. */
  815. .tour .feature {
  816. color: #686867;
  817. box-shadow: 0 1px #dedddd; }
  818. .tour .feature h2 {
  819. font-size: 35px;
  820. line-height: 1.3;
  821. color: #444a4f; }
  822. /*
  823. Customers
  824. */
  825. .customers {
  826. padding: 48px 0;
  827. background: #f0f0f0;
  828. position: relative; }
  829. @media screen and (max-width: 768px) {
  830. .customers {
  831. padding: 24px 0; } }
  832. .customers-wrapper {
  833. margin: 0 -16px;
  834. overflow: hidden;
  835. display: -webkit-box;
  836. display: -webkit-flex;
  837. display: -ms-flexbox;
  838. display: flex;
  839. -webkit-box-align: center;
  840. -webkit-align-items: center;
  841. -ms-flex-align: center;
  842. align-items: center; }
  843. @media screen and (max-width: 768px) {
  844. .customers-wrapper {
  845. -webkit-flex-wrap: wrap;
  846. -ms-flex-wrap: wrap;
  847. flex-wrap: wrap;
  848. margin: 0; } }
  849. .customer-logoHolder {
  850. float: left;
  851. width: 25%;
  852. padding: 0 40px;
  853. text-align: center;
  854. box-sizing: border-box; }
  855. @media screen and (max-width: 768px) {
  856. .customer-logoHolder {
  857. width: 50%;
  858. padding: 20px; } }
  859. .customer-logoHolder img {
  860. max-width: 65%;
  861. max-height: 80px; }
  862. .customers:after {
  863. content: "";
  864. width: 48px;
  865. height: 48px;
  866. left: 50%;
  867. bottom: -24px;
  868. margin-left: -24px;
  869. -webkit-transform: rotate(45deg);
  870. -ms-transform: rotate(45deg);
  871. transform: rotate(45deg);
  872. background: inherit;
  873. position: absolute; }
  874. /*
  875. Darkbox
  876. */
  877. .darkbox {
  878. padding: 96px 32px 64px;
  879. background: #444349 url(../images/dust.png);
  880. text-align: center;
  881. color: white; }
  882. @media screen and (max-width: 768px) {
  883. .darkbox {
  884. padding: 70px 16px 32px; } }
  885. .darkbox h3 {
  886. font-size: 26px;
  887. color: inherit; }
  888. @media screen and (max-width: 768px) {
  889. .darkbox h3 {
  890. font-size: 18px; } }
  891. .darkbox h3 strong {
  892. font-weight: 500; }
  893. .darkbox form {
  894. margin-top: 48px;
  895. display: -webkit-box;
  896. display: -webkit-flex;
  897. display: -ms-flexbox;
  898. display: flex; }
  899. .darkbox form input {
  900. width: auto; }
  901. .darkbox form input:not(.btn) {
  902. -webkit-box-flex: 1;
  903. -webkit-flex: 1;
  904. -ms-flex: 1;
  905. flex: 1; }
  906. @media screen and (max-width: 768px) {
  907. .darkbox form {
  908. padding: 0 10px;
  909. max-width: 340px;
  910. margin: 48px auto 0;
  911. display: block; }
  912. .darkbox form input {
  913. width: 100%; }
  914. .darkbox form input + input {
  915. margin: 10px 0 0; } }
  916. .darkbox .btn {
  917. padding-left: 29px;
  918. padding-right: 29px; }
  919. @media screen and (max-width: 768px) {
  920. .darkbox .btn {
  921. display: block;
  922. text-align: center;
  923. width: 100%; } }
  924. .darkbox .smallprint p {
  925. font-size: .75rem;
  926. margin-top: 3rem;
  927. opacity: .5; }
  928. .darkbox .smallprint a {
  929. color: inherit;
  930. text-decoration: underline; }
  931. /*
  932. Pricing
  933. */
  934. .pricing .main {
  935. text-align: center; }
  936. .tables {
  937. overflow-y: auto;
  938. margin: 0 -16px;
  939. padding: 0 16px; }
  940. .table-page {
  941. display: none; }
  942. .table-page.active {
  943. display: block; }
  944. .table-page h2 {
  945. display: none; }
  946. .table-page .description {
  947. text-align: center;
  948. color: #686867;
  949. margin: 3em 2em 3.5rem; }
  950. .table-page table {
  951. margin: 3em 0; }
  952. table {
  953. width: 100%;
  954. border-collapse: collapse;
  955. background: #f5f6f6; }
  956. td, th {
  957. border-right: 15px solid white; }
  958. thead tr:first-child th:first-child,
  959. td:first-child {
  960. border-right-width: 20px; }
  961. th:last-child,
  962. td:last-child {
  963. border-right: none; }
  964. th {
  965. padding: 4px 8px;
  966. font-weight: normal; }
  967. tr.head th,
  968. td {
  969. padding: 10px 8px; }
  970. td {
  971. font-size: 0.875rem;
  972. border-bottom: 1px solid white; }
  973. thead {
  974. background: #575c61; }
  975. th.contact {
  976. background: white;
  977. width: 28%; }
  978. th.plan {
  979. width: 24%; }
  980. thead span.name,
  981. thead .price,
  982. thead .type,
  983. thead .billing {
  984. color: white; }
  985. thead .price,
  986. thead .type,
  987. thead .billing,
  988. thead .contact {
  989. font-size: 0.875rem; }
  990. th .currency {
  991. vertical-align: super;
  992. font-size: 12px;
  993. top: -8px;
  994. left: -3px;
  995. position: relative;
  996. font-weight: normal; }
  997. th.price {
  998. padding-top: 30px;
  999. padding-bottom: 20px;
  1000. white-space: nowrap; }
  1001. th .price {
  1002. font-size: 4rem;
  1003. line-height: 60px;
  1004. font-weight: 500; }
  1005. .hosted th .price {
  1006. font-size: 5rem; }
  1007. th.billing {
  1008. padding-bottom: 30px; }
  1009. tr.head {
  1010. background: #2c2d36; }
  1011. tr.head th:nth-child(3) {
  1012. background: #38ae6a; }
  1013. thead tr:not(.head) th:nth-child(2) {
  1014. background: #4cb679; }
  1015. tbody tr.head td:nth-child(3) {
  1016. background: #38ae6a; }
  1017. tbody tr td:nth-child(3) {
  1018. background: #e1f3e9; }
  1019. tbody tr.head td {
  1020. font-size: initial;
  1021. background: #444a4f;
  1022. color: rgba(255, 255, 255, 0.5); }
  1023. tbody tr.head td:first-child {
  1024. color: white;
  1025. padding-left: 20px; }
  1026. span.name {
  1027. text-transform: uppercase;
  1028. font-size: 0.75rem;
  1029. letter-spacing: 1px; }
  1030. td:first-child {
  1031. text-align: left;
  1032. padding-left: 40px; }
  1033. .check {
  1034. background: url(../images/check.svg);
  1035. width: 17px;
  1036. height: 16px;
  1037. display: inline-block;
  1038. color: transparent; }
  1039. .tabs {
  1040. margin: 16px 0;
  1041. display: -webkit-box;
  1042. display: -webkit-flex;
  1043. display: -ms-flexbox;
  1044. display: flex; }
  1045. @media screen and (max-width: 768px) {
  1046. .tabs {
  1047. margin: 0 0 16px; } }
  1048. .tab {
  1049. padding: 8px 32px;
  1050. text-align: center;
  1051. color: #0f94d6;
  1052. font-size: 24px;
  1053. background: #f5f6f6;
  1054. -webkit-box-flex: 1;
  1055. -webkit-flex: 1;
  1056. -ms-flex: 1;
  1057. flex: 1;
  1058. position: relative;
  1059. cursor: pointer; }
  1060. @media screen and (max-width: 768px) {
  1061. .tab {
  1062. display: -webkit-box;
  1063. display: -webkit-flex;
  1064. display: -ms-flexbox;
  1065. display: flex;
  1066. -webkit-box-align: center;
  1067. -webkit-align-items: center;
  1068. -ms-flex-align: center;
  1069. align-items: center;
  1070. -webkit-box-pack: center;
  1071. -webkit-justify-content: center;
  1072. -ms-flex-pack: center;
  1073. justify-content: center;
  1074. font-size: 16px;
  1075. padding: 8px;
  1076. line-height: 1.2; } }
  1077. .tab.active {
  1078. color: white;
  1079. background: #565c60; }
  1080. .tab.active:after {
  1081. content: "";
  1082. position: absolute;
  1083. bottom: -5px;
  1084. left: 50%;
  1085. margin-left: -5px;
  1086. width: 10px;
  1087. height: 10px;
  1088. background: white;
  1089. -webkit-transform: rotate(45deg);
  1090. -ms-transform: rotate(45deg);
  1091. transform: rotate(45deg); }
  1092. .tab:first-child {
  1093. border-radius: 4px 0 0 4px; }
  1094. .tab:last-child {
  1095. border-radius: 0 4px 4px 0; }
  1096. /*
  1097. Getting Started
  1098. */
  1099. .getting-started .banner {
  1100. min-height: 100vh;
  1101. box-sizing: border-box; }
  1102. .getting-started .modal-body {
  1103. margin-top: 64px; }
  1104. @media screen and (max-width: 768px) {
  1105. .getting-started .modal-body {
  1106. margin-top: 16px; } }
  1107. .form-control {
  1108. margin-bottom: 16px; }
  1109. .form-hint {
  1110. font-size: 0.85rem;
  1111. color: #bdbbbc;
  1112. margin-bottom: 2rem; }
  1113. .form-hint a {
  1114. color: inherit;
  1115. text-decoration: underline; }
  1116. .has-error input[type=text].form-control,
  1117. .has-error input[type=email].form-control,
  1118. .has-error input[type=password].form-control,
  1119. .has-error textarea.form-control,
  1120. .has-error .form-control {
  1121. border-color: #a94442; }
  1122. .modal-body label {
  1123. color: #949494;
  1124. text-transform: uppercase;
  1125. font-size: 0.75rem;
  1126. letter-spacing: 0.05rem;
  1127. margin-bottom: .5rem;
  1128. display: block; }
  1129. .modal-body input[type=text],
  1130. .modal-body input[type=email],
  1131. .modal-body input[type=password],
  1132. .modal-body textarea {
  1133. width: 100%;
  1134. border: 1px solid #e0e0e0; }
  1135. .modal-body .alias-input {
  1136. overflow: hidden;
  1137. display: -webkit-box;
  1138. display: -webkit-flex;
  1139. display: -ms-flexbox;
  1140. display: flex; }
  1141. .modal-body .alias-input input {
  1142. float: left;
  1143. width: auto;
  1144. border-radius: 4px 0 0 4px;
  1145. -webkit-box-flex: 1;
  1146. -webkit-flex: 1;
  1147. -ms-flex: 1;
  1148. flex: 1; }
  1149. @media screen and (max-width: 768px) {
  1150. .modal-body .alias-input input {
  1151. width: 100%; } }
  1152. .modal-body .alias-label {
  1153. color: #a5a6a6;
  1154. background: #ebeced;
  1155. border: 1px solid #e0e0e0;
  1156. border-left: none;
  1157. height: 41px;
  1158. line-height: 40px;
  1159. padding: 0 15px;
  1160. float: left;
  1161. font-size: 15px;
  1162. box-sizing: border-box;
  1163. border-radius: 0 4px 4px 0; }
  1164. .modal-body .alias-label span {
  1165. line-height: 0.95;
  1166. padding: 0 1px;
  1167. display: inline-block;
  1168. border-bottom: 1px solid #c8c9c9; }
  1169. .modal-body input.btn,
  1170. .modal-body button.btn {
  1171. line-height: 1.6875; }
  1172. /*
  1173. News
  1174. */
  1175. .news .main,
  1176. .news-entry.main {
  1177. padding-top: 0; }
  1178. /* Subnav */
  1179. .subnav {
  1180. text-align: center;
  1181. padding: 16px 0;
  1182. border-bottom: 1px solid #dedddd; }
  1183. .subnav span {
  1184. margin-right: 12px; }
  1185. .subnav a {
  1186. letter-spacing: 0;
  1187. padding: 4px 1px;
  1188. margin: 0 12px;
  1189. border: none; }
  1190. @media screen and (max-width: 768px) {
  1191. .subnav a {
  1192. margin: 0 6px; } }
  1193. .subnav a.active {
  1194. border-bottom: 2px solid; }
  1195. .subnav .all-categories {
  1196. color: #38ae6a; }
  1197. /* Article */
  1198. .article {
  1199. margin: 48px 0; }
  1200. @media screen and (max-width: 768px) {
  1201. .article {
  1202. margin: 20px 0; } }
  1203. .article + .article {
  1204. padding-top: 48px;
  1205. border-top: 1px solid #dedddd; }
  1206. @media screen and (max-width: 768px) {
  1207. .article + .article {
  1208. padding-top: 20px; } }
  1209. .article h2 {
  1210. font-size: 35px;
  1211. margin-bottom: 20px; }
  1212. @media screen and (max-width: 768px) {
  1213. .article h2 {
  1214. font-size: 26px;
  1215. margin-bottom: 10px; } }
  1216. .article h2 a {
  1217. color: inherit; }
  1218. .article h3 {
  1219. margin-bottom: 8px; }
  1220. .article ol,
  1221. .article ul,
  1222. .article p,
  1223. main p {
  1224. margin-bottom: 16px; }
  1225. .article pre[class*="language-"] {
  1226. margin: 0 0 24px; }
  1227. .post-author {
  1228. margin-top: 20px; }
  1229. .post-author .avatar {
  1230. margin-right: 10px;
  1231. vertical-align: middle; }
  1232. .author-name {
  1233. font-weight: bold; }
  1234. .post-meta {
  1235. font-size: 0.875rem;
  1236. color: #919497; }
  1237. .pagination {
  1238. padding: 2em 0;
  1239. border-top: 1px solid #f2f2f3; }
  1240. .pagination a {
  1241. margin: 0; }
  1242. .pagination a.left {
  1243. float: left; }
  1244. .pagination a.right {
  1245. float: right; }
  1246. .label,
  1247. .post-author,
  1248. .subnav a {
  1249. font-size: 13px;
  1250. text-transform: uppercase;
  1251. letter-spacing: 1px; }
  1252. /*
  1253. Figure
  1254. */
  1255. figure {
  1256. display: inline-block; }
  1257. @media screen and (max-width: 768px) {
  1258. figure {
  1259. display: block; } }
  1260. figure.left,
  1261. figure.right {
  1262. width: 234px; }
  1263. @media screen and (max-width: 768px) {
  1264. figure.left,
  1265. figure.right {
  1266. width: 100%;
  1267. margin: 0 0 10px !important; } }
  1268. figure.left {
  1269. float: left;
  1270. margin: .33em 1.5em .33em 0; }
  1271. figure.right {
  1272. float: right;
  1273. margin: .33em 0 .33em 1.5rem; }
  1274. figure.full {
  1275. display: block; }
  1276. figure.full img {
  1277. width: 100%; }
  1278. figure img {
  1279. vertical-align: bottom;
  1280. max-width: 100%; }
  1281. figcaption {
  1282. font-size: 0.875rem;
  1283. margin: 9px 0 0;
  1284. color: #a3a6a8; }
  1285. /*
  1286. Contact
  1287. */
  1288. .contact .main.has-aside {
  1289. -webkit-box-align: center;
  1290. -webkit-align-items: center;
  1291. -ms-flex-align: center;
  1292. align-items: center; }
  1293. .main.has-aside {
  1294. display: -webkit-box;
  1295. display: -webkit-flex;
  1296. display: -ms-flexbox;
  1297. display: flex;
  1298. max-width: 882px;
  1299. margin: 0 auto;
  1300. padding: 64px 0 48px;
  1301. box-sizing: border-box;
  1302. overflow: hidden;
  1303. display: flex;
  1304. -webkit-box-pack: center;
  1305. -webkit-justify-content: center;
  1306. -ms-flex-pack: center;
  1307. justify-content: center; }
  1308. @media screen and (max-width: 768px) {
  1309. .main.has-aside {
  1310. padding: 32px 16px 16px;
  1311. display: block; } }
  1312. .main.has-aside + main {
  1313. padding-bottom: 48px; }
  1314. @media screen and (max-width: 768px) {
  1315. .main.has-aside + main {
  1316. padding-bottom: 20px; } }
  1317. .center {
  1318. float: left;
  1319. -webkit-box-flex: 1;
  1320. -webkit-flex: 1;
  1321. -ms-flex: 1;
  1322. flex: 1;
  1323. margin-bottom: 16px; }
  1324. @media screen and (max-width: 768px) {
  1325. .center {
  1326. float: none; } }
  1327. .map,
  1328. .map iframe {
  1329. background: #e9e5dc; }
  1330. .map iframe {
  1331. width: 100%; }
  1332. .aside {
  1333. float: left;
  1334. margin-left: 96px;
  1335. -webkit-box-flex: 0.33;
  1336. -webkit-flex: 0.33;
  1337. -ms-flex: 0.33;
  1338. flex: 0.33; }
  1339. @media screen and (max-width: 768px) {
  1340. .aside {
  1341. margin: 32px 0; } }
  1342. .sidebar {
  1343. width: 250px;
  1344. margin-left: 96px; }
  1345. .sidebar .member {
  1346. margin-top: 3px; }
  1347. .sidebar .member-text {
  1348. padding: 2em; }
  1349. .sidebar .member-text p:last-child {
  1350. margin-bottom: 0; }
  1351. /*
  1352. Downloads
  1353. _________
  1354. */
  1355. .file {
  1356. display: block;
  1357. font-size: 0.88em;
  1358. padding: 10px;
  1359. margin: 0 -10px;
  1360. text-decoration: none;
  1361. color: inherit; }
  1362. .file:hover {
  1363. background: #f9fafa; }
  1364. .file-icon {
  1365. width: 55px;
  1366. display: table-cell;
  1367. vertical-align: middle; }
  1368. .file-icon img {
  1369. width: 100%; }
  1370. .file-text {
  1371. padding-left: 25px;
  1372. vertical-align: middle;
  1373. display: table-cell; }
  1374. .file-hint {
  1375. color: #b3afaf;
  1376. display: block; }
  1377. /*
  1378. Modal
  1379. */
  1380. .modal {
  1381. position: fixed;
  1382. left: 0;
  1383. top: 0;
  1384. width: 100%;
  1385. height: 100%;
  1386. text-align: center; }
  1387. .modal.is-hidden {
  1388. display: none; }
  1389. .modal:before {
  1390. content: "";
  1391. display: inline-block;
  1392. height: 100%;
  1393. vertical-align: middle;
  1394. margin-right: -0.25rem; }
  1395. .modal-body {
  1396. text-align: left;
  1397. background: white;
  1398. border-radius: 5px;
  1399. padding: 24px 24px 22px;
  1400. width: 26rem;
  1401. margin: 0 auto;
  1402. box-sizing: border-box;
  1403. position: relative;
  1404. display: inline-block;
  1405. vertical-align: middle;
  1406. box-shadow: 0 0 50px rgba(0, 0, 0, 0.3);
  1407. color: #949494; }
  1408. @media screen and (max-width: 768px) {
  1409. .modal-body {
  1410. margin: 0 8px;
  1411. padding: 16px 16px 14px;
  1412. width: auto; } }
  1413. .modal-body.is-hidden {
  1414. display: none; }
  1415. .modal-backdrop {
  1416. position: absolute;
  1417. left: 0;
  1418. top: 0;
  1419. width: 100%;
  1420. height: 100%;
  1421. background: url(../images/dust.png);
  1422. opacity: 0.7; }
  1423. /* form signup form */
  1424. .modal-body .alert {
  1425. display: -webkit-box;
  1426. display: -webkit-flex;
  1427. display: -ms-flexbox;
  1428. display: flex;
  1429. -webkit-box-pack: center;
  1430. -webkit-justify-content: center;
  1431. -ms-flex-pack: center;
  1432. justify-content: center;
  1433. -webkit-box-align: center;
  1434. -webkit-align-items: center;
  1435. -ms-flex-align: center;
  1436. align-items: center; }
  1437. #signup .alert--success {
  1438. border-color: #8bdaac;
  1439. background: #a6e2bf; }
  1440. #signup .alert--warning {
  1441. border-color: #f9d371;
  1442. background: #fcdf9c; }
  1443. #signup .alert--danger {
  1444. color: #e46d58; }
  1445. #signup .form-invalid {
  1446. border-color: red !important; }
  1447. .error {
  1448. height: 100%;
  1449. background: #444a4f; }
  1450. .error .main {
  1451. display: -webkit-box;
  1452. display: -webkit-flex;
  1453. display: -ms-flexbox;
  1454. display: flex;
  1455. -webkit-box-orient: vertical;
  1456. -webkit-box-direction: normal;
  1457. -webkit-flex-direction: column;
  1458. -ms-flex-direction: column;
  1459. flex-direction: column;
  1460. -webkit-box-pack: center;
  1461. -webkit-justify-content: center;
  1462. -ms-flex-pack: center;
  1463. justify-content: center;
  1464. -webkit-box-align: center;
  1465. -webkit-align-items: center;
  1466. -ms-flex-align: center;
  1467. align-items: center;
  1468. min-height: 600px;
  1469. box-sizing: border-box;
  1470. overflow-x: hidden;
  1471. text-align: center; }
  1472. .error-image {
  1473. height: 325px;
  1474. width: 100%;
  1475. margin: 30px 0;
  1476. background-image: url(../images/error-2.svg);
  1477. background-size: contain;
  1478. background-position: center;
  1479. background-repeat: no-repeat; }
  1480. .error p {
  1481. max-width: 400px;
  1482. margin: 0 0 20px;
  1483. color: #919497; }
  1484. .error h1 {
  1485. color: white;
  1486. margin: 0;
  1487. max-width: 450px; }
  1488. .loader {
  1489. display: -webkit-inline-box;
  1490. display: -webkit-inline-flex;
  1491. display: -ms-inline-flexbox;
  1492. display: inline-flex;
  1493. -webkit-box-align: center;
  1494. -webkit-align-items: center;
  1495. -ms-flex-align: center;
  1496. align-items: center;
  1497. width: auto;
  1498. max-width: 26rem; }
  1499. .loader .icon {
  1500. -webkit-flex-shrink: 0;
  1501. -ms-flex-negative: 0;
  1502. flex-shrink: 0; }
  1503. .loader .text {
  1504. margin-right: 0.5rem;
  1505. margin-left: 1.5rem;
  1506. color: #585856; }
  1507. .loader .text em {
  1508. font-style: normal;
  1509. text-decoration: underline; }
  1510. </style>
  1511. <img class="mockup" width="100%" src="website.png">
  1512. <div class="settings">
  1513. <table>
  1514. <tr>
  1515. <td>
  1516. <td><h2>Settings</h2>
  1517. <tr>
  1518. <td>
  1519. <input id="flat" type="checkbox" data-option="flat">
  1520. <td>
  1521. <label for="flat">Flat Design</label>
  1522. <tr>
  1523. <td>
  1524. <input type="color" id="color" value="#AE99D6" data-option="color">
  1525. <td>
  1526. <label for="color">Color</label>
  1527. <tr>
  1528. <td>
  1529. <input type="range" id="borderRadius" value="5" min="0" max="20" data-option="borderRadius">
  1530. <input type="number" value="5" min="5" max="20" data-option="borderRadius">px
  1531. <td>
  1532. <label for="borderRadius">Border Radius</label>
  1533. <tr>
  1534. <td>
  1535. <input type="range" id="fontSize" value="12" min="11" max="18" data-option="fontSize">
  1536. <input type="number" value="12" min="11" max="18" data-option="fontSize">px
  1537. <td>
  1538. <label for="fontSize">Font Size</label>
  1539. <tr>
  1540. <td>
  1541. <td><button class="open-zammad-chat">Open Chat</button>
  1542. <tr>
  1543. <td class="log"><h2>Log</h2>
  1544. <td>
  1545. <tr>
  1546. <td colspan="2" class="log js-chatLogDisplay">
  1547. </table>
  1548. </div>
  1549. <script src="jquery-2.1.4.min.js"></script>
  1550. <!--
  1551. <script src="node_modules/sass.js/dist/sass.js"></script>
  1552. -->
  1553. <script src="chat.js"></script>
  1554. <!--
  1555. <script>
  1556. var sass = new Sass();
  1557. var scss = '';
  1558. var $scss = $('<style id="scss"></style>').appendTo('body');
  1559. $.get('style.scss', function(result){ scss = result });
  1560. function setScssVariable(name, value){
  1561. if(!scss){
  1562. return 'scss file not yet loaded';
  1563. }
  1564. scss = scss.replace(new RegExp('(\\$'+ name +':\ ).*(;)'), '$1'+ value +'$2');
  1565. }
  1566. function updateStyle(){
  1567. if(!scss){
  1568. return 'scss file not yet loaded';
  1569. }
  1570. sass.compile(scss, function(result) {
  1571. if(result.status != 0){
  1572. // error
  1573. console.error(result.formatted);
  1574. } else {
  1575. $scss.text(result.text);
  1576. }
  1577. });
  1578. }
  1579. -->
  1580. <script>
  1581. var chat = new ZammadChat({
  1582. chatId: 1,
  1583. host: 'ws://localhost:6042',
  1584. cssUrl: 'http://localhost:5000/assets/chat/chat.css',
  1585. debug: true
  1586. });
  1587. $('.settings :input').on({
  1588. change: function(){
  1589. switch($(this).attr('data-option')){
  1590. case "flat":
  1591. $('.zammad-chat').toggleClass('zammad-chat--flat', this.checked);
  1592. break;
  1593. case "color":
  1594. setScssVariable('themeColor', this.value);
  1595. updateStyle();
  1596. break;
  1597. case "borderRadius":
  1598. setScssVariable('borderRadius', this.value + "px");
  1599. updateStyle();
  1600. break;
  1601. }
  1602. },
  1603. input: function(){
  1604. switch($(this).attr('data-option')){
  1605. case "borderRadius":
  1606. $('[data-option="borderRadius"]').val(this.value);
  1607. setScssVariable('borderRadius', this.value + "px");
  1608. updateStyle();
  1609. break;
  1610. case "fontSize":
  1611. $('[data-option="fontSize"]').val(this.value);
  1612. setScssVariable('fontSize', this.value + "px");
  1613. updateStyle();
  1614. break;
  1615. }
  1616. }
  1617. });
  1618. </script>