You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

715 line
16 KiB

  1. @import '../../_global/styles/mixins';
  2. @import '../../_global/styles/vars';
  3. section.marketingheader{
  4. margin-top:0;
  5. .rotation .slider{
  6. border-bottom:0;
  7. .slider-tabs{
  8. li:first-child:last-child{
  9. display:none;
  10. }
  11. }
  12. .text-box{
  13. color:var(--theme-color-primary);
  14. &:not(:first-child)::before {
  15. background-color: var(--theme-color-primary-dimmed-04);
  16. }
  17. .btn{
  18. background-color: var(--theme-color-primary);
  19. color:white;
  20. &:hover:after{
  21. box-shadow: 0 0 0 var(--button-hover-shadow-size) var(--theme-color-primary);
  22. }
  23. }
  24. }
  25. }
  26. .search {
  27. position: relative;
  28. overflow: hidden;
  29. margin: 0;
  30. background-color: var(--theme-color-primary-dimmed-04);
  31. max-height: 100px;
  32. transition: all .5s cubic-bezier(0,1,0,1);
  33. background-size:cover;
  34. @media (max-width:767px){
  35. max-height: 78px;
  36. }
  37. .sc.container{
  38. position: absolute;
  39. top: 0;
  40. left: 0;
  41. right: 0;
  42. width: 100%;
  43. max-width: 100%;
  44. @media (max-width:767px){
  45. position: relative;
  46. .close-search{
  47. position: relative !important;
  48. right:0 !important;
  49. top:0 !important;
  50. float: right;
  51. margin-bottom:15px;
  52. }
  53. }
  54. .close-search{
  55. display:none;
  56. position: absolute;
  57. right:30px;
  58. top:33px;
  59. left:auto;
  60. cursor: pointer;
  61. transition: 0.3s ease;
  62. border: 1px solid var(--theme-color-primary-dimmed-04);
  63. border-radius: 10px;
  64. height:34px;
  65. width:34px;
  66. background-color: var(--theme-color-primary);
  67. @include focus-visible;
  68. z-index: 2;
  69. &:before, &:after {
  70. content: "";
  71. position: absolute;
  72. top: 50%;
  73. left: 50%;
  74. width: 17px;
  75. height: 1.5px;
  76. border-radius: 2px;
  77. background-color: var(--theme-color-white);
  78. transform: translate(-50%,-50%) rotate(45deg);
  79. transition: 0.3s ease;
  80. }
  81. &:after {
  82. transform: translate(-50%,-50%) rotate(-45deg);
  83. }
  84. }
  85. }
  86. @media(max-width: 767px) {
  87. //padding: calc(1.5vw + 15px) 0 0;
  88. //margin-bottom: -10px;
  89. }
  90. &.open{
  91. max-height: 9999px;
  92. transition: all .5s cubic-bezier(1,0,1,0);
  93. .close-search{
  94. display:block !important;
  95. }
  96. .tiles{
  97. margin-top:0;
  98. padding-bottom:9px;
  99. @media screen and (max-width:767px){
  100. padding-bottom:0;
  101. }
  102. }
  103. form{
  104. max-width: 580px;
  105. }
  106. }
  107. form{
  108. border-radius: 24px;
  109. box-shadow: 0 4px 20px -5px rgba(0, 0, 0, 0.25) !important;
  110. overflow:hidden;
  111. font-size: 22px;
  112. max-width: 360px;
  113. margin: 20px auto !important;
  114. transition: 0.25s ease;
  115. @media(max-width: 767px) {
  116. font-size: 18px;
  117. margin: 15px auto !important;
  118. }
  119. }
  120. + section, + #toclist > section:first-child {
  121. @media(min-width: 768px) {
  122. margin-top: 0;
  123. }
  124. }
  125. input#search-term{
  126. border-color:white !important;
  127. height: 60px;
  128. border-top-left-radius: 24px;
  129. border-bottom-left-radius: 24px;
  130. font-size: 22px;
  131. @media(max-width: 767px) {
  132. font-size: 18px;
  133. height: 48px;
  134. }
  135. &::placeholder{
  136. color:var(--theme-color-primary) !important;
  137. }
  138. }
  139. button.search-submit{
  140. background-color: var(--theme-color-primary) !important;
  141. color: white;
  142. border-top-left-radius: 0 !important;
  143. border-bottom-left-radius: 0 !important;
  144. border-top-right-radius: 0 !important;
  145. border-bottom-right-radius: 0 !important;
  146. border-color:white !important;
  147. height: 60px;
  148. width:60px;
  149. font-size: 22px;
  150. @media(max-width: 767px) {
  151. font-size: 18px;
  152. height: 48px;
  153. width:48px;
  154. }
  155. &:before{
  156. width:30px;
  157. height:30px;
  158. font-size:30px;
  159. @media(max-width: 767px) {
  160. width:24px;
  161. height:24px;
  162. font-size:24px;
  163. }
  164. }
  165. }
  166. .container {
  167. position: relative;
  168. z-index: 1;
  169. .row {
  170. @media(max-width: 567px) {
  171. min-height: 0;
  172. }
  173. > .col{
  174. margin-top:0;
  175. padding-top:0;
  176. padding-bottom:0;
  177. }
  178. }
  179. }
  180. .artwork {
  181. @media(max-width: 420px) {
  182. top: 30px;
  183. right: -20px;
  184. }
  185. @media(max-width: 340px) {
  186. top: 40px;
  187. right: -30px;
  188. }
  189. }
  190. form {
  191. position: relative;
  192. margin: 0 0 16px;
  193. //box-shadow: 0 3px 20px -5px rgba(#000, 0.3);
  194. //border-radius: var(--border-radius-md) var(--border-radius-xl) var(--border-radius-xl) var(--border-radius-md);
  195. @media(max-width: 567px) {
  196. margin-top: 20px;
  197. }
  198. }
  199. h1 {
  200. margin-left: 0;
  201. margin-top: 0;
  202. @media(max-width: 567px) {
  203. font-size: 24px;
  204. margin: 0;
  205. }
  206. }
  207. .tiles {
  208. margin: 100px -8px 0 -8px;
  209. display: flex;
  210. flex-wrap: wrap;
  211. font-family: "Korb", sans-serif;
  212. transition: all 0.25s ease-in;
  213. padding-bottom: 0;
  214. @media(max-width: 767px) {
  215. //margin-left: -6px;
  216. //margin-right: -6px;
  217. }
  218. .tile {
  219. position: relative;
  220. display: flex;
  221. padding: 8px;
  222. flex: 1 1 33.3333%;
  223. max-width: 33.3333%;
  224. margin-top:0 !important;
  225. padding-top:0 !important;
  226. padding-bottom:0 !important;
  227. margin-bottom:16px !important;
  228. &::before {
  229. position: absolute;
  230. top: 8px;
  231. right: 8px;
  232. margin: 10px 8px;
  233. font-family: Icons, sans-serif;
  234. font-size: 18px;
  235. line-height: 1;
  236. text-align: center;
  237. pointer-events: none;
  238. z-index: 1;
  239. }
  240. &[data-type="download"]::before {
  241. @include icon-small-download;
  242. }
  243. &[data-type="external"]::before {
  244. @include icon-small-link-external;
  245. }
  246. @media(max-width: 567px) {
  247. flex: 1 1 50%;
  248. max-width: 50%;
  249. //padding: 6px;
  250. }
  251. &:nth-child(3) ~ .tile {
  252. z-index: 1;
  253. }
  254. &.downloads, &.a-z, &.events {
  255. order: 1;
  256. background-color: transparent;
  257. &::before {
  258. font-family: "Icons", sans-serif;
  259. position: absolute;
  260. font-size: 24px;
  261. line-height: 1;
  262. right: 0;
  263. top: 0;
  264. margin: 11px 10px;
  265. z-index: 1;
  266. background-color: white;
  267. padding: 7px 6px 5px;
  268. border-top-right-radius: 8px;
  269. border-bottom-left-radius: 8px;
  270. @media(max-width: 767px) {
  271. margin: 18px;
  272. font-size: 24px;
  273. }
  274. }
  275. .outer {
  276. background-color: var(--theme-color-primary-dimmed-04);
  277. }
  278. p {
  279. margin-bottom: 0.4em;
  280. }
  281. }
  282. &.downloads::before {
  283. @include icon-suche-datei;
  284. }
  285. &.a-z::before {
  286. @include icon-suche-az;
  287. }
  288. &.events::before {
  289. @include icon-suche-veranstaltung;
  290. }
  291. }
  292. .tile > a, .outer {
  293. position: relative;
  294. display: flex;
  295. align-items: flex-end;
  296. width: 100%;
  297. min-height: 108px;
  298. padding: 18px 24px 24px;
  299. border-radius: var(--border-radius-md);
  300. box-shadow: 0 4px 20px -5px rgba(#000, 0.25);
  301. transition: 0.25s ease;
  302. line-height: 1.2;
  303. background-color: var(--theme-color-background);
  304. overflow: hidden;
  305. @include focus-visible();
  306. @media(max-width: 767px) {
  307. font-size: 16px;
  308. padding: 10px 10px 15px;
  309. min-height: 84px;
  310. }
  311. &:before {
  312. content: "";
  313. position: absolute;
  314. display: block;
  315. bottom: 0;
  316. left: 0;
  317. right: 0;
  318. height: var(--border-width);
  319. background-color: var(--theme-color-secondary);
  320. transition: 0.25s $easeOutQuad;
  321. }
  322. &:hover {
  323. color: var(--theme-color-secondary-intensed);
  324. &:before {
  325. height: var(--border-width-hover);
  326. }
  327. }
  328. }
  329. .tile > a {
  330. .item-title {
  331. text-decoration: underline;
  332. }
  333. }
  334. .outer {
  335. background-color: var(--theme-primary-light-04);
  336. padding: 14px 20px 18px;
  337. border: 4px solid white;
  338. &::after, &::before {
  339. display: none;
  340. }
  341. }
  342. .inner {
  343. display: block;
  344. max-width: 100%;
  345. }
  346. .kicker {
  347. white-space: nowrap;
  348. text-overflow: ellipsis;
  349. overflow: hidden;
  350. max-width: 100%;
  351. display: block;
  352. text-decoration: none;
  353. }
  354. ul {
  355. list-style: none;
  356. padding: 0;
  357. font-size: 16px;
  358. max-width: 100%;
  359. margin: 0;
  360. li {
  361. margin-top: 5px;
  362. }
  363. a {
  364. display: block;
  365. white-space: nowrap;
  366. overflow: hidden;
  367. text-overflow: ellipsis;
  368. transition: 0.2s ease;
  369. font-weight: 500;
  370. &:hover {
  371. color: var(--color-secondary-dark);
  372. }
  373. }
  374. }
  375. .proposals {
  376. flex: 1 1 100%;
  377. padding: 10px 12px 0;
  378. order: 2;
  379. a {
  380. margin: 0 0.3em 0 0.1em;
  381. }
  382. p {
  383. margin-bottom: 0;
  384. }
  385. }
  386. .all-button-wrapper {
  387. padding: 16px 8px;
  388. display: block;
  389. flex: 1 1 100%;
  390. order: 3;
  391. .btn {
  392. transition: 0.2s ease;
  393. .count {
  394. margin-left: 0.3em;
  395. &::before {
  396. content: '(';
  397. }
  398. &::after {
  399. content: ')';
  400. }
  401. }
  402. }
  403. }
  404. }
  405. &.background-image{
  406. &:after{
  407. position:absolute;
  408. top:0;
  409. left:0;
  410. bottom:0;
  411. right:0;
  412. z-index: 0;
  413. content:"";
  414. opacity: 0.6;
  415. background: linear-gradient(87deg, #036 12.55%, rgba(1, 40, 81, 0.86) 56.52%, rgba(0, 51, 102, 0.00) 94.05%);
  416. background-blend-mode: overlay;
  417. }
  418. .artwork-wrapper{
  419. display:none;
  420. }
  421. }
  422. }
  423. &.infoteaser{
  424. max-height:427px;
  425. outer{
  426. max-height:427px;
  427. height:427px;
  428. @media(max-width: 999px) {
  429. max-height:none;
  430. height:auto;
  431. }
  432. }
  433. .rotation {
  434. @media screen and (max-width:900px){
  435. .slider .text-box:first-child::after {
  436. display: none;
  437. }
  438. padding:0;
  439. }
  440. .text-box{
  441. min-height: 0;
  442. }
  443. }
  444. .image-box{
  445. max-height:427px;
  446. min-height: 0;
  447. height:427px;
  448. img{
  449. max-height:427px;
  450. height:427px;
  451. }
  452. }
  453. .mainstage{
  454. @media screen and (max-width:900px){
  455. padding:0;
  456. }
  457. .row{
  458. margin:16px 0;
  459. @media screen and (min-width:901px){
  460. margin:30px -8px 0;
  461. }
  462. .col{
  463. flex: 1 1 100%;
  464. max-width: 100%;
  465. @media screen and (min-width:901px){
  466. padding:0 8px;
  467. flex: 1 1 calc(100% - 322px);
  468. max-width: calc(100% - 322px);
  469. }
  470. + .col{
  471. flex: 1 1 100%;
  472. max-width: 100%;
  473. display: flex;
  474. flex-flow: column;
  475. justify-content: space-between;
  476. margin: 0;
  477. padding: 0 var(--container-padding);
  478. @media screen and (min-width:901px){
  479. flex: 1 1 322px;
  480. max-width: 322px;
  481. padding:0 8px;
  482. margin: -8px 0;
  483. }
  484. .mt{
  485. height: 100%;
  486. padding: 8px 0;
  487. .mini-teaser{
  488. height: 100%;
  489. }
  490. }
  491. }
  492. }
  493. }
  494. }
  495. }
  496. &.hero-fullwidth{
  497. .mainstage.container{
  498. max-width: 1920px;
  499. width:100%;
  500. padding:0;
  501. > .row{
  502. margin:0;
  503. }
  504. }
  505. .rotation{
  506. margin:0 !important;
  507. padding:0 !important;
  508. //max-width: 1920px;
  509. width:100%;
  510. outer{
  511. margin:0 !important;
  512. position: relative;
  513. justify-content: center;
  514. @media screen and (min-width:901px) {
  515. max-height:566px;
  516. }
  517. }
  518. .slider{
  519. background-color: transparent;
  520. .image-box img {
  521. @media screen and (max-width:900px) {
  522. height: 300px;
  523. }
  524. @media screen and (max-width:767px) {
  525. height: 300px;
  526. }
  527. }
  528. .slide.text-only.current {
  529. background: linear-gradient(-10deg, var(--theme-color-gradient-01) 10%, var(--theme-color-gradient-02) 55%, var(--theme-color-gradient-03) 90%);
  530. }
  531. }
  532. }
  533. .image-box{
  534. width:100%;
  535. flex: 1 1 100%;
  536. max-width: 100%;
  537. max-height:566px;
  538. position: relative;
  539. padding-right: 0 !important;
  540. @media (min-width: 1000px) {
  541. padding-right: 0 !important;
  542. }
  543. &:after{
  544. position:absolute;
  545. top:0;
  546. left:0;
  547. bottom:0;
  548. right:0;
  549. z-index: 0;
  550. content:"";
  551. opacity: 0.6;
  552. background: linear-gradient(87deg, #036 12.55%, rgba(1, 40, 81, 0.86) 56.52%, rgba(0, 51, 102, 0.00) 94.05%);
  553. background-blend-mode: overlay;
  554. &:before{
  555. display:none;
  556. }
  557. }
  558. img{
  559. object-fit: cover;
  560. //position:relative;
  561. z-index: -1;
  562. left:0 !important;
  563. padding:0 !important;
  564. width:100% !important;
  565. }
  566. }
  567. .text-box{
  568. height: 100%;
  569. color:white;
  570. width: var(--container-width);
  571. padding: 0 var(--container-padding);
  572. max-width: 100%;
  573. margin: 0 auto;
  574. @media screen and (min-width:901px) {
  575. position: absolute;
  576. *{
  577. color:white;
  578. }
  579. .btn{
  580. background-color: white !important;
  581. color:var(--theme-color-primary) !important;
  582. &:hover:after{
  583. box-shadow: 0 0 0 var(--button-hover-shadow-size) white !important;
  584. }
  585. }
  586. }
  587. *{
  588. max-width:580px;
  589. }
  590. &:after{
  591. display:none;
  592. }
  593. &:before{
  594. display:none;
  595. }
  596. }
  597. .controls{
  598. width: var(--container-width);
  599. padding: 0 var(--container-padding);
  600. max-width: 100%;
  601. margin: 0 auto;
  602. position: relative;
  603. @media screen and (max-width:900px){
  604. position: absolute !important;
  605. top: 0;
  606. }
  607. }
  608. }
  609. .rotation{
  610. margin:0;
  611. @media screen and (max-width:900px){
  612. .slider{
  613. background-color: transparent;
  614. .slider-tabs{
  615. top:0;
  616. height: auto;
  617. bottom: auto;
  618. margin-top:15px;
  619. @media screen and (max-width:767px){
  620. .btn{
  621. --button-icon-padding: 30px;
  622. --button-icon-offset: 5px;
  623. --button-padding: 5px 10px;
  624. --button-min-size: 30px;
  625. margin: 2.5px;
  626. }
  627. }
  628. }
  629. .text-box{
  630. padding: var(--container-padding);
  631. }
  632. .text-box:not(:first-child)::before{
  633. display: none;
  634. }
  635. .image-box{
  636. order: 0;
  637. &:before{
  638. display: none;
  639. }
  640. img{
  641. position: static;
  642. height:300px;
  643. }
  644. }
  645. }
  646. }
  647. @media screen and (max-width:767px){
  648. .slider{
  649. .image-box{
  650. img{
  651. height:250px;
  652. }
  653. }
  654. }
  655. }
  656. @media screen and (max-width:567px) {
  657. .slider {
  658. margin: 0;
  659. .image-box{
  660. img{
  661. height:177px;
  662. }
  663. }
  664. }
  665. }
  666. .context-box{
  667. display:none !important;
  668. }
  669. }
  670. }