@font-face { font-family: 'freeroadregular'; src: url('freeroad_regular-webfont.eot'); src: url('freeroad_regular-webfont.eot?#iefix') format('embedded-opentype'), url('freeroad_regular-webfont.woff2') format('woff2'), url('freeroad_regular-webfont.woff') format('woff'), url('freeroad_regular-webfont.ttf') format('truetype'), url('freeroad_regular-webfont.svg#freeroadregular') format('svg'); font-weight: normal; font-style: normal; } /* Resets */ html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, address, cite, code, del, dfn, em, img, ins, q, samp, small, strong, sub, sup, var, b, i, hr, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figure, figcaption, hgroup, menu, footer, header, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; vertical-align: baseline; } article, aside, canvas, figure, figure img, figcaption, hgroup, footer, header, nav, section, audio, video { display: block; } a img { border: 0; } input { border: 0; } *, *::before, *::after { -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */ -moz-box-sizing: border-box; /* Firefox, other Gecko */ box-sizing: border-box; /* Opera/IE 8+ */ } /* Selection colours (easy to forget) */ ::selection {background: @blue;color:#fff;} ::-moz-selection {background: @blue;color:#fff;} img::selection {background: transparent;color:#fff;} img::-moz-selection {background: transparent;color:#fff;} body {-webkit-tap-highlight-color: @blue;} .clearfix:before, .clearfix:after { content: " "; display: table; } .clearfix:after { clear: both; } .clearfix { *zoom: 1; } .transition(@time){ -webkit-transition: all (@time) ease-out; -moz-transition: all (@time) ease-out; -ms-transition: all (@time) ease-out; -o-transition: all (@time) ease-out; transition: all (@time) ease-out; } .transitionLinear(@time){ -webkit-transition: all (@time) linear; -moz-transition: all (@time) linear; -ms-transition: all (@time) linear; -o-transition: all (@time) linear; transition: all (@time) linear; } .pointer{ cursor:pointer; } /* ------------------------- Animation ---------------------------------------------- */ /* ------------------------- Classes // Variables ---------------------------------- */ .bg(){ background-color: transparent; background-repeat: no-repeat; background-position: center center; background-size: cover; } .blueText{ color:@blue; } /* -- Font-Colors -- */ @mainfont: white; @blue: rgba(51,153,204,1); /* -- BG-Colors -- */ @grey: #1a1a1a; .blueOverlay{ content: ""; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; background: #4b77aa; opacity: 0; .transition(0.5s); } .greyOverlay{ content: ""; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; background: #1a1a1a; opacity: 0; .transition(.5s); } /* ------------------------------------------------------------------- */ html{ font-family:freeroad, sans-serif; color:@mainfont; font-size:22px; } body{ nav{ position:fixed; top:0; left:0; width:100%; padding:3% 4% 0 3%; z-index:500; #logo{ max-width:160px; min-width: 68px; width: 15%; } #menuBut{ position:relative; float:right; height:48px; display:table; .pointer; span{ display:table-cell; text-transform:uppercase; font-weight:bold; font-style:italic; font-size:1.2rem; vertical-align:middle; } #ball{ max-width:48px; .transition(.5s); margin-left:25%; } &:hover{ #ball{ -webkit-transform: rotate(1turn); -moz-transform: rotate(1turn); -ms-transform: rotate(1turn); -o-transform: rotate(1turn); transform: rotate(1turn); } } } } #menuWrapper{ display: none; position: fixed; top:0; bottom:0; left:0; right:0; z-index: 400; text-align: center; &::before{ .blueOverlay; opacity:.5; } #menu{ position: absolute; width:50%; height:50%; top:50%; left:50%; margin-left:-25%; -webkit-transform: translateY(-50%); transform: translateY(-50%); background: url(img/background/bg_menu.png) white; background-position: center center; background-size: cover; display: table; #menuLogo{ img{ max-width:160px; min-width: 92px; width: 15%; } } ul{ display: table-cell; vertical-align: middle; text-transform: uppercase; text-align: center; list-style: none; line-height: 1.5rem; li a{ text-decoration: none; color:black; display: inline-block; width: 100%; &:hover{ color: @blue; } } } } } section{ height:100vh; width:100%; display:table; position:relative; .content{ display: table-cell; vertical-align: middle; text-align: center; padding: 10%; &>h1{ opacity: 1; position:relative; font-size:2.1rem; text-transform:uppercase; margin-bottom:0.4rem; .transitionLinear(.5s); &.opHL{ opacity: 0; } } &>h2{ font-size:1.5rem; font-style: italic; margin-bottom:1.7rem; } &>p{ font-size:1rem; margin-bottom:1.9rem; } a{ text-decoration: none; color: white; } .blueBut{ display: inline-block; padding: 2% 7%; background: @blue; text-transform: uppercase; color: white; text-decoration: none; font-style:italic; font-size:1.2rem; &:hover{ background:white; color:@blue; } } .moreInfos{ opacity: 0; position:absolute; top:50%; left:10%; right:10%; -webkit-transform: translateY(-50%); transform: translateY(-50%); .transition(.5s); &.opInfos{ opacity: 1; } .colWrapper { .col4{ width:25%; float:left; padding:0 1rem; display: block; &:last-of-type{ .clearfix; } .circle{ background:@blue; border-radius:50%; width:75%; max-width:200px; display:table; margin:0 auto 1.2rem; i, span{ display:table-cell; vertical-align:middle; } i{ font-size:2rem; } span{ text-transform: uppercase; } } .col4Text{ h3{ text-transform:uppercase; font-size:1rem; margin-bottom:1rem; } p{ font-size:.8rem; margin-bottom:1rem; } } } } .hint{ font-size:.8rem; font-style:italic; display: inline-block; padding-top:1rem; } } } &#home{ background:url('img/background/bg_home.png'); .bg; } &#leistungen{ background:url('img/background/bg_leistungen.png'); .bg; &::before { .greyOverlay; } .content{ .pointer; .blueBut{ margin-top:.5rem; } } } &#infos{ .content{ padding:0; } .infoBox{ width:50%; height:50vh; min-height: 400px; position: relative; float:left; padding: 0 3%; background-position: center center; background-size: cover; &::before{ .blueOverlay; } &#trainer{ background-image:url('img/background/bg_infos_1.png'); } &#konzept{ background-image:url('img/background/bg_infos_2.png'); } &#altersklassen{ background-image:url('img/background/bg_infos_3.png'); } &#profis{ background-image:url('img/background/bg_infos_4.png'); } &:hover{ &::before{ opacity: .5; } &>div{ -webkit-transform: translateY(-50%); transform: translateY(-50%); margin-top:0; } .weitereInfos{ opacity: 1; } } &>div{ position:relative; top:50%; transition: all 0.3s ease-out; margin-top:-4%; h1{ font-size:2.3rem; text-transform:uppercase; margin-bottom:0.6rem; } .weitereInfos{ opacity: 0; transition: opacity 0.3s ease-out; p { text-transform: uppercase; font-size:.8rem; line-height:1.5rem; .highlight{ color: #ff0000 !important; } } } } } } &#kosten{ background:url('img/background/bg_kosten.png'); .bg; &::before { .greyOverlay; } .content{ .pointer; .blueBut{ margin:2rem 1rem 2rem 0; &:last-of-type { margin-right:0; } } } } &#kontakt{ height:50vh; background:@grey; } } } @media screen and (max-width: 1500px) { html{ font-size:20px; } } @media screen and (max-width: 1385px) { body section .content .moreInfos .colWrapper .col4 .col4Text h3{ font-size: .8rem; } } @media screen and (max-width: 1200px) { html{ font-size:18px; } body{ section .content .moreInfos .colWrapper .col4{ width:50%; margin-bottom:3rem; &:nth-of-type(3), &:nth-of-type(4){ margin-bottom:.5rem; } .circle{ width:30%; text-align: center; i{ font-size: 1.5rem; } } } section#infos{ .infoBox{ width:100%; >div{ h1{ font-size: 2.8rem; margin-bottom: 1.5rem; } .weitereInfos{ p{ font-size: 1rem; line-height: 1.8rem; } } } } } } } @media screen and (max-width: 1000px) { html{ font-size:16px; } body{ nav{ #menuBut{ #ball{ width:75%; margin-top:10%; } } } section .content .moreInfos{ left:5%; right:5%; .colWrapper .col4{ width:100%; text-align: left; margin-bottom: 2rem !important; padding:0; &:last-of-type{ margin-bottom: 0 !important; } .circle{ width:15%; float:left; margin: 0 5% 2.2rem 0; &:last-of-type{ margin-bottom: 0; } } .col4Text{ h3{ font-size: 1rem; } p{ font-size: 1rem; } } } #hint{ padding-top: 0; } } } } @media screen and (max-width: 500px) { html{ font-size:16px; } body{ nav{ #menuBut{ &:hover{ #ball{ -webkit-transform:none; -moz-transform:none; -ms-transform:none; -o-transform:none; transform:none; } } #ball{ width:75%; margin-top:10%; } } } #menuWrapper{ ::before{ opacity: .95; } #menu{ background: transparent; ul { line-height: 2.5rem; li a{ color:white; } } } } section{ display: block; height:auto; min-height: 600px; padding:20% 5%; .content{ display: inline-block; padding:0; position: relative; h1{ font-size: 1.4rem; } h2{ font-size: 1.2rem; } .blueBut{ font-size:.9rem; padding: 5% 7%; } .moreInfos{ opacity: 1; position: relative; top:0; left:0; right:0; -webkit-transform: translateY(0%); transform: translateY(0%); .colWrapper{ .col4{ text-align: center; .circle{ float:none; margin:0 auto 1rem; width:20%; } } } } } &#home{ padding-top: 30%; } &#leistungen{ &::before{ opacity:.5; } &:hover{ .content{ h1{ opacity:1; } } } .content{ #moreLeistungen{ .colWrapper{ margin-top:2rem; } } } } &#infos{ padding:0; .infoBox{ height:auto; padding:20% 5%; &::before{ opacity: .5; } &:hover{ > div{ -webkit-transform: translatey(0%); transform: translatey(0%); } } > div{ top:auto; margin-top:0; h1{ font-size: 1.4rem; } .weitereInfos{ opacity:1; p{ font-size: .8rem; line-height: 1.5rem; } } } } } &#kosten{ &::before{ opacity:.5; } &:hover{ .content{ h1{ opacity:1; } } } .content{ #moreKosten{ .colWrapper{ margin-top:2rem; } .blueBut{ margin: 1rem 0; } } } } &#kontakt{ min-height: 0; height:auto; } } } }