/** LESS **/ @padding-content: 20px 30px; @button-color: #dddddd; .gohst { padding: 20px 15px; border: solid 4px @button-color; } .gohst-hover { background: @button-color; color: #fff; } .block { padding: 20px 15px; background: @button-color; } @max340: ~"(max-width: 340px)"; @max900: ~"(max-width: 900px)"; @max1500: ~"(max-width: 1600px)"; body { margin: 0; font-family: source-sans-pro, sans-serif; font-weight: 400; font-style: normal; font-size: 20px; line-height: 160%; color: #444; @media @max900 { font-size: 16px; } } h1 { line-height: 110%; } h2 { font-size: 280%; line-height: 110%; color: #0072ce; @media @max900 { hyphens: auto; font-size: 250%; } } h3 { font-size: 120%; line-height: 110%; font-weight: bold; color: #0072ce; } hr { color: #efefef; border-top: 0; margin: 50px 0; } a { color:#0072ce; font-weight: 600; text-decoration: none; } p.button a { background-color: #0072ce; color: #fff; padding: 15px 15px; transition: 0.3s; } p.button a:hover { background-color:rgba(0, 66, 118, 1); } /**** HEADER ****/ .header_wrapper_outer { display: grid; width: 100%; justify-items: center; position: relative; z-index: 2; .header_wrapper_inner { display: grid; align-items: center; grid-template-areas: "logo hamburger"; grid-template-columns: 450px 1fr; max-width: 1500px; width: calc(100% - 60px); padding: 0 30px; @media @max340 { width: calc(100% - 40px); padding: 0 20px; } @media @max900 { grid-template-columns: 70% 1fr; } .logo { grid-area: logo; padding: 40px 30px 40px 0; img { width: 100%; height: auto; @media @max340 { max-width: 100%; } @media @max900 { max-height: 50px; width: auto; } } } .logo-negativ { grid-area: logo; padding: 40px 30px 40px 0; img { width: 100%; height: auto; opacity: 0; display: none; @media @max340 { max-width: 100%; } @media @max900 { max-height: 50px; width: auto; display: inline; } } } .social-media ul { display: flex; column-gap: 10px; justify-content: end; padding: @padding-content; li { width: 40px; img { width: 100%; height: auto; } } } } } /*** HAMBURGER ***/ .hamburger-wrapper { grid-area: hamburger; padding: 15px; background-color: #0072ce; justify-self: end; z-index: 20; } #hamburger { width: 50px; height: 45px; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .5s ease-in-out; -moz-transition: .5s ease-in-out; -o-transition: .5s ease-in-out; transition: .5s ease-in-out; cursor: pointer; @media @max900 { width: 30px; height: 28px; } span { display: block; position: absolute; height: 9px; width: 100%; background: #fff; border-radius: 0; opacity: 1; left: 0; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .25s ease-in-out; -moz-transition: .25s ease-in-out; -o-transition: .25s ease-in-out; transition: .25s ease-in-out; @media @max900 { height: 6px; } &:nth-child(1) { top: 0px; -webkit-transform-origin: left center; -moz-transform-origin: left center; -o-transform-origin: left center; transform-origin: left center; } &:nth-child(2) { top: 18px; -webkit-transform-origin: left center; -moz-transform-origin: left center; -o-transform-origin: left center; transform-origin: left center; @media @max900 { top: 12px; } } &:nth-child(3) { top: 36px; -webkit-transform-origin: left center; -moz-transform-origin: left center; -o-transform-origin: left center; transform-origin: left center; @media @max900 { top: 24px; } } } } #hamburger.open span:nth-child(1) { -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); top: 0; left: 7px; @media @max900 { top: 0; left: 4px; } } #hamburger.open span:nth-child(2) { width: 0%; opacity: 0; } #hamburger.open span:nth-child(3) { -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg); top: 36px; left: 7px; @media @max900 { top: 21px; left: 4px; } } /*** BANNER ***/ .banner_wrapper_outer { margin-top: -201px; width: 100%; height: 100vh; overflow: hidden; position: relative; z-index: 1; min-height: 950px; @media @max1500 { min-height: 780px; } @media @max900 { margin-top: -140px; max-height: 100vh !important; min-height: 0; } .banner_wrapper_inner{ display: grid; grid-template-areas: "scrolldown" "bannertext" ; grid-template-rows: 1fr auto; height: 100vh; min-height: 950px; @media @max1500 { min-height: 780px; } @media @max900 { max-height: 100vh !important; min-height: 0; } .banner { display: flex; justify-content: center; position: absolute; img { object-fit: cover; height: 100%; width: 100%; min-height: 100vh; object-position: 70%; } } .banner-text { grid-area: bannertext; position: relative; display: grid; justify-items: center; z-index: 2; background-color: rgba(27, 117, 187, 0.6); .mod-custom { max-width: 1500px; width: calc(100% - 60px); color: #fff; padding: 35px 30px; @media @max340 { padding: 15px 30px; } h1 { font-size: 400%; margin-bottom: 0; max-width: 60%; @media @max1500 { max-width: 70%; font-size: 250%; } @media @max900 { max-width: 100%; font-size: 230%; } } p { font-size: 200%; margin: 20px 0; max-width: 60%; @media @max900 { font-size: 150%; } } } } .scrolldown-wrapper { grid-area: scrolldown; position: relative; display: grid; justify-items: center; .scrolldown { max-width: 1500px; width: calc(100% - 60px); z-index: 2; display: grid; img { justify-self: end; align-self: end; width: 80px; height: 80px; margin-bottom: -40px; @media @max900 { width: 60px; height: 60px; margin-bottom: -30px; } } } } } } /*** NAVIGATION ***/ .navigation_wrapper_outer { position: absolute; top: 0; width: 100%; height: 100%; display: grid; justify-items: end; .navigation_wrapper_inner { background-color: rgba(0, 66, 118, 0.9); width: 40%; grid-template-rows: 25% 1fr 30%; display: none; z-index: 1; @media @max1500 { width: 50%; } @media @max900 { width: 100%; } .navigation { grid-column: 1; grid-row: 2/3; align-self: center; ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; row-gap: 30px; } a { font-size: 250%; color: #fff; font-weight: 600; text-decoration: none; padding-left: 50px; display: flex; align-items: center; transition: 0.3s; line-height: 110%; padding-right: 30px; @media @max900 { font-size: 180%; } @media @max340 { font-size: 150%; } &::before { content: ""; height: 30px; width: 30px; background-color: #fff; position: absolute; margin-left: -65px; transition: 0.3s; } &:hover { color: #0072ce; &::before { background-color: #0072ce; } } } } } } /*** Content ***/ .wrapper-outer { .wrapper-inner{ .blog-items { .blog-item { padding: 150px 30px; width:calc(100% - 60px); display: grid; justify-items: center; @media @max900 { padding: 80px 30px; } &:nth-child(even) { background-color: #F0F9FF; } &:nth-child(odd) { .accordion-title { background-color: #F0F9FF !important; } .accordion-content { background-color: #F0F9FF !important; } } &:last-child { background-color: #004276; h1,h2,h3,p,a,li,strong { color: #fff !important; } } .item-content { display: grid; grid-template-columns: 40% 60%; grid-template-rows: auto 1fr; grid-template-areas: "title inhalt" "bild inhalt"; max-width: 1300px; @media @max900 { grid-template-columns: 100%; grid-template-rows: auto auto auto; grid-template-areas: "title" "inhalt" "bild"; } .item-image { grid-area: bild; overflow: hidden; width: 70%; height: auto; margin: 0; justify-self: end; align-self: start; @media @max900 { width: 100%; margin-top: 50px; } img { width: 100%; height: auto; } } .page-header { grid-area: title; text-align: right; width: 100%; justify-self: end; margin-bottom: 50px; @media @max900 { text-align: left; margin-bottom: 0px; } h2 { margin: 15px 0; } } .page-content { grid-area: inhalt; padding: 60px 50px 60px 100px; @media @max900 { padding: 0px; } strong { color: #0072ce; } ul { list-style: none; padding: 0 0 0 25px; li { display: flex; align-items: flex-start; &::before { content: ""; height: 15px; width: 15px; background: #0072ce; display: inline-block; margin-top: 7px; margin-left: -25px; position: absolute; } } li.adresse { display: flex; align-items: center; margin-bottom: 15px; &::before { content: ""; height: 40px; width: 40px; background: url("../../images/maps.png"); display: inline-block; margin-top: 0px; margin-left: -25px; margin-right: 20px; position: relative; background-size: cover; min-width: 40px; } } li.telefon,li.fax { display: flex; align-items: center; margin-bottom: 15px; &::before { content: ""; height: 40px; width: 40px; background: url("../../images/phone.png"); display: inline-block; margin-top: 0px; margin-left: -25px; margin-right: 20px; position: relative; background-size: cover; min-width: 40px; } } li.e-mail-adresse { display: flex; align-items: center; margin-bottom: 15px; &::before { content: ""; height: 40px; width: 40px; background: url("../../images/mail.png"); display: inline-block; margin-top: 0px; margin-left: -25px; margin-right: 20px; position: relative; background-size: cover; min-width: 40px; } } li.linkedin { display: flex; align-items: center; margin-bottom: 15px; &::before { content: ""; height: 40px; width: 40px; background: url("../../images/linkedin.png"); display: inline-block; margin-top: 0px; margin-left: -25px; margin-right: 20px; position: relative; background-size: cover; min-width: 40px; } } } .accordion-title.close { background-color: #fff; padding: 15px 20px 15px 20px; font-size: 120%; font-weight: 600; margin-bottom: 5px; margin-top: 10px; display: grid; align-items: center; grid-template-columns: 1fr auto; z-index: 1; position: relative; @media @max340 { hyphens: auto; } &::after { content: ""; background-image: url("../../images/close.png"); width: 35px; height: 35px; background-size: cover; margin-left: 20px; } } .accordion-title.open { background-color: #fff; padding: 15px 20px 15px 20px; font-size: 120%; font-weight: 600; margin-bottom: 5px; margin-top: 10px; display: grid; align-items: center; grid-template-columns: 1fr auto; z-index: 1; position: relative; @media @max340 { hyphens: auto; } &::after { content: ""; background-image: url("../../images/open.png"); width: 35px; height: 35px; background-size: cover; margin-left: 20px; } } .accordion-content { background-color: #fff; padding: 18px 20px 16px 20px; font-size: 90%; margin-top: 15px; display: none; opacity: 0; z-index: 0; } ul.accordion-content { padding: 18px 20px 16px 50px; } } } } } } }