25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

939 lines
21 KiB

  1. @import '../../_global/styles/mixins';
  2. @import '../../_global/styles/vars';
  3. section.marketingheader{
  4. margin-top:0;
  5. &.miniinfoteaser{
  6. .kicker{
  7. color:var(--theme-color-secondary);
  8. }
  9. .mini-teaser{
  10. .category{
  11. color:var(--theme-color-secondary);
  12. }
  13. }
  14. .text-only .kicker{
  15. color:white;
  16. }
  17. }
  18. .rotation {
  19. .slider {
  20. .outer {
  21. max-height: 427px;
  22. @media(max-width: 999px) {
  23. max-height:none;
  24. height:auto;
  25. }
  26. }
  27. .copyright {
  28. @media(max-width: 900px) {
  29. left: calc(100% - 30px);
  30. }
  31. @media(max-width: 767px) {
  32. left: calc(100% - 20px);
  33. }
  34. }
  35. }
  36. }
  37. .text-box{
  38. .btn.has-icon.icon-small-arrow-right-simple {
  39. bottom: auto;
  40. }
  41. }
  42. .search {
  43. position: relative;
  44. overflow: hidden;
  45. margin: 0;
  46. background-color: var(--theme-color-primary-dimmed-04);
  47. //max-height: 100px;
  48. height: 100px;
  49. transition: all .3s ease-in;
  50. background-size:cover;
  51. @media (max-width:767px){
  52. max-height: 78px;
  53. }
  54. .artwork-left .foreground,
  55. .artwork-left .background,
  56. .artwork-left + .artwork .foreground,
  57. .artwork-left + .artwork .background {
  58. height: 100%;
  59. min-height: 437px;
  60. }
  61. .sc.container{
  62. position: absolute;
  63. top: 0;
  64. left: 0;
  65. right: 0;
  66. width: 100%;
  67. max-width: 100%;
  68. @media (max-width:767px){
  69. top: auto;
  70. bottom: 0;
  71. .close-search{
  72. position: relative !important;
  73. right:0 !important;
  74. top:0 !important;
  75. float: right;
  76. margin-bottom:15px;
  77. }
  78. }
  79. .close-search{
  80. display:none;
  81. position: absolute;
  82. right:30px;
  83. top:33px;
  84. left:auto;
  85. cursor: pointer;
  86. transition: 0.3s ease;
  87. border: 1px solid var(--theme-color-primary-dimmed-04);
  88. border-radius: 10px;
  89. height:34px;
  90. width:34px;
  91. background-color: var(--theme-color-primary);
  92. @include focus-visible;
  93. z-index: 2;
  94. &:before, &:after {
  95. content: "";
  96. position: absolute;
  97. top: 50%;
  98. left: 50%;
  99. width: 17px;
  100. height: 1.5px;
  101. border-radius: 2px;
  102. background-color: var(--theme-color-white);
  103. transform: translate(-50%,-50%) rotate(45deg);
  104. transition: 0.3s ease;
  105. }
  106. &:after {
  107. transform: translate(-50%,-50%) rotate(-45deg);
  108. }
  109. }
  110. }
  111. &.open {
  112. height: 390px;
  113. @media (max-width:767px){
  114. height: 385px;
  115. max-height: 385px;
  116. }
  117. @media (max-width:567px){
  118. height: 509px;
  119. max-height: 509px;
  120. }
  121. //max-height: 9999px;
  122. //transition: all .1s cubic-bezier(1,0,1,0);
  123. &.has-button-wrapper {
  124. height: 460px;
  125. @media (max-width:767px){
  126. height: 395px;
  127. max-height: 395px;
  128. }
  129. @media (max-width:567px){
  130. height: 519px;
  131. max-height: 519px;
  132. }
  133. }
  134. .close-search{
  135. display:block !important;
  136. }
  137. .tiles{
  138. top: 0;
  139. padding-bottom:9px;
  140. @media screen and (max-width:767px){
  141. padding-bottom:0;
  142. }
  143. }
  144. .all-button-wrapper {
  145. top: 0;
  146. }
  147. form{
  148. max-width: 580px;
  149. }
  150. }
  151. form{
  152. border-radius: 24px;
  153. box-shadow: 0 4px 20px -5px rgba(0, 0, 0, 0.25) !important;
  154. overflow:hidden;
  155. font-size: 22px;
  156. max-width: 360px;
  157. margin: 20px auto !important;
  158. transition: 0.3s ease;
  159. @media(max-width: 767px) {
  160. font-size: 18px;
  161. margin: 15px auto !important;
  162. }
  163. }
  164. + section, + #toclist > section:first-child {
  165. @media(min-width: 768px) {
  166. margin-top: 0;
  167. }
  168. }
  169. input#search-term{
  170. border-color:white !important;
  171. height: 60px;
  172. border-top-left-radius: 24px;
  173. border-bottom-left-radius: 24px;
  174. font-size: 22px;
  175. @media(max-width: 767px) {
  176. font-size: 18px;
  177. height: 48px;
  178. }
  179. &::placeholder{
  180. color:var(--theme-color-primary) !important;
  181. }
  182. }
  183. button.search-submit{
  184. background-color: var(--theme-color-primary) !important;
  185. color: white;
  186. border-top-left-radius: 0 !important;
  187. border-bottom-left-radius: 0 !important;
  188. border-top-right-radius: 0 !important;
  189. border-bottom-right-radius: 0 !important;
  190. border-color:white !important;
  191. height: 60px;
  192. width:60px;
  193. font-size: 22px;
  194. @media(max-width: 767px) {
  195. font-size: 18px;
  196. height: 48px;
  197. width:48px;
  198. }
  199. &:before{
  200. width:30px;
  201. height:30px;
  202. font-size:30px;
  203. @media(max-width: 767px) {
  204. width:24px;
  205. height:24px;
  206. font-size:24px;
  207. }
  208. }
  209. }
  210. .container {
  211. position: relative;
  212. z-index: 1;
  213. .row {
  214. @media(max-width: 567px) {
  215. min-height: 0;
  216. }
  217. > .col{
  218. margin-top:0;
  219. padding-top:0;
  220. padding-bottom:0;
  221. }
  222. }
  223. }
  224. .artwork {
  225. @media(max-width: 420px) {
  226. top: 30px;
  227. right: -20px;
  228. }
  229. @media(max-width: 340px) {
  230. top: 40px;
  231. right: -30px;
  232. }
  233. }
  234. form {
  235. position: relative;
  236. margin: 0 0 16px;
  237. //box-shadow: 0 3px 20px -5px rgba(#000, 0.3);
  238. //border-radius: var(--border-radius-md) var(--border-radius-xl) var(--border-radius-xl) var(--border-radius-md);
  239. @media(max-width: 567px) {
  240. margin-top: 20px;
  241. }
  242. }
  243. h1 {
  244. margin-left: 0;
  245. margin-top: 0;
  246. @media(max-width: 567px) {
  247. font-size: 24px;
  248. margin: 0;
  249. }
  250. }
  251. .tiles {
  252. margin: 0 -8px 0 -8px;
  253. position: relative;
  254. top: 100px;
  255. display: flex;
  256. flex-wrap: wrap;
  257. font-family: "Korb", sans-serif;
  258. transition: all 0.3s ease-in;
  259. padding-bottom: 0;
  260. .tile {
  261. position: relative;
  262. display: flex;
  263. padding: 8px;
  264. flex: 1 1 33.3333%;
  265. max-width: 33.3333%;
  266. margin-top:0 !important;
  267. padding-top:0 !important;
  268. padding-bottom:0 !important;
  269. margin-bottom:16px !important;
  270. &::before {
  271. position: absolute;
  272. top: 8px;
  273. right: 8px;
  274. margin: 10px 8px;
  275. font-family: Icons, sans-serif;
  276. font-size: 18px;
  277. line-height: 1;
  278. text-align: center;
  279. pointer-events: none;
  280. z-index: 1;
  281. }
  282. &[data-type="download"]::before {
  283. @include icon-small-download;
  284. }
  285. &[data-type="external"]::before {
  286. @include icon-small-link-external;
  287. }
  288. @media(max-width: 567px) {
  289. flex: 1 1 50%;
  290. max-width: 50%;
  291. //padding: 6px;
  292. }
  293. &:nth-child(3) ~ .tile {
  294. z-index: 1;
  295. }
  296. &.downloads, &.a-z, &.events {
  297. order: 1;
  298. background-color: transparent;
  299. &::before {
  300. font-family: "Icons", sans-serif;
  301. position: absolute;
  302. font-size: 24px;
  303. line-height: 1;
  304. right: 0;
  305. top: 0;
  306. margin: 11px 10px;
  307. z-index: 1;
  308. background-color: white;
  309. padding: 7px 6px 5px;
  310. border-top-right-radius: 8px;
  311. border-bottom-left-radius: 8px;
  312. @media(max-width: 767px) {
  313. margin: 18px;
  314. font-size: 24px;
  315. }
  316. }
  317. .outer {
  318. background-color: var(--theme-color-primary-dimmed-04);
  319. }
  320. p {
  321. margin-bottom: 0.4em;
  322. }
  323. }
  324. &.downloads::before {
  325. @include icon-suche-datei;
  326. }
  327. &.a-z::before {
  328. @include icon-suche-az;
  329. }
  330. &.events::before {
  331. @include icon-suche-veranstaltung;
  332. }
  333. }
  334. .tile > a, .outer {
  335. position: relative;
  336. display: flex;
  337. align-items: flex-end;
  338. width: 100%;
  339. height: 108px;
  340. max-height: 108px;
  341. padding: 10px 24px 18px 24px;
  342. border-radius: var(--border-radius-md);
  343. box-shadow: 0 4px 20px -5px rgba(#000, 0.25);
  344. transition: 0.25s ease;
  345. line-height: 1.2;
  346. background-color: var(--theme-color-background);
  347. overflow: hidden;
  348. @include focus-visible();
  349. @media(max-width: 767px) {
  350. font-size: 16px;
  351. padding: 10px 10px 15px;
  352. min-height: 84px;
  353. }
  354. &:before {
  355. content: "";
  356. position: absolute;
  357. display: block;
  358. bottom: 0;
  359. left: 0;
  360. right: 0;
  361. height: var(--border-width);
  362. background-color: var(--theme-color-secondary);
  363. transition: 0.25s $easeOutQuad;
  364. }
  365. &:hover {
  366. color: var(--theme-color-secondary-intensed);
  367. &:before {
  368. height: var(--border-width-hover);
  369. }
  370. }
  371. }
  372. .tile > a {
  373. .item-title {
  374. text-decoration: underline;
  375. }
  376. }
  377. .outer {
  378. background-color: var(--theme-primary-light-04);
  379. padding: 14px 20px 18px;
  380. border: 4px solid white;
  381. &::after, &::before {
  382. display: none;
  383. }
  384. }
  385. .inner {
  386. display: block;
  387. max-width: 100%;
  388. }
  389. .kicker {
  390. white-space: nowrap;
  391. text-overflow: ellipsis;
  392. overflow: hidden;
  393. max-width: 100%;
  394. display: block;
  395. text-decoration: none;
  396. }
  397. ul {
  398. list-style: none;
  399. padding: 0;
  400. font-size: 16px;
  401. max-width: 100%;
  402. margin: 0;
  403. li {
  404. margin-top: 5px;
  405. }
  406. a {
  407. display: block;
  408. white-space: nowrap;
  409. overflow: hidden;
  410. text-overflow: ellipsis;
  411. transition: 0.2s ease;
  412. font-weight: 500;
  413. &:hover {
  414. color: var(--color-secondary-dark);
  415. }
  416. }
  417. }
  418. .proposals {
  419. flex: 1 1 100%;
  420. padding: 10px 12px 0;
  421. order: 2;
  422. a {
  423. margin: 0 0.3em 0 0.1em;
  424. }
  425. p {
  426. margin-bottom: 0;
  427. }
  428. }
  429. .all-button-wrapper {
  430. padding: 16px 8px;
  431. display: block;
  432. flex: 1 1 100%;
  433. order: 3;
  434. .btn {
  435. transition: 0.2s ease;
  436. .count {
  437. margin-left: 0.3em;
  438. &::before {
  439. content: '(';
  440. }
  441. &::after {
  442. content: ')';
  443. }
  444. }
  445. }
  446. }
  447. }
  448. &.background-image{
  449. &:after{
  450. position:absolute;
  451. top:0;
  452. left:0;
  453. bottom:0;
  454. right:0;
  455. z-index: 0;
  456. content:"";
  457. opacity: 0.6;
  458. background: linear-gradient(87deg, #036 12.55%, rgba(1, 40, 81, 0.86) 56.52%, rgba(0, 51, 102, 0.00) 94.05%);
  459. background-blend-mode: overlay;
  460. }
  461. .artwork-wrapper{
  462. display:none;
  463. }
  464. }
  465. .all-button-wrapper {
  466. display: block;
  467. padding-top: 10px;
  468. position: relative;
  469. top: 100px;
  470. transition: all 0.3s ease-in;
  471. }
  472. }
  473. &.infoteaser{
  474. border-radius: 4px;
  475. .slide-overflow{
  476. border-radius: 4px;
  477. }
  478. .outer{
  479. max-height:427px;
  480. height:427px;
  481. @media(max-width: 999px) {
  482. max-height:none;
  483. height:auto;
  484. }
  485. }
  486. .rotation {
  487. padding:0;
  488. @media screen and (max-width: 999px) {
  489. .slide:not(.text-only) .text-box {
  490. padding: 16px 0;
  491. }
  492. .slide .image-box img {
  493. position: static;
  494. height:300px;
  495. }
  496. .slider-tabs {
  497. top:0;
  498. height: auto;
  499. bottom: auto;
  500. margin-top:15px;
  501. }
  502. }
  503. @media screen and (max-width: 900px) {
  504. .slider .image-box {
  505. padding-left: var(--container-padding);
  506. padding-right: var(--container-padding);
  507. }
  508. .slider .text-box:first-child::after {
  509. display: none;
  510. }
  511. }
  512. .text-box{
  513. min-height: 0;
  514. }
  515. }
  516. .outer{
  517. border-radius: 4px;
  518. .image-box img{
  519. border-radius: 4px;
  520. }
  521. }
  522. .image-box{
  523. max-height:427px;
  524. min-height: 0;
  525. height:427px;
  526. img{
  527. max-height:427px;
  528. height:427px;
  529. }
  530. }
  531. .mainstage{
  532. @media screen and (max-width:900px){
  533. padding:0;
  534. }
  535. .row{
  536. margin:16px 0;
  537. @media screen and (min-width:901px){
  538. margin:30px -8px 0;
  539. }
  540. .col{
  541. flex: 1 1 100%;
  542. max-width: 100%;
  543. @media screen and (min-width:901px){
  544. padding:0 8px;
  545. flex: 1 1 calc(100% - 322px);
  546. max-width: calc(100% - 322px);
  547. }
  548. + .col{
  549. flex: 1 1 100%;
  550. max-width: 100%;
  551. display: flex;
  552. flex-flow: column;
  553. justify-content: space-between;
  554. margin: 0;
  555. padding: 0 var(--container-padding);
  556. @media screen and (min-width:901px){
  557. flex: 1 1 322px;
  558. max-width: 322px;
  559. padding:0 8px;
  560. margin: -8px 0;
  561. }
  562. .mt{
  563. height: 100%;
  564. padding: 8px 0;
  565. @media screen and (max-width:575px){
  566. padding: 4px 0;
  567. }
  568. .mini-teaser{
  569. height: 100%;
  570. .text-box{
  571. height: 100%;
  572. flex-flow: column;
  573. justify-content: space-between;
  574. .btn{
  575. height: fit-content;
  576. }
  577. }
  578. }
  579. }
  580. }
  581. }
  582. }
  583. }
  584. }
  585. &.hero-fullwidth{
  586. .mainstage.container{
  587. /*max-width: 1920px;*/
  588. width:100%;
  589. padding:0;
  590. > .row{
  591. margin:0;
  592. }
  593. }
  594. .rotation{
  595. margin:0 !important;
  596. padding:0 !important;
  597. //max-width: 1920px;
  598. width:100%;
  599. .outer{
  600. margin:0 !important;
  601. position: relative;
  602. justify-content: center;
  603. @media screen and (min-width:901px) {
  604. max-height:566px;
  605. }
  606. }
  607. .copyright {
  608. left: 100%;
  609. }
  610. .slider{
  611. background-color: transparent;
  612. .image-box img {
  613. @media screen and (max-width:900px) {
  614. height: 300px;
  615. }
  616. @media screen and (max-width:767px) {
  617. height: 300px;
  618. }
  619. }
  620. .slide.text-only.current{
  621. background: linear-gradient(-10deg, var(--theme-color-gradient-01) 10%, var(--theme-color-gradient-02) 55%, var(--theme-color-gradient-03) 90%);
  622. }
  623. }
  624. }
  625. .image-box{
  626. width:100%;
  627. flex: 1 1 100%;
  628. max-width: 100%;
  629. max-height:566px;
  630. position: relative;
  631. padding-right: 0 !important;
  632. @media (min-width: 1000px) {
  633. padding-right: 0 !important;
  634. }
  635. &:after{
  636. position:absolute;
  637. top:0;
  638. left:0;
  639. bottom:0;
  640. right:0;
  641. z-index: 0;
  642. content:"";
  643. opacity: 0.6;
  644. background: linear-gradient(87deg, #036 12.55%, rgba(1, 40, 81, 0.86) 56.52%, rgba(0, 51, 102, 0.00) 94.05%);
  645. background-blend-mode: overlay;
  646. &:before{
  647. display:none;
  648. }
  649. }
  650. img{
  651. object-fit: cover;
  652. //position:relative;
  653. z-index: -1;
  654. left:0 !important;
  655. padding:0 !important;
  656. width:100% !important;
  657. }
  658. }
  659. .text-box{
  660. height: 100%;
  661. color:white;
  662. width: var(--container-width);
  663. padding: 0 var(--container-padding);
  664. max-width: 100%;
  665. margin: 0 auto;
  666. @media screen and (min-width:901px) {
  667. position: absolute;
  668. *{
  669. color:white;
  670. }
  671. .btn{
  672. background-color: white !important;
  673. color:var(--theme-color-primary) !important;
  674. &:hover:after{
  675. box-shadow: 0 0 0 var(--button-hover-shadow-size) white !important;
  676. }
  677. }
  678. }
  679. *{
  680. max-width:580px;
  681. }
  682. &:after{
  683. display:none;
  684. }
  685. &:before{
  686. display:none;
  687. }
  688. }
  689. .controls{
  690. width: var(--container-width);
  691. padding: 0 var(--container-padding);
  692. max-width: 100%;
  693. margin: 0 auto;
  694. position: relative;
  695. .slider-tabs {
  696. right: 30px;
  697. }
  698. @media screen and (max-width:900px){
  699. position: absolute !important;
  700. top: 0;
  701. }
  702. }
  703. }
  704. .rotation .slider{
  705. border-bottom:0;
  706. background-color: white;
  707. h3{
  708. margin-top: 4px;
  709. margin-bottom: 8px;
  710. }
  711. .kicker{
  712. margin-bottom:0;
  713. }
  714. p{
  715. margin-bottom:0.4em;
  716. }
  717. .btn{
  718. margin-top:0.4em;
  719. }
  720. &.ishovered .slider-tabs li.active button.btn::before{
  721. animation-play-state: paused;
  722. }
  723. &.btnanimation{
  724. .slider-tabs{
  725. li.active{
  726. button.btn::before{
  727. animation: fillgrey 7s linear forwards;
  728. }
  729. }
  730. }
  731. }
  732. .slider-tabs{
  733. li:first-child:last-child{
  734. display:none;
  735. }
  736. li.active{
  737. button.btn{
  738. background-blend-mode: overlay;
  739. overflow: hidden;
  740. }
  741. }
  742. li{
  743. button.btn{
  744. position: relative;
  745. border-radius: var(--border-radius-lg);
  746. }
  747. button.btn::before{
  748. width:0;
  749. background-color:var(--theme-grey-light);
  750. content: "";
  751. z-index:0;
  752. height:100%;
  753. position:absolute;
  754. top:0;
  755. bottom:0;
  756. right:0;
  757. left:0;
  758. right:0;
  759. display:block;
  760. background-blend-mode: multiply;
  761. }
  762. }
  763. }
  764. .slide.text-only.current{
  765. background: none;
  766. .outer{
  767. background: linear-gradient(-10deg, var(--theme-color-gradient-01) 10%, var(--theme-color-gradient-02) 55%, var(--theme-color-gradient-03) 90%);
  768. .text-box{
  769. justify-content: center;
  770. max-width: 580px;
  771. }
  772. }
  773. }
  774. .text-box{
  775. color:var(--theme-color-primary);
  776. padding: 30px 36px 24px 36px;
  777. display: flex;
  778. flex-flow: column;
  779. justify-content: center;
  780. min-width: 324px;
  781. &:not(:first-child)::before {
  782. background-color: var(--theme-color-primary-dimmed-04);
  783. }
  784. .btn{
  785. background-color: var(--theme-color-primary);
  786. color:white;
  787. &:hover:after{
  788. box-shadow: 0 0 0 var(--button-hover-shadow-size) var(--theme-color-primary);
  789. }
  790. }
  791. }
  792. .text-only{
  793. .text-box{
  794. color:white;
  795. }
  796. }
  797. }
  798. .rotation{
  799. margin:0;
  800. @media (max-width: 1339px) {
  801. .rotation .slider .text-box {
  802. min-width: 324px;
  803. }
  804. }
  805. @media (min-width: 1000px) {
  806. .slider .text-box:not(:first-child)::before {
  807. border-top-right-radius: 16% 50% !important;
  808. border-bottom-right-radius: 16% 50% !important;
  809. margin: -15% -8% -15% 20px;
  810. }
  811. }
  812. @media (max-width:999px){
  813. .slider{
  814. background-color: white;
  815. .text-box:not(:first-child)::before{
  816. display: none;
  817. }
  818. .image-box{
  819. order: 0;
  820. height:auto;
  821. max-height:none !important;
  822. img{
  823. aspect-ratio: 16 / 9;
  824. height: auto !important;
  825. max-height:none !important;
  826. min-height: 177px !important;
  827. }
  828. &:before{
  829. display: none;
  830. }
  831. img{
  832. position: static;
  833. //height:300px;
  834. }
  835. }
  836. }
  837. }
  838. @media screen and (max-width:900px){
  839. .slider{
  840. margin-bottom:20px;
  841. .slide:not(.text-only){
  842. .text-box{
  843. padding: 16px var(--container-padding) 0;
  844. }
  845. }
  846. .slide.text-only{
  847. padding-left: var(--container-padding);
  848. padding-right: var(--container-padding);
  849. }
  850. .slider-tabs{
  851. right: calc(var(--container-padding) + 10px);
  852. top: 15px;
  853. padding: 0;
  854. margin: 0;
  855. .btn{
  856. margin-top:0 !important;
  857. }
  858. }
  859. }
  860. }
  861. @media screen and (max-width:767px){
  862. .slider{
  863. .slide:not(.text-only) .text-box{
  864. padding: 16px var(--container-padding);
  865. }
  866. .slider-tabs{
  867. .btn{
  868. --button-icon-padding: 30px;
  869. --button-icon-offset: 5px;
  870. --button-padding: 5px 10px;
  871. --button-min-size: 30px;
  872. margin: 2.5px;
  873. }
  874. }
  875. }
  876. }
  877. @media screen and (max-width:567px) {
  878. .slider {
  879. margin: 0;
  880. margin-bottom: 8px;
  881. }
  882. }
  883. .context-box{
  884. display:none !important;
  885. }
  886. }
  887. }
  888. @keyframes fillgrey {
  889. 0%{width:0;}
  890. 100%{width:100%}
  891. }