Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 

611 строки
11 KiB

  1. @import '../../_global/styles/mixins';
  2. @import '../../_global/styles/vars';
  3. .timeline-tabs {
  4. position: relative;
  5. display: block;
  6. background-color: var(--theme-color-primary-dimmed-04);
  7. padding: 24px 20px 0;
  8. margin-bottom: -5px;
  9. .tabs {
  10. margin: 0;
  11. text-align: center;
  12. }
  13. ul {
  14. list-style: none;
  15. display: flex;
  16. justify-content: center;
  17. margin: 0 -15px;
  18. padding: 0;
  19. position: relative;
  20. z-index: 1;
  21. }
  22. .btn-small {
  23. min-width: 180px;
  24. text-align: center;
  25. margin-right: 10px;
  26. &:not(.active) {
  27. background-color: white;
  28. color: var(--theme-primary);
  29. }
  30. &:focus{
  31. color: white;
  32. }
  33. @media(max-width: 567px) {
  34. min-width: 0;
  35. padding-left: 12px;
  36. padding-right: 12px;
  37. margin: 0 4px;
  38. }
  39. @media(max-width: 349px) {
  40. font-size: 16px;
  41. margin: 0 2px;
  42. }
  43. }
  44. ~ .timeline .item-slider {
  45. .prev,
  46. .next {
  47. @media(min-width: 1000px) {
  48. margin-top: -52px;
  49. }
  50. @media(min-width: 1340px) {
  51. margin-top: -74px;
  52. }
  53. }
  54. }
  55. }
  56. .timeline {
  57. margin: 0 0 calc(1.5vw + 40px);
  58. > p:last-child {
  59. font-size: 14px;
  60. text-align: right;
  61. margin: 15px;
  62. }
  63. .item-slider {
  64. position: relative;
  65. display: block;
  66. background-color: var(--theme-color-primary-dimmed-04);
  67. min-height: 460px;
  68. font-weight: 600;
  69. &::before {
  70. content: "";
  71. position: absolute;
  72. width: 374px;
  73. height: 374px;
  74. background-color: #9AD7A3;
  75. top: 50%;
  76. left: 50%;
  77. border-radius: 50%;
  78. transform: translate3d(-50%, -50%, 0) scale(1);
  79. opacity: 1;
  80. transition: 0.3s ease;
  81. }
  82. @media(max-width: 567px) {
  83. min-height: 380px;
  84. &::before {
  85. width: 280px;
  86. height: 280px;
  87. }
  88. }
  89. @media(max-width: 349px) {
  90. &::before {
  91. width: 260px;
  92. height: 260px;
  93. }
  94. }
  95. .slider-tabs, .tabs, .count {
  96. display: none;
  97. }
  98. .prev, .next {
  99. width: 80px;
  100. height: 80px;
  101. position: absolute;
  102. top: 50%;
  103. margin-top: -40px;
  104. right: 24px;
  105. padding: 0;
  106. font-size: 80px;
  107. line-height: 1;
  108. transition: 0.2s ease;
  109. border: 0;
  110. background-color: transparent;
  111. cursor: pointer;
  112. &::before {
  113. @include icon-small-arrow-right-simple;
  114. font-family: "Icons", sans-serif;
  115. color: var(--theme-color-primary);
  116. font-weight: 400;
  117. }
  118. &:hover {
  119. padding-left: 8px;
  120. @media(max-width: 999px) {
  121. padding-left: 0;
  122. }
  123. }
  124. @media(max-width: 1339px) {
  125. right: 0;
  126. width: 50px;
  127. height: 50px;
  128. font-size: 50px;
  129. margin-top: -25px;
  130. }
  131. @media(max-width: 567px) {
  132. font-size: 30px;
  133. width: 30px;
  134. height: 30px;
  135. margin-top: -15px;
  136. }
  137. }
  138. .prev {
  139. left: 24px;
  140. transform: scale(-1, 1);
  141. @media(max-width: 1339px) {
  142. left: 0;
  143. }
  144. }
  145. .slide {
  146. min-height: 460px;
  147. display: flex;
  148. align-items: center;
  149. text-align: center;
  150. &:not(.current) {
  151. max-height: 460px;
  152. }
  153. @media(max-width: 567px) {
  154. min-height: 380px;
  155. &:not(.current) {
  156. max-height: 380px;
  157. }
  158. }
  159. }
  160. .text-box {
  161. padding: 50px 0;
  162. @media(max-width: 767px) {
  163. padding: 30px 0;
  164. }
  165. }
  166. .slide:not(.has-image) .container {
  167. max-width: 1180px;
  168. }
  169. .container {
  170. @media(min-width: 1000px) and (max-width: 1339px) {
  171. padding: 0 60px;
  172. }
  173. @media(min-width: 768px) and (max-width: 999px) {
  174. padding: 0 120px;
  175. }
  176. }
  177. .year {
  178. font-family: "Korb", sans-serif;
  179. font-weight: 700;
  180. font-size: 100px;
  181. line-height: 0.9;
  182. margin-bottom: 0.25em;
  183. @media(max-width: 1340px) {
  184. font-size: 80px;
  185. }
  186. @media(max-width: 999px) {
  187. font-size: 72px;
  188. }
  189. @media(max-width: 567px) {
  190. font-size: 48px;
  191. }
  192. @media(max-width: 349px) {
  193. font-size: 40px;
  194. }
  195. }
  196. .subhead {
  197. font-weight: 700;
  198. }
  199. p:last-child {
  200. margin-bottom: 0;
  201. }
  202. @media(min-width: 1000px) {
  203. .slide.has-image .container {
  204. display: flex;
  205. align-items: center;
  206. justify-content: space-between;
  207. .image-box, .text-box {
  208. flex: 1 1 calc(50% - 20px);
  209. max-width: calc(50% - 20px);
  210. @media(max-width: 1339px) {
  211. flex: 1 1 calc(50% - 15px);
  212. max-width: calc(50% - 15px);
  213. }
  214. }
  215. .image-box {
  216. position: relative;
  217. margin: 30px 0;
  218. &.portrait {
  219. flex: 1 1 265px;
  220. margin-right: 40px;
  221. max-width: 265px;
  222. + .text-box {
  223. max-width: none;
  224. }
  225. @media(max-width: 1339px) {
  226. margin-right: 30px;
  227. }
  228. }
  229. &.medium {
  230. flex: 1 1 320px;
  231. margin-right: 40px;
  232. max-width: 320px;
  233. + .text-box {
  234. max-width: none;
  235. }
  236. @media(max-width: 1339px) {
  237. margin-right: 30px;
  238. }
  239. }
  240. img {
  241. display: block;
  242. max-width: 100%;
  243. }
  244. .caption {
  245. position: absolute;
  246. bottom: 0;
  247. left: 0;
  248. width: 100%;
  249. padding: 8px 12px;
  250. background-color: rgba(white, 0.6);
  251. text-align: left;
  252. backdrop-filter: blur(3px);
  253. font-weight: 700;
  254. font-size: 15px;
  255. line-height: 1.4;
  256. span + span {
  257. margin-top: 3px;
  258. }
  259. }
  260. .copyright {
  261. display: block;
  262. font-weight: 400;
  263. font-size: 10px;
  264. }
  265. }
  266. .text-box {
  267. text-align: left;
  268. }
  269. .year {
  270. margin-left: -0.06em;
  271. }
  272. }
  273. &.hide-circle::before {
  274. transform: translate3d(-50%, -50%, 0) scale(0.8);
  275. opacity: 0;
  276. }
  277. }
  278. @media(max-width: 999px) {
  279. .image-box {
  280. display: none;
  281. }
  282. }
  283. @media(max-width: 767px) {
  284. p {
  285. line-height: 1.4;
  286. font-size: 0.94em;
  287. }
  288. }
  289. @media(max-width: 567px) {
  290. p {
  291. padding-left: 10px;
  292. padding-right: 10px;
  293. }
  294. }
  295. }
  296. .years {
  297. position: relative;
  298. display: block;
  299. background-color: var(--theme-color-primary);
  300. color: white;
  301. overflow: hidden;
  302. &::before {
  303. content: "";
  304. position: absolute;
  305. left: 0;
  306. right: 0;
  307. top: 50%;
  308. margin-top: -4px;
  309. height: 8px;
  310. background-color: var(--theme-color-secondary);
  311. @media(max-width: 999px) {
  312. margin-top: 8px;
  313. height: 4px;
  314. }
  315. }
  316. }
  317. .years-wrapper {
  318. position: relative;
  319. display: flex;
  320. &.animate {
  321. transition: 0.3s ease;
  322. }
  323. &.dragging * {
  324. pointer-events: none;
  325. -webkit-user-select: none;
  326. -moz-user-select: none;
  327. -ms-user-select: none;
  328. user-select: none;
  329. }
  330. }
  331. @media(max-width: 999px) {
  332. .year-item {
  333. margin: 26px 32px 26px 0;
  334. .year {
  335. white-space: nowrap;
  336. br {
  337. display: none;
  338. }
  339. }
  340. ul {
  341. display: none;
  342. }
  343. .year {
  344. position: relative;
  345. font-family: "Korb", sans-serif;
  346. font-weight: 700;
  347. font-size: 36px;
  348. line-height: 1;
  349. cursor: pointer;
  350. z-index: 1;
  351. transition: 0.2s ease;
  352. margin-bottom: 0;
  353. &::before {
  354. content: "";
  355. @include full-size;
  356. background-color: var(--theme-color-primary);
  357. margin: 0 -8px;
  358. z-index: -1;
  359. transition: 0.2s ease;
  360. opacity: 0;
  361. }
  362. }
  363. &.current .year::before,
  364. &.anchor .year::before {
  365. opacity: 1;
  366. }
  367. &.current .year {
  368. color: var(--theme-color-secondary);
  369. }
  370. &.last {
  371. margin-right: 200px;
  372. }
  373. }
  374. }
  375. @media(min-width: 1000px) {
  376. .year-item {
  377. position: relative;
  378. font-size: 0.75em;
  379. line-height: 1.3em;
  380. display: flex;
  381. align-items: flex-start;
  382. min-height: 360px;
  383. flex: 1 1 320px;
  384. max-width: 320px;
  385. min-width: 320px;
  386. padding: 18px 20px 22px;
  387. &::before {
  388. content: "";
  389. position: absolute;
  390. left: 0;
  391. top: 26px;
  392. bottom: calc(50% - 4px);
  393. width: 4px;
  394. background-color: white;
  395. z-index: 2;
  396. }
  397. @media(max-width: 999px) {
  398. min-height: 0;
  399. flex: 1 1 150px;
  400. max-width: 150px;
  401. min-width: 60px;
  402. &::before {
  403. display: none;
  404. }
  405. }
  406. &:nth-child(odd) {
  407. align-items: flex-end;
  408. &::before {
  409. bottom: 26px;
  410. top: calc(50% - 4px);
  411. }
  412. }
  413. &.anchor {
  414. &::before {
  415. display: none;
  416. }
  417. .year::before {
  418. opacity: 1;
  419. }
  420. &:not(:first-child) {
  421. margin-right: 40px;
  422. }
  423. }
  424. &.last {
  425. margin-right: 400px;
  426. }
  427. &.anchor ~ .anchor ~ .anchor {
  428. margin-right: 70px;
  429. .year::before {
  430. margin-right: 0.6em;
  431. }
  432. }
  433. .year {
  434. position: absolute;
  435. bottom: 50%;
  436. margin: calc(-4px - 0.15em) -0.06em;
  437. font-family: "Korb", sans-serif;
  438. font-weight: 700;
  439. font-size: 60px;
  440. line-height: 1;
  441. cursor: pointer;
  442. z-index: 1;
  443. transition: 0.2s ease;
  444. &::before {
  445. content: "";
  446. @include full-size;
  447. background-color: var(--theme-color-primary);
  448. margin: 0 -16px;
  449. z-index: -1;
  450. transition: 0.2s ease;
  451. opacity: 0;
  452. }
  453. @media(max-width: 999px) {
  454. font-size: 40px;
  455. position: relative;
  456. }
  457. }
  458. &.current {
  459. &::before {
  460. background-color: var(--theme-color-secondary);
  461. }
  462. .year {
  463. color: var(--theme-color-secondary);
  464. &::before {
  465. opacity: 1;
  466. }
  467. }
  468. }
  469. ul {
  470. margin: 0 -70% 0 -0.28em;
  471. padding: 0;
  472. list-style: none;
  473. @media(max-width: 999px) {
  474. display: none;
  475. }
  476. }
  477. .title {
  478. margin: 0;
  479. font-family: 'Source Sans Pro', sans-serif;
  480. font-weight: 600;
  481. }
  482. li {
  483. position: relative;
  484. cursor: pointer;
  485. transition: 0.2s ease;
  486. z-index: 3;
  487. padding: 0.2em 0;
  488. top: 0.25em;
  489. &::before {
  490. content: '';
  491. position: absolute;
  492. left: 0;
  493. top: 0;
  494. bottom: 0;
  495. width: 15px;
  496. transition: 0.2s ease;
  497. }
  498. &:hover, &.active {
  499. color: var(--theme-color-secondary);
  500. }
  501. p {
  502. transform: translate3d(0, 0, 0);
  503. transition: 0.2s ease;
  504. }
  505. &:hover p {
  506. transform: translate3d(10px, 0, 0);
  507. }
  508. }
  509. .slide {
  510. display: none;
  511. }
  512. }
  513. }
  514. }