/* Variables */ $total-width: 95%; $color-red: #cd1013; $color-background-mobile-menu: #f5f5f5; $color-background-mobile-menu-header: #e0e0e0; $color-hor-line: #a5a5a5; $gap-columns-persons: 25px; $left-menu-width: 180px; $color-vh-vorne: #ddcb55; $color-vh-mitte: #c98879; $color-vh-hinten: #0082c9; /* Mixins */ @mixin menu-style() { font-family: 'Open Sans Condensed', sans-serif; color: black; text-decoration: none; &.active, &:hover { color: $color-red; } } @mixin media-large { @media screen and (min-width: 700px) { @content; } } @mixin mouse-available { @media screen and (pointer: fine) { @content; } } /* main styling */ body { padding: 0; margin: 0; background-color: #ececec; font: 90% 'Open Sans', sans-serif; height: 100vh; } h1, h2, h3, h4, h5, h6 { color: $color-red; font-family: 'Droid Serif',serif; font-weight: normal; } h1 { font-size: 233%; margin-top: 0; } #wrapper { width: 100%; min-height: 100.5vh; max-width: 1280px; margin: auto; background-color: #fcfcfc; overflow: auto; .main { width: $total-width; display: flex; margin: auto; > .left-side { flex: auto 0 0; flex-direction: column; margin-right: 40px; display: none; width: $left-menu-width; @include media-large { display: flex; } .announcements { margin-top: 20px; background-color: #ececec; .entry { margin: 25px 0; padding: 0 15px; &:first-child { margin-top: 15px; } &:last-child { margin-bottom: 15px; } .time { font-weight: bold; } a { color: black; } } } } .left-menu { display: flex; flex-direction: column; > a { text-decoration: none; height: 35px; margin: 2px 0; display: flex; flex-direction: column; justify-content: center; padding: 0 15px; font: 1.5em 'Open Sans Condensed', sans-serif; color: black; background-color: #ececec; &.active, &:hover { background-color: $color-red; color: white; } } } #content { flex: 100% 0 1; text-align: justify; max-width: 100%; hyphens: auto; table { width: 100%; border-collapse: collapse; td, th { padding: 5px; border: none; text-align: left; } tr { background-color: #dedede; &:nth-of-type(2n) { background-color: #f7f7f7; } } thead > tr { background-color: $color-red; color: white; text-align: left; } } .calendar-manual { font-size: xx-small; @include media-large { font-size: small; } tr { height: 20px; &.first-min { border-top: solid lightgray 1px; } &:nth-of-type(n) { background-color: unset; } .time { vertical-align: top; } .time:last-of-type, .first-col-of-room { border-left: solid lightgray 1px; } .day-title { text-align: center; } } .calendar-block { position: relative; .calendar-block-entity { position: absolute; top: 0; left: 0; width: 100%; padding: 1.5px; box-sizing: border-box; &.height-1 { height: 20px; } &.height-2 { height: 40px; } &.height-3 { height: 60px; } &.height-4 { height: 80px; } &.height-5 { height: 100px; } &.height-6 { height: 120px; } &.height-7 { height: 140px; } &.height-8 { height: 160px; } .room-block { width: 100%; height: 100%; box-sizing: border-box; padding: 3px; overflow: hidden; } .room-vorne { background-color: var(--color-vhvorne); } .room-mitte { background-color: var(--color-vhmitte); } .room-hinten { background-color: var(--color-vhhinten); color: white; } } } } .float-right { float: right; margin: 7px 0 7px 15px; } a { color: black; &[href^="http"] , &.download { &::before { margin: 0 5px 0 0; top: 3px; position: relative; content: url('img/download.png'); } } } img { max-width: 100%; } h1, h2, h3, h4, h5, h6 { text-align: left; } .to-top { margin: 45px 0 0; } .disclaimer { font-size: 75%; } } } } #header { border-bottom: 2px solid rgba(173, 173, 173, 50%); margin: 0 auto 30px; width: 100%; > .logo-row { display: flex; justify-content: space-between; width: 100%; .logo { margin: 15px 30px 10px; img { max-width: 100%; } } .logo-vfl { margin: 12px 45px 0 0; img { max-width: 100%; } } } > .slider { width: calc(100% - 60px); // visibility: hidden; // height: 250px; display: none; @include media-large { display: flex; } padding: 0 10px; border-right: 20px solid $color-red; border-left: 20px solid $color-red; position: relative; > img { width: calc(100% - 20px); // display: block; position: absolute; z-index: 0; opacity: 1; &.animated { transition: opacity 2.5s ease-in-out; } &.hidden { opacity: 0; } &.placeholder { position: static; visibility: hidden; width: 100%; } } .dots { position: absolute; width: 95%; z-index: 1; left: 0; bottom: 10%; display: flex; justify-content: end; .dot { width: 10px; height: 10px; margin: 0 10px 0 0; border-radius: 5px; background-color: #eee; border: 1.5px solid #444; &.active { background-color: #444; border: 1.5px solid #ccc; } } } } > .nav { width: $total-width; height: 30px; margin: 5px auto 0; font: 1.5em 'Open Sans Condensed', sans-serif; display: none; @include media-large { display: block; } nav { display: flex; height: 100%; justify-content: flex-start; align-items: center; a { margin: 0 40px 0 0; // height: 100%; @include menu-style; } } } } #footer { width: 100%; margin: 30px auto 0; padding: 4px 10px 0; display: flex; justify-content: space-between; border-top: 1px solid $color-hor-line; box-sizing: border-box; .first-entry { font: 1em 'Open Sans Condensed', sans-serif; } .facebook { width: 20px; height: 20px; display: block; background-image: url("img/facebook.jpg"); } .meta-menu { max-width: 70%; > ul { padding: 0; margin: 0; display: flex; flex-wrap: wrap; font: 1.4em 'Open Sans Condensed', sans-serif; > li { list-style: none; margin-left: 1em; a { @include menu-style; } } } } } #overlay { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; display: flex; z-index: 10; &.hidden { display: none; } .background { width: 100%; height: 100%; position: absolute; z-index: -10; background-color: lightgrey; opacity: 0.5; } .spacer { flex: auto 1 0; } .dialog-column { flex: 0 1 1; display: flex; flex-direction: column; justify-content: center; .dialog { background-color: white; padding: 10px; flex: 30% 0 0; // height: 30%; img { max-width: 100%; } } } } .person-list { display: flex; flex-wrap: wrap; gap: $gap-columns-persons; margin: 0 0 $gap-columns-persons; } .person { width: 100%; @include media-large { width: calc(50% - #{$gap-columns-persons} / 2); } height: 80px; // margin: 10px 25px 10px 0; display: flex; > .image { flex: 60px 0 0; img { width: 100%; } } > .content { flex: 1px 1 0; margin-left: 10px; } > .content-vorstand { display: flex; flex-direction: column; justify-content: space-evenly; > .role { font-weight: bold; } > .name { img { margin: 0 10px 0 0; } } } } .news-blog { max-width: 100%; .blog-entry { max-width: 100%; .header { max-width: 100%; margin: 5px 0 10px; text-align: left; a { font-size: larger; } } .details { display: flex; // min-height: 240px; margin-right: 2px; flex-direction: column; @include media-large{ flex-direction: row; } .teaser-image { flex: auto 0 0; display: block; height: 190px; @include media-large(){ flex: 33% 1 0; } img { width: 90%; height: 100%; display: block; margin: 0 auto; object-fit: contain; object-position: left top; } } .right-side { flex: 66% 1 1; display: flex; flex-direction: column; .intro { padding-right: 40px; } .more { // float: right; margin-top: 20px; text-align: right; } } } } .pagination { display: flex; list-style: none; padding: 0; max-width: 400px; margin: auto; .page-item { flex: auto 1 0; margin: 5px; .page-link { display: block; text-align: center; width: 100%; height: 100%; padding: 5px 0; } } .disabled { visibility: hidden; } } } .mobile-menu { display: flex; flex-wrap: wrap; width: 100%; margin: 30px 0; padding: 30px 5% 0; box-sizing: border-box; @include media-large { display: none; } border-top: 1px solid $color-hor-line; .level-1 { width: 100%; a { background-color: $color-background-mobile-menu-header; } } .level-2 { width: 50%; a { background-color: $color-background-mobile-menu; } } .level-1, .level-2 { display: flex; padding: 3px; box-sizing: border-box; a { width: 100%; height: 100%; padding: 5px; box-sizing: border-box; @include menu-style; &.active { color: white; background-color: $color-red; } } } } .mobile-menu-link { display: block; border: 1px solid black; width: max-content; padding: 5px 75px 5px 15px; margin: 5px 0 5px 20px; @include menu-style; @include media-large { display: none; } } .announcement-list { .entry { margin: 0 30px; .time { font-weight: bold; margin-right: 10px; } } } .tsc-image { margin: 0 auto; width: fit-content; img { display: block; margin: 0 auto; } } .tsc-gallery { display: grid; place-items: center center; grid-template-columns: 1fr; @include media-large { &.cols-2 { grid-template-columns: 1fr 1fr; } &.cols-3 { grid-template-columns: 1fr 1fr 1fr; } &.cols-4 { grid-template-columns: 1fr 1fr 1fr 1fr; } } .tsc-gallery-img { margin: 5px 0; } } .youtube-video { max-width: 100%; } .internal-video { max-width: 100%; } .room { .image { max-width: 70%; } @include media-large { display: flex; align-items: start; .image { flex: 50% 0 1; } .address { margin-left: 10px; } p { margin: 0; } } } :root { --color-vhvorne: #{$color-vh-vorne}; --color-vhmitte: #{$color-vh-mitte}; --color-vhhinten: #{$color-vh-hinten}; } .calendar-color-legend { display: flex; flex-direction: row; margin: 10px; .vorne { background-color: var(--color-vhvorne); } .mitte { background-color: var(--color-vhmitte); } .hinten { background-color: var(--color-vhhinten); color: white; } .vorne, .mitte, .hinten { margin-right: 20px; padding: 5px 10px; } } .archive-short-links { display: flex; flex-flow: row wrap; padding: 0; li { display: block; padding: 5px; } } .archive-year-list { display: flex; margin: 5px 0; align-items: baseline; @include mouse-available { margin: 0; } .date { font-weight: bold; // height: 100%; } .title { margin: 0 0 0 10px; text-align: left; a { display: block; padding: 6.5px 0; @include mouse-available { padding: 3px 0; } } } } table.time { // width: 100%; display: flex; flex-direction: column; tr { display: flex; flex-direction: column; width: 100%; td:nth-child(1) { font-weight: bold; } } tr:first-child { display: none; } &.time-no-age { td:nth-child(3)::before { content: "Uhrzeit: "; } td:nth-child(4)::before { content: "Ort: "; } } &.time-age { td:nth-child(2)::before { content: "Jahrgang: "; } td:nth-child(4)::before { content: "Uhrzeit: "; } td:nth-child(5)::before { content: "Ort: "; } } @include media-large { display: table; tr { display: table-row; &:first-child { display: table-row; } } &.time-age, &.time-no-age { tr td:nth-child(n)::before { content: none; } } } } .turniermeldungen-group-list { .day { .date { font-weight: bold; margin: 10px 0 0; } .participation { margin: 0 0 0 2em; } } } .turnier-details { .title { font-weight: 600; } .turnier { font-weight: bold; .nummer { font-weight: normal; font-style: italic; } } .verein { margin: 20px 0 0; } .contact { font-style: italic; } } .press-articles { margin: 0 0 2em; .press-article { border-bottom: solid 1px $color-hor-line; margin: 0 0 3em; padding: 0 0 3em; h2 { margin-bottom: 5px; } &:nth-last-of-type(1) { border-bottom: none; padding: 0; margin: 0; } .press-img img { display: block; margin: 1em auto; } .metadata { span { display: block; &.date { font-weight: bold; } } } } } .iframe-generic { display: block; width: 100%; height: 800px; max-height: 75vh; } @font-face{ font-family: 'Open Sans Condensed'; font-style: normal; font-weight: 400; src: url("ttf/OpenSans_Condensed-Light.ttf") format('truetype'); } @font-face{ font-family: 'Droid Serif'; font-style: normal; font-weight: normal; src: url('ttf/DroidSerif.ttf') format('truetype') }