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

481 строка
9.9 KiB

  1. @import '../../_global/styles/mixins';
  2. @import '../../_global/styles/vars';
  3. .page-header.dummy nav {
  4. z-index: 0;
  5. visibility: visible;
  6. transform: translate3d(-100%, 0, 0);
  7. --header-height: 0px;
  8. }
  9. .page-header nav {
  10. position: fixed;
  11. display: flex;
  12. flex-direction: column;
  13. top: var(--header-height);
  14. left: 100%;
  15. width: 420px;
  16. max-width: 100%;
  17. transform: translate3d(1px, 0, 0);
  18. height: calc(var(--viewport-height, 1vh) * 100 - var(--header-height));
  19. background-color: white;
  20. transition: transform 0.25s $easeOutQuad, visibility 0s linear 0.25s;
  21. box-shadow: -1px 0 0 var(--theme-grey-light);
  22. z-index: -1;
  23. visibility: hidden;
  24. @media(min-width: 1199px) {
  25. --header-height: 100px;
  26. }
  27. .overlay-holder {
  28. content: "";
  29. position: absolute;
  30. right: 100%;
  31. width: 100vw;
  32. top: -100px;
  33. bottom: 0;
  34. z-index: -1;
  35. background-color: var(--theme-color-primary-dimmed-04);
  36. border-right: 1px solid rgba(var(--theme-color-primary-rgb), 0.4);
  37. @include hide;
  38. }
  39. .primary {
  40. position: relative;
  41. flex-grow: 1;
  42. img {
  43. max-height: 44px;
  44. margin-top: -3px;
  45. margin-bottom: -3px;
  46. }
  47. ul {
  48. position: absolute;
  49. top: 0;
  50. left: 0;
  51. width: 100%;
  52. height: 100%;
  53. padding: 0;
  54. margin: 0;
  55. list-style: none;
  56. text-align: left;
  57. overflow-y: hidden;
  58. overflow-x: hidden;
  59. background-color: white;
  60. z-index: 0;
  61. transition: transform 0.3s $easeOutCubic, z-index 0s linear 0.3s;
  62. box-shadow: 0 50vh 0 0 white;
  63. pointer-events: none;
  64. &:before {
  65. content: "";
  66. @include full-size;
  67. background-color: var(--theme-color-white);
  68. z-index: 2;
  69. @include hide;
  70. background-image: url("../../assets/img/preload.svg");
  71. background-size: 100px;
  72. background-position: center 50px;
  73. background-repeat: no-repeat;
  74. }
  75. &:after {
  76. content: "";
  77. @include full-size;
  78. background-color: var(--theme-color-primary);
  79. opacity: 0.1;
  80. transition: 0.3s $easeInOutSine;
  81. }
  82. &.loading:before {
  83. @include show;
  84. }
  85. &.current {
  86. transform: translate3d(0, 0, 0);
  87. transition: transform 0.3s $easeOutCubic, z-index 0s linear 0s;
  88. overflow-y: auto;
  89. pointer-events: all;
  90. &:after {
  91. opacity: 0;
  92. pointer-events: none;
  93. }
  94. ul {
  95. transform: translate3d(100%, 0, 0);
  96. &:after {
  97. opacity: 0;
  98. }
  99. }
  100. }
  101. }
  102. li {
  103. &.open > ul {
  104. transform: translate3d(0, 0, 0);
  105. z-index: 1;
  106. }
  107. &.back {
  108. position: sticky;
  109. text-align: left;
  110. top: 0;
  111. left: 0;
  112. width: 100%;
  113. z-index: 1;
  114. a {
  115. background-color: var(--theme-color-primary-dimmed-04);
  116. padding-left: 60px;
  117. padding-right: 20px;
  118. overflow: hidden;
  119. text-overflow: ellipsis;
  120. justify-content: flex-start;
  121. @include focus-visible(true);
  122. &:before {
  123. left: 18px;
  124. transform: rotate(180deg);
  125. }
  126. @media(max-width: 359px) {
  127. padding-left: 50px;
  128. &:before {
  129. left: 12px;
  130. }
  131. }
  132. }
  133. }
  134. &.magazine-nav {
  135. position: relative;
  136. &:before {
  137. content: "";
  138. @include full-size;
  139. background: linear-gradient(90deg, var(--theme-color-gradient-01) 20%, var(--theme-color-gradient-02) 70%, var(--theme-color-gradient-03) 100%);
  140. transition: 0.3s ease;
  141. width: 100%;
  142. }
  143. &:hover {
  144. &:before {
  145. width: 120%;
  146. }
  147. a {
  148. background-color: transparent;
  149. }
  150. }
  151. a {
  152. color: white !important;
  153. background-color: transparent !important;
  154. &:before {
  155. content: '\e8c8' !important;
  156. }
  157. }
  158. }
  159. &.link, &.overview, &.miscellaneous {
  160. a {
  161. color: var(--theme-color-secondary-intensed);
  162. }
  163. }
  164. &.link a:before, &.miscellaneous a:before {
  165. @include icon-content;
  166. margin-top: -14px;
  167. }
  168. &.overview a:before {
  169. @include icon-liste;
  170. margin-top: -14px;
  171. }
  172. &.back:hover {
  173. text-decoration: none;
  174. }
  175. &.link.extranet a:before, &.miscellaneous.extranet a:before {
  176. @include icon-content-stern;
  177. }
  178. &.link.intranet a:before, &.miscellaneous.intranet a:before {
  179. @include icon-content-schloss;
  180. }
  181. &.link.download a:before, &.miscellaneous.download a:before {
  182. @include icon-download;
  183. }
  184. &.overview.extranet a:before {
  185. @include icon-liste-stern;
  186. margin-top: -14px;
  187. }
  188. &.overview.intranet a:before {
  189. @include icon-liste-schloss;
  190. margin-top: -14px;
  191. }
  192. &.deep.extranet a:before {
  193. @include icon-pfeil-rechts-stern;
  194. }
  195. &.deep.intranet {
  196. a:before {
  197. @include icon-pfeil-rechts-schloss;
  198. }
  199. li.back a:before {
  200. transform: scale(-1, 1);
  201. }
  202. }
  203. &.miscellaneous.external a:before {
  204. @include icon-link-external;
  205. }
  206. }
  207. a {
  208. position: relative;
  209. display: flex;
  210. justify-content: flex-start;
  211. align-items: center;
  212. font-family: 'Korb', sans-serif;
  213. font-size: var(--font-size-copy);
  214. line-height: 1.2;
  215. padding: 12px 60px 12px 20px;
  216. min-height: 61px;
  217. text-decoration: none;
  218. transition: 0.3s $easeOutSine;
  219. border-bottom: 1px solid rgba(var(--theme-color-primary-rgb), 0.1);
  220. @include focus-visible(true);
  221. &.active {
  222. background-color: var(--theme-grey-light);
  223. padding-left: 12px;
  224. border-left: var(--border-width) solid var(--theme-color-secondary-intensed);
  225. }
  226. &:before {
  227. @include icon-pfeil-rechts;
  228. position: absolute;
  229. width: 30px;
  230. height: 30px;
  231. font-family: 'Icons', sans-serif;
  232. font-size: var(--icon-size);
  233. line-height: 1;
  234. right: 18px;
  235. top: 50%;
  236. margin-top: calc(var(--icon-size) / -2);
  237. text-align: center;
  238. }
  239. @media(max-width: 359px), (max-width: 767px) and (orientation: landscape) {
  240. min-height: 43px;
  241. padding: 10px 50px 10px 20px;
  242. &:before {
  243. right: 12px;
  244. }
  245. }
  246. &:hover {
  247. text-decoration: none;
  248. background-color: rgba(var(--theme-color-primary-rgb), 0.06);
  249. }
  250. }
  251. }
  252. }
  253. .page-header {
  254. .logos {
  255. margin: 0 -10px;
  256. position: relative;
  257. display: flex;
  258. @media(min-width: 1000px) {
  259. text-align: right;
  260. }
  261. @media(max-width: 999px) {
  262. display: none;
  263. }
  264. a {
  265. display: inline-block;
  266. margin: 0 10px;
  267. }
  268. img {
  269. max-height: 30px;
  270. }
  271. }
  272. .secondary {
  273. position: relative;
  274. z-index: 1;
  275. background-color: var(--theme-color-primary-dimmed-04);
  276. text-align: left;
  277. ul {
  278. padding: 15px 14px;
  279. list-style: none;
  280. margin: 0;
  281. font-size: 18px;
  282. line-height: 20px;
  283. @media(max-width: 359px) {
  284. font-size: 16px;
  285. line-height: 20px;
  286. padding: 10px;
  287. }
  288. }
  289. li {
  290. display: inline-block;
  291. }
  292. @media (max-width: 767px) and (orientation: landscape) {
  293. position: absolute;
  294. right: 100%;
  295. top: 0;
  296. width: calc(100vw - 420px);
  297. min-width: 35vw;
  298. li {
  299. display: block;
  300. }
  301. }
  302. a {
  303. position: relative;
  304. display: block;
  305. padding: 5px 6px;
  306. transition: 0.3s $easeOutQuad;
  307. text-decoration: underline;
  308. text-decoration-color: transparent;
  309. text-decoration-thickness: 2px;
  310. text-underline-offset: 2px;
  311. @include focus-visible;
  312. @media(max-width: 359px) {
  313. padding: 5px;
  314. }
  315. }
  316. }
  317. .meta {
  318. position: relative;
  319. z-index: 1;
  320. padding: 0 12px;
  321. > ul {
  322. display: flex;
  323. justify-content: flex-start;
  324. list-style: none;
  325. padding: 0;
  326. margin: 0;
  327. }
  328. ul {
  329. display: flex;
  330. list-style: none;
  331. padding: 0;
  332. margin: 0;
  333. li {
  334. padding: 0;
  335. }
  336. }
  337. .icons {
  338. margin-left: auto;
  339. .login {
  340. a {
  341. &:before {
  342. @include icon-login-flyout;
  343. font-family: 'Icons', sans-serif;
  344. font-size: var(--icon-size-small);
  345. line-height: 30px;
  346. float: right;
  347. margin-left: 5px;
  348. }
  349. &:hover {
  350. text-decoration-color: transparent;
  351. }
  352. }
  353. }
  354. li:not(.login) a {
  355. font-size: 0;
  356. line-height: 0;
  357. text-decoration: none;
  358. &:before {
  359. font-family: 'Icons', sans-serif;
  360. font-size: var(--icon-size-small);
  361. line-height: 30px;
  362. }
  363. &:hover {
  364. text-decoration-color: transparent;
  365. }
  366. }
  367. .sign-language a::before {
  368. @include icon-small-gebaerdensprache;
  369. }
  370. .simple-language a::before {
  371. @include icon-small-leichte-sprache;
  372. }
  373. }
  374. a {
  375. display: block;
  376. font-size: var(--font-size-small);
  377. line-height: 30px;
  378. margin: 10px 0;
  379. padding: 5px 8px;
  380. text-decoration: none;
  381. /*
  382. text-decoration: underline;
  383. text-decoration-color: transparent;
  384. text-decoration-thickness: 2px;
  385. text-underline-offset: 2px;
  386. */
  387. transition: 0.3s ease;
  388. text-align: center;
  389. border: 0;
  390. background-color: transparent;
  391. cursor: pointer;
  392. @include focus-visible;
  393. @media(max-width: 359px) {
  394. padding: 5px;
  395. }
  396. &:hover {
  397. text-decoration-color: var(--theme-color-primary);
  398. }
  399. }
  400. }
  401. .secondary, .meta {
  402. a {
  403. border-radius: var(--border-radius-xs);
  404. }
  405. }
  406. }