Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.
 
 
 
 

487 rader
10 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. @media(max-width: 999px) {
  239. top: calc(50% - 3px);
  240. }
  241. @media(max-width: 767px) {
  242. top: calc(50% - 6px);
  243. }
  244. }
  245. @media(max-width: 359px), (max-width: 767px) and (orientation: landscape) {
  246. min-height: 43px;
  247. padding: 10px 50px 10px 20px;
  248. &:before {
  249. right: 12px;
  250. }
  251. }
  252. &:hover {
  253. text-decoration: none;
  254. background-color: rgba(var(--theme-color-primary-rgb), 0.06);
  255. }
  256. }
  257. }
  258. }
  259. .page-header {
  260. .logos {
  261. margin: 0 -10px;
  262. position: relative;
  263. display: flex;
  264. @media(min-width: 1000px) {
  265. text-align: right;
  266. }
  267. @media(max-width: 999px) {
  268. display: none;
  269. }
  270. a {
  271. display: inline-block;
  272. margin: 0 10px;
  273. }
  274. img {
  275. max-height: 30px;
  276. }
  277. }
  278. .secondary {
  279. position: relative;
  280. z-index: 1;
  281. background-color: var(--theme-color-primary-dimmed-04);
  282. text-align: left;
  283. ul {
  284. padding: 15px 14px;
  285. list-style: none;
  286. margin: 0;
  287. font-size: 18px;
  288. line-height: 20px;
  289. @media(max-width: 359px) {
  290. font-size: 16px;
  291. line-height: 20px;
  292. padding: 10px;
  293. }
  294. }
  295. li {
  296. display: inline-block;
  297. }
  298. @media (max-width: 767px) and (orientation: landscape) {
  299. position: absolute;
  300. right: 100%;
  301. top: 0;
  302. width: calc(100vw - 420px);
  303. min-width: 35vw;
  304. li {
  305. display: block;
  306. }
  307. }
  308. a {
  309. position: relative;
  310. display: block;
  311. padding: 5px 6px;
  312. transition: 0.3s $easeOutQuad;
  313. text-decoration: underline;
  314. text-decoration-color: transparent;
  315. text-decoration-thickness: 2px;
  316. text-underline-offset: 2px;
  317. @include focus-visible;
  318. @media(max-width: 359px) {
  319. padding: 5px;
  320. }
  321. }
  322. }
  323. .meta {
  324. position: relative;
  325. z-index: 1;
  326. padding: 0 12px;
  327. > ul {
  328. display: flex;
  329. justify-content: flex-start;
  330. list-style: none;
  331. padding: 0;
  332. margin: 0;
  333. }
  334. ul {
  335. display: flex;
  336. list-style: none;
  337. padding: 0;
  338. margin: 0;
  339. li {
  340. padding: 0;
  341. }
  342. }
  343. .icons {
  344. margin-left: auto;
  345. .login {
  346. a {
  347. &:before {
  348. @include icon-login-flyout;
  349. font-family: 'Icons', sans-serif;
  350. font-size: var(--icon-size-small);
  351. line-height: 30px;
  352. float: right;
  353. margin-left: 5px;
  354. }
  355. &:hover {
  356. text-decoration-color: transparent;
  357. }
  358. }
  359. }
  360. li:not(.login) a {
  361. font-size: 0;
  362. line-height: 0;
  363. text-decoration: none;
  364. &:before {
  365. font-family: 'Icons', sans-serif;
  366. font-size: var(--icon-size-small);
  367. line-height: 30px;
  368. }
  369. &:hover {
  370. text-decoration-color: transparent;
  371. }
  372. }
  373. .sign-language a::before {
  374. @include icon-small-gebaerdensprache;
  375. }
  376. .simple-language a::before {
  377. @include icon-small-leichte-sprache;
  378. }
  379. }
  380. a {
  381. display: block;
  382. font-size: var(--font-size-small);
  383. line-height: 30px;
  384. margin: 10px 0;
  385. padding: 5px 8px;
  386. text-decoration: none;
  387. /*
  388. text-decoration: underline;
  389. text-decoration-color: transparent;
  390. text-decoration-thickness: 2px;
  391. text-underline-offset: 2px;
  392. */
  393. transition: 0.3s ease;
  394. text-align: center;
  395. border: 0;
  396. background-color: transparent;
  397. cursor: pointer;
  398. @include focus-visible;
  399. @media(max-width: 359px) {
  400. padding: 5px;
  401. }
  402. &:hover {
  403. text-decoration-color: var(--theme-color-primary);
  404. }
  405. }
  406. }
  407. .secondary, .meta {
  408. a {
  409. border-radius: var(--border-radius-xs);
  410. }
  411. }
  412. }