This commit is contained in:
Sebastian Frank 2022-06-22 16:02:46 +02:00
parent a35e2ab9f1
commit 30fe289199
41 changed files with 95 additions and 1922 deletions

Binary file not shown.

27
scripts/build-index.js Normal file
View File

@ -0,0 +1,27 @@
const fs = require("fs")
const path = require("path")
const dir = "."
function getTree(dir) {
const files = fs.readdirSync(dir)
return files
.filter(function (file) {
if (file.match(/^\./)) {
return false
}
return true
})
.map(function (file) {
const f = { name: file }
if (fs.statSync(dir + "/" + file).isDirectory()) {
f.isDir = true
f.elements = getTree(dir + "/" + file)
}
return f
})
}
const tree = getTree(dir)
console.log(JSON.stringify(tree, null, 4))

View File

@ -7,6 +7,7 @@
import Header from "./widgets/Header.svelte"
import Footer from "./widgets/Footer.svelte"
import Content from "./widgets/Content.svelte"
import Index from "./widgets/Index.svelte"
export let url = ""
@ -31,14 +32,21 @@
<Header />
<Router url="{url}">
<Route path="/" let:params>
<h1>Home</h1>
</Route>
<Route path="/*path" let:params>
<Content path="{params.path}" />
</Route>
</Router>
<div style="display: flex">
<div style="margin-right: 20px; background-color: #333333; color: white; padding: 10px;">
<Index />
</div>
<div>
<Router url="{url}">
<Route path="/" let:params>
<h1>Home</h1>
</Route>
<Route path="/*path" let:params>
<Content path="{params.path}" />
</Route>
</Router>
</div>
</div>
<Footer />

View File

@ -32,7 +32,7 @@
.use(remarkRehype, { allowDangerousHtml: true }) // Turn markdown syntax tree to HTML syntax tree, ignoring embedded HTML
.use(rehypeRaw) // *Parse* the raw HTML strings embedded in the tree
.use(rehypeStringify, { allowDangerousHtml: true }) // Serialize HTML syntax tree
.use(rehypeHighlight)
.use(rehypeHighlight, { ignoreMissing: true })
.process(t)
.then((file) => {
md = String(file)

View File

@ -0,0 +1,30 @@
<script lang="ts">
import { link } from "svelte-routing"
export let files
export let baseDir
console.log(baseDir)
console.log(files)
$: filesF = files?.filter((f) => f.name != "attachements").sort((a, b) => (a.name < b.name ? -1 : 1))
</script>
{#if filesF?.length}
<ul>
{#each filesF as f}
<li>
<a use:link href="{baseDir}/{f.isDir ? f.name + '/_index' : f.name.replace(/\.md$/, '')}">
{f.name.replace(/\.md$/, "")}
</a>
<svelte:self files="{f.elements}" baseDir="{baseDir}/{f.name}" />
</li>
{/each}
</ul>
{/if}
<style>
a {
color: white;
}
</style>

View File

@ -1,10 +1,2 @@
<script lang="ts">
</script>
<footer>
<div class="container">
<div class="row">
<div class="col-md-12"></div>
</div>
</div>
</footer>

View File

@ -1,17 +1,2 @@
<script lang="ts">
import { link } from "svelte-routing"
</script>
<header>
<div class="container">
<div class="row">
<div class="col-sm-12">
<div class="header-content">
<a href="/" use:link>My Notes</a>
<div class="header-content-right"></div>
</div>
</div>
</div>
</div>
</header>

View File

@ -0,0 +1,21 @@
<script lang="ts">
import FileList from "./FileList.svelte"
interface fileElement {
name: string
isDir?: boolean
elements?: fileElement[]
}
let tree: fileElement[]
fetch("/note/index.json")
.then((r) => r.json())
.then((j) => {
tree = j
})
</script>
<h3>INDEX</h3>
<FileList files="{tree}" baseDir="" />

View File

@ -1 +0,0 @@
@import "theme-2022/main";

View File

@ -1,39 +0,0 @@
article,
.article {
overflow-wrap: anywhere;
border: 1px dashed @on-background;
padding: 2px;
& ~ article,
& ~ .article {
margin-top: @space-md;
}
.article-title {
color: @primary;
font-size: 2rem;
line-height: 2.4rem;
}
.article-subtitle {
color: @secondary;
font-size: 1.4rem;
line-height: 1.8rem;
}
.article-link {
cursor: pointer;
text-decoration: underline;
}
}
.article-details {
&.default {
background: #000;
color: #fff;
}
&.news {
background: #fc0;
}
}

View File

@ -1,18 +0,0 @@
.audioToggle {
position: fixed;
right: 17px;
bottom: 17px;
width: 80px;
height: 80px;
border-radius: 100%;
padding: 15px;
background-color: @secondary;
z-index: 1000;
cursor: pointer;
}
audio {
position: absolute;
top: -9999px;
left: -9999px;
}

View File

@ -1,137 +0,0 @@
.carousel {
width: 100%;
height: 695px;
.carousel-slide {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-size: cover;
.container {
height: 100%;
}
img {
position: absolute;
right: 0;
bottom: 0;
@media (max-width: 1200px) {
display: none;
}
}
.content {
color: #fff;
text-shadow: 0 2px 10px #000;
font-weight: 700;
position: absolute;
top: 17rem;
left: 0;
@media (max-width: 768px) {
top: 10rem;
}
.headline {
font-family: "Caveat", sans-serif;
text-shadow: rgb(196, 37, 62) 6px 0px 0px,
rgb(196, 37, 62) 5.91686px 0.995377px 0px,
rgb(196, 37, 62) 5.66974px 1.96317px 0px,
rgb(196, 37, 62) 5.2655px 2.87655px 0px,
rgb(196, 37, 62) 4.71532px 3.71022px 0px,
rgb(196, 37, 62) 4.03447px 4.44106px 0px,
rgb(196, 37, 62) 3.24181px 5.04883px 0px,
rgb(196, 37, 62) 2.35931px 5.51667px 0px,
rgb(196, 37, 62) 1.41143px 5.83163px 0px,
rgb(196, 37, 62) 0.424423px 5.98497px 0px,
rgb(196, 37, 62) -0.574341px 5.97245px 0px,
rgb(196, 37, 62) -1.55719px 5.79441px 0px,
rgb(196, 37, 62) -2.49688px 5.45578px 0px,
rgb(196, 37, 62) -3.36738px 4.96596px 0px,
rgb(196, 37, 62) -4.14455px 4.33852px 0px,
rgb(196, 37, 62) -4.80686px 3.59083px 0px,
rgb(196, 37, 62) -5.33596px 2.74364px 0px,
rgb(196, 37, 62) -5.71718px 1.8204px 0px,
rgb(196, 37, 62) -5.93995px 0.84672px 0px,
rgb(196, 37, 62) -5.99811px -0.150428px 0px,
rgb(196, 37, 62) -5.89004px -1.14341px 0px,
rgb(196, 37, 62) -5.61874px -2.1047px 0px,
rgb(196, 37, 62) -5.19172px -3.00766px 0px,
rgb(196, 37, 62) -4.62082px -3.82727px 0px,
rgb(196, 37, 62) -3.92186px -4.54081px 0px,
rgb(196, 37, 62) -3.11421px -5.12852px 0px,
rgb(196, 37, 62) -2.22026px -5.57409px 0px,
rgb(196, 37, 62) -1.26477px -5.86518px 0px,
rgb(196, 37, 62) -0.274238px -5.99373px 0px,
rgb(196, 37, 62) 0.723898px -5.95617px 0px,
rgb(196, 37, 62) 1.70197px -5.75355px 0px,
rgb(196, 37, 62) 2.63288px -5.39147px 0px,
rgb(196, 37, 62) 3.49082px -4.87998px 0px,
rgb(196, 37, 62) 4.25202px -4.23324px 0px,
rgb(196, 37, 62) 4.89538px -3.46919px 0px,
rgb(196, 37, 62) 5.40307px -2.60899px 0px,
rgb(196, 37, 62) 5.76102px -1.67649px 0px,
rgb(196, 37, 62) 5.95932px -0.697531px 0px, 0 2px 20px #000;
line-height: 70px;
color: #fff;
font-weight: 700;
font-size: 96px;
@media (max-width: 768px) {
font-size: 72px;
}
}
.text {
font-size: 32px;
font-family: "Nunito", sans-serif;
margin-left: @space-md;
}
ul.text {
list-style-type: none;
padding-left: 30px;
li {
font-size: 32px;
font-family: "Nunito", sans-serif;
text-shadow: rgb(196, 37, 62) 3px 0px 0px,
rgb(196, 37, 62) 2.83487px 0.981584px 0px,
rgb(196, 37, 62) 2.35766px 1.85511px 0px,
rgb(196, 37, 62) 1.62091px 2.52441px 0px,
rgb(196, 37, 62) 0.705713px 2.91581px 0px,
rgb(196, 37, 62) -0.287171px 2.98622px 0px,
rgb(196, 37, 62) -1.24844px 2.72789px 0px,
rgb(196, 37, 62) -2.07227px 2.16926px 0px,
rgb(196, 37, 62) -2.66798px 1.37182px 0px,
rgb(196, 37, 62) -2.96998px 0.42336px 0px,
rgb(196, 37, 62) -2.94502px -0.571704px 0px,
rgb(196, 37, 62) -2.59586px -1.50383px 0px,
rgb(196, 37, 62) -1.96093px -2.27041px 0px,
rgb(196, 37, 62) -1.11013px -2.78704px 0px,
rgb(196, 37, 62) -0.137119px -2.99686px 0px,
rgb(196, 37, 62) 0.850987px -2.87677px 0px,
rgb(196, 37, 62) 1.74541px -2.43999px 0px,
rgb(196, 37, 62) 2.44769px -1.73459px 0px,
rgb(196, 37, 62) 2.88051px -0.838247px 0px,
0 2px 20px #000;
font-weight: 700;
&:before {
content: "»";
position: absolute;
left: -30px;
}
@media (max-width: 768px) {
font-size: 24px;
}
}
}
}
}
}

View File

@ -1,59 +0,0 @@
.contact-information {
margin-top: -120px;
min-height: 1060px;
background: url("../css/theme-2022/components/img/union.svg") top no-repeat;
background-size: cover;
& > .container {
padding-top: 10rem;
}
.appointmentOfficeHour {
@media (max-width: 768px) {
font-size: 0.87em;
margin-bottom: @space-sm;
}
strong {
display: inline-block;
min-width: 120px;
}
}
.meeting-information {
margin-top: @space-xl;
}
ul {
list-style-type: none;
padding-left: 40px;
width: 100%;
li {
line-height: 30px;
padding-left: 0px;
font-weight: 400;
width: 50%;
display: inline-block;
@media (max-width: 768px) {
width: 100%;
}
&:before {
content: url("../css/theme-2022/components/img/check-bold.svg");
font-weight: 400;
top: 1px;
left: -30px;
}
}
}
@media (max-width: 1050px) {
padding-bottom: 10rem;
}
@media (max-width: 768px) {
margin-bottom: -90px;
}
}

View File

@ -1,29 +0,0 @@
.top-of-content {
*[class^="col"] {
margin-bottom: @space-md;
}
display: flex;
justify-content: space-around;
align-items: stretch;
gap: @space-lg;
article {
width: 33%;
}
@media (max-width: 992px) {
flex-direction: column;
article {
width: 100%;
}
}
}
.wave-top {
height: 54px;
margin-top: -54px;
background-image: url("../css/theme/components/img/wave_header_top.png");
background-repeat: repeat-x;
}

View File

@ -1,64 +0,0 @@
.event {
border-radius: 10px;
box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
font-size: @font-size-default;
.event-header {
background: @primary;
color: @on-primary;
border-top-left-radius: 10px;
border-top-right-radius: 10px;
display: flex;
justify-content: flex-start;
align-items: center;
gap: @space-md;
padding: 5px 10px;
}
.event-content {
padding: @space-sm;
display: flex;
justify-content: flex-start;
align-items: flex-start;
gap: @space-lg;
flex-wrap: wrap;
background-color: #fff;
border-bottom-left-radius: 10px;
border-bottom-right-radius: 10px;
strong {
color: @secondary;
font-weight: 600;
}
img {
width: 300px;
border-radius: 5px;
}
.event-title {
color: @primary;
font-size: 20px;
font-weight: 600;
line-height: 22px;
}
.event-subtitle {
font-size: 20px;
}
@media (max-width: 992px) {
flex-direction: column;
img {
width: 100%;
}
}
}
&.sidebar {
.event-content {
gap: @space-md;
}
}
}

View File

@ -1,23 +0,0 @@
footer {
min-height: 70px;
margin-top: @space-md;
.copyright {
text-align: center;
margin: @space-md 0;
}
nav.footer {
display: flex;
justify-content: center;
gap: @space-md;
a {
color: @on-background;
&:hover {
text-decoration: underline;
}
}
}
}

View File

@ -1,132 +0,0 @@
form {
background: @surface;
color: @on-surface;
padding: @space-md;
border-radius: 10px;
box-shadow: 0 10px 40px 0 rgba(0, 0, 0, 0.1);
strong {
color: @primary;
font-weight: 700;
}
.titles {
flex-grow: 1;
.title,
.subTitle {
text-align: left;
color: @on-surface;
margin: 0;
}
}
.icon {
width: 80px;
height: 80px;
display: flex;
justify-content: center;
align-items: center;
flex-shrink: 0;
border-radius: 100%;
img {
width: 50%;
}
}
.collapse-icon {
cursor: pointer;
svg {
transition: @transition-default;
}
&.collapsed svg {
transform: rotate(-90deg);
}
}
input,
textarea,
.checkbox {
border: 1px solid transparent;
border-radius: 10px;
box-shadow: inset 0 0 10px 0 rgba(0, 0, 0, 0.1);
background: @surface;
color: @on-background;
padding: @space-sm @space-md;
width: 100%;
max-width: 100%;
transition: all 0.2s ease-in-out;
outline: none;
::placeholder {
color: @on-surface;
font-weight: 400;
}
:-ms-input-placeholder {
color: @on-surface;
font-weight: 400;
}
::-ms-input-placeholder {
color: @on-surface;
font-weight: 400;
}
&:focus {
border: 1px solid @primary;
color: @primary;
}
&[readonly] {
opacity: 0.5;
}
}
.checkbox {
padding: 0;
width: 60px;
height: 60px;
display: flex;
justify-content: center;
align-items: center;
color: @primary;
&:hover {
box-shadow: inset 0 0 10px 0 @primary;
}
}
textarea {
height: 200px;
}
button {
width: 100%;
background: @primary;
color: @on-primary;
padding: @space-xs @space-md;
border-radius: 10px;
border: 1px solid transparent;
transition: @transition-default;
font-weight: 700;
cursor: pointer;
&:hover {
border-color: @on-primary;
background-color: @primary;
color: @on-primary;
}
&[disabled] {
opacity: 0.5;
}
}
.error {
background: @error;
color: @on-error;
padding: @space-md;
}
}

View File

@ -1,77 +0,0 @@
html,
body {
background: @background;
color: @on-background;
font-size: @font-size-default;
font-weight: @font-weight-default;
line-height: @font-line-height-default;
font-family: "Nunito", sans-serif;
width: 100%;
height: 100%;
}
body {
overflow-x: hidden;
padding: @header-height + 60px 0 0 0;
@media (max-width: 768px) {
padding: @header-height-max-768 0 0 0;
}
}
// Scroll To Top
.scroll-to-top {
position: fixed;
z-index: 9999;
right: 5rem;
bottom: 5rem;
@media (max-width: 768px) {
right: 4rem;
bottom: 1rem;
}
.circle-top,
.circle-email,
.circle-contact {
width: 80px;
height: 80px;
border-radius: 100%;
background-color: @secondary;
display: flex;
justify-content: center;
align-items: center;
box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}
.circle-email {
width: 60px;
height: 60px;
background-color: @secondary;
position: absolute;
top: -20px;
right: -39px;
}
.circle-contact {
width: 60px;
height: 60px;
background-color: @secondary;
position: absolute;
top: 23px;
right: -53px;
}
}
// 404
.page-404 {
text-align: center;
margin-bottom: @space-xl;
.brand {
width: 400px;
margin: auto auto @space-xl auto;
}
}

View File

@ -1,192 +0,0 @@
// Settings
@container_width: 1200px;
@columns: 12;
@main_padding: 20px;
// Grid
.container {
margin: auto;
width: @container_width;
padding: 0 @main_padding;
@media (max-width: 576px) {
width: 90%;
}
@media (min-width: 576px) {
width: 540px;
}
@media (min-width: 768px) {
width: 720px;
}
@media (min-width: 992px) {
width: 960px;
}
@media (min-width: 1240px) {
width: 1200px;
}
@media (min-width: 1400px) {
width: 1320px;
}
}
// Mixins
.order(@val) {
order: @val;
-moz-order: @val;
-webkit-order: @val;
}
// Row / Col
.row {
display: flex;
display: -webkit-flex;
flex-wrap: wrap;
margin: 0px -@main_padding;
&.centerrow {
each(range(@columns), {
.col-@{value}, .col-xs-@{value}, .col-sm-@{value}, .col-md-@{value}, .col-lg-@{value} {
align-items: center;
justify-content: center;
}
});
}
&.fullwidth {
margin: 0px;
}
.col {
flex: none;
padding: 0px @main_padding;
width: 100%;
.right {
text-align: right;
justify-content: flex-end;
}
}
& ~ .row:not(.nospace) {
margin-top: @space-lg;
}
}
each(range(@columns), {
.col-@{value}, .col-xs-@{value}, .col-sm-@{value}, .col-md-@{value}, .col-lg-@{value} {
flex:none;
position:relative;
min-height:1px;
padding:0px @main_padding;
width:100%;
display:flex;
display:-webkit-flex;
flex-direction: column;
flex-wrap:wrap;
&.right {
display: flex;
justify-content: flex-end;
& > * {
margin-left: auto;
}
}
}
.order-@{value} {
.order(@value);
}
});
// Set Column Width on breakpoints
.loop (@val) {
each(range(@columns), {
.col-@{val}-@{value} {
width: (100% / @columns * @value);
}
.order-@{val}-@{value} {
.order(@value);
}
});
}
.col-0 {
display: none;
}
each(range(@columns), {
.col-@{value} {
width: (100% / @columns * @value);
}
.order-@{value} {
.order(@value);
}
});
@media screen and (min-width: 500px) {
.row .col {
width: 50%;
flex: none;
}
.row .col-xs-0 {
display: none;
}
.loop(xs);
}
@media screen and (min-width: 768px) {
.row .col {
width: 33.3333333%;
flex: none;
}
.row .col-sm-0 {
display: none;
}
.loop(sm);
}
@media screen and (min-width: 1050px) {
.row .col-md-0 {
display: none;
}
.loop(md);
}
@media screen and (min-width: 1250px) {
.row .col {
flex: 1;
width: auto;
}
.row .col-lg-0 {
display: none;
}
.loop(lg);
}
// Hidden
@media screen and (max-width: 576px) {
.hidden-xs {
display: none !important;
}
}
@media screen and (max-width: 768px) {
.hidden-sm {
display: none !important;
}
}
@media screen and (max-width: 992px) {
.hidden-md {
display: none !important;
}
}
@media screen and (max-width: 1200px) {
.hidden-lg {
display: none !important;
}
}
@media screen and (max-width: 1400px) {
.hidden-xl {
display: none !important;
}
}

View File

@ -1,40 +0,0 @@
header {
position: fixed;
width: 100%;
top: 0;
left: 0;
right: 0;
z-index: 1000;
transition: all 1s ease-in-out;
height: @header-height;
background: rgba(255, 255, 255, 0.9);
z-index: 9999;
@media (max-width: 992px) {
background-color: @surface;
}
@media (max-width: 768px) {
height: @header-height-max-768;
}
.header-content {
display: flex;
justify-content: space-between;
align-items: flex-start;
.header-content-right {
text-align: right;
}
}
.brand {
display: block;
margin: @space-md 0;
max-width: 300px;
@media (max-width: 992px) {
width: 80%;
}
}
}

View File

@ -1,50 +0,0 @@
.history {
font-size: 24px;
font-weight: 700;
.history-item {
min-height: 80px;
.date {
width: 80px;
height: 80px;
border-radius: 100%;
background-color: @secondary;
color: @on-secondary;
display: flex;
justify-content: center;
align-items: center;
flex-shrink: 0;
position: absolute;
top: -21px;
left: calc(50% - 40px);
}
.text {
width: 41%;
}
&:nth-child(odd) {
.text {
margin-left: auto;
}
}
& ~ .history-item {
margin-top: @space-md;
}
@media (max-width: 900px) {
.date {
left: 0;
}
&:nth-child(odd),
&:nth-child(even) {
.text {
width: 100%;
padding-left: 100px;
font-size: 0.7em;
}
}
}
}
}

View File

@ -1,9 +0,0 @@
iframe {
width: 100%;
max-width: 100%;
border: 0;
&#googleMaps {
height: 720px;
}
}

View File

@ -1,3 +0,0 @@
<svg width="24" height="25" viewBox="0 0 24 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="m9 20.92-6.21-6.21 2.83-2.83L9 15.27l9.88-9.89 2.83 2.83L9 20.92z" fill="#72EFDD"/>
</svg>

Before

Width:  |  Height:  |  Size: 200 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 B

View File

@ -1,39 +0,0 @@
<svg width="1920" height="1003" viewBox="0 0 1920 1003" fill="none" xmlns="http://www.w3.org/2000/svg">
<g opacity=".5" clip-rule="evenodd">
<path fill-rule="evenodd" d="M0 631.5s14.5 8.71 80 18.5 240 9.424 400-9.79 320-45.531 480-16.71c160 28.821 320 88.786 480 108s320-88.465 400-136.5l80-72.432V28H0v603.5z" fill="url(#s8guwl92ja)"/>
<path fill-rule="evenodd" d="M0 631.5s14.5 8.71 80 18.5 240 9.424 400-9.79 320-45.531 480-16.71c160 28.821 320 88.786 480 108s320-88.465 400-136.5l80-72.432V28H0v603.5z" fill="url(#d44dn5xirb)"/>
</g>
<path fill-rule="evenodd" clip-rule="evenodd" d="m0 553.568 80 19.214c80 19.214 240 57.642 400 38.428 160-19.214 320-28.821 480 0s320 36.07 480 55.284 320-76.856 400-124.891l80-48.035V-1H0v554.568z" fill="url(#dzvpq96n6c)"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="m0 553.568 80 19.214c80 19.214 240 57.642 400 38.428 160-19.214 320-28.821 480 0s320 36.07 480 55.284 320-76.856 400-124.891l80-48.035V-1H0v554.568z" fill="url(#qmmqrfmedd)"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="m0 553.568 80 19.214c80 19.214 240 57.642 400 38.428 160-19.214 320-28.821 480 0s320 36.07 480 55.284 320-76.856 400-124.891l80-48.035V-1H0v554.568z" fill="url(#m8la3ielte)"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="m0 553.568 80 19.214c80 19.214 240 57.642 400 38.428 160-19.214 320-28.821 480 0s320 36.07 480 55.284 320-76.856 400-124.891l80-48.035V-1H0v554.568z" fill="url(#eyw4yzjlhf)"/>
<g opacity=".7" stroke="#72EFDD" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round" stroke-dasharray="0.3 0.3">
<path opacity=".7" d="m1135.97 730.546 423.2-439.715M1139.36 766.411l449.79-468.108M1152.96 791.375l462.52-481.691M1172.07 810.457l472.86-492.746M1186.97 834.023l487.67-508.552M1204.48 854.829l501.7-523.534M1221.84 875.77l508.48-530.757M1239.24 896.672l520.62-543.709M1257.19 917l526.69-550.204M1273.01 939.569l530.9-554.668M1290.99 959.877l535.48-559.572M1310.07 978.979l538.63-562.925M1326.14 1001.32l519.61-542.638"/>
</g>
<defs>
<radialGradient id="s8guwl92ja" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(960 0 0 203 960 495)">
<stop stop-color="#FFFEFF"/>
<stop offset="1" stop-color="#D7FFFE"/>
</radialGradient>
<radialGradient id="d44dn5xirb" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="rotate(-165.326 550.678 196.962) scale(675.018 3192.21)">
<stop stop-color="#BCFFFD"/>
<stop offset="1" stop-color="#fff" stop-opacity="0"/>
</radialGradient>
<radialGradient id="dzvpq96n6c" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(960 0 0 203 960 466)">
<stop stop-color="#FFFEFF"/>
<stop offset="1" stop-color="#D7FFFE"/>
</radialGradient>
<radialGradient id="qmmqrfmedd" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="rotate(-165.326 548.81 182.462) scale(675.018 3192.21)">
<stop stop-color="#BCFFFD"/>
<stop offset="1" stop-color="#fff" stop-opacity="0"/>
</radialGradient>
<radialGradient id="m8la3ielte" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(816.00191 594.50235 -1703.6414 2338.38377 494.5 132)">
<stop stop-color="#fff"/>
<stop offset="1" stop-color="#fff" stop-opacity="0"/>
</radialGradient>
<linearGradient id="eyw4yzjlhf" x1="960" y1="-1" x2="960" y2="669" gradientUnits="userSpaceOnUse">
<stop offset=".083" stop-color="#fff"/>
<stop offset=".333" stop-color="#fff" stop-opacity="0"/>
</linearGradient>
</defs>
</svg>

Before

Width:  |  Height:  |  Size: 3.7 KiB

View File

@ -1,19 +0,0 @@
<svg viewBox="0 0 1920 1060" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M80 20.91 0 0v1017.38h80c80 0 240 0 400-6.97 53.333-2.32 106.667-5.42 160-8.52 106.667-6.195 213.333-12.39 320-12.39 160 0 320 13.94 480 27.88l480 41.82V62.728l-80 6.97c-80 6.97-240 20.909-400 13.94-64-2.789-128-8.922-192-15.055-96-9.2-192-18.4-288-16.31-72 1.569-144 9.488-216 17.407-88 9.68-176 19.359-264 17.442C320 83.637 160 41.82 80 20.91z" fill="url(#9fz5hy4h1a)"/>
<path d="M80 20.91 0 0v1017.38h80c80 0 240 0 400-6.97 53.333-2.32 106.667-5.42 160-8.52 106.667-6.195 213.333-12.39 320-12.39 160 0 320 13.94 480 27.88l480 41.82V62.728l-80 6.97c-80 6.97-240 20.909-400 13.94-64-2.789-128-8.922-192-15.055-96-9.2-192-18.4-288-16.31-72 1.569-144 9.488-216 17.407-88 9.68-176 19.359-264 17.442C320 83.637 160 41.82 80 20.91z" fill="url(#e1z5hwatsb)"/>
<path d="M80 20.91 0 0v1017.38h80c80 0 240 0 400-6.97 53.333-2.32 106.667-5.42 160-8.52 106.667-6.195 213.333-12.39 320-12.39 160 0 320 13.94 480 27.88l480 41.82V62.728l-80 6.97c-80 6.97-240 20.909-400 13.94-64-2.789-128-8.922-192-15.055-96-9.2-192-18.4-288-16.31-72 1.569-144 9.488-216 17.407-88 9.68-176 19.359-264 17.442C320 83.637 160 41.82 80 20.91z" fill="url(#nign7co5vc)"/>
<defs>
<radialGradient id="9fz5hy4h1a" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(960 0 0 212.392 960 488.607)">
<stop stop-color="#FFFEFF"/>
<stop offset="1" stop-color="#D7FFFE"/>
</radialGradient>
<radialGradient id="e1z5hwatsb" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(-653.00038 -178.91022 879.8803 -3211.45532 1033.5 522.084)">
<stop stop-color="#BCFFFD"/>
<stop offset="1" stop-color="#fff" stop-opacity="0"/>
</radialGradient>
<radialGradient id="nign7co5vc" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(816.0031 622.01048 -1805.66361 2368.81393 494.5 139.154)">
<stop stop-color="#fff"/>
<stop offset="1" stop-color="#fff" stop-opacity="0"/>
</radialGradient>
</defs>
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -1,23 +0,0 @@
.language-chooser {
display: flex;
justify-content: flex-end;
align-items: center;
margin: @space-xs;
.lang {
border: 1px solid @secondary;
padding: 0 @space-xs;
cursor: pointer;
&:hover {
background: @primary;
color: @on-primary;
}
&.active {
background: @primary;
color: @on-primary;
font-weight: 700;
}
}
}

View File

@ -1,287 +0,0 @@
@space-xs: 0.6rem;
@space-sm: 1rem;
@space-md: 1.6rem;
@space-lg: 2.5rem;
@space-xl: 4rem;
.layout {
display: flex;
flex-direction: row;
&.layout-nowrap {
white-space: nowrap;
}
&.layout-action {
cursor: pointer;
}
& > *:not([type="checkbox"]):not([type="radio"]) {
max-width: 100%;
}
&.layout-gap-xs {
gap: @space-xs;
}
&.layout-gap-sm {
gap: @space-sm;
}
&.layout-gap-md {
gap: @space-md;
}
&.layout-gap-lg {
gap: @space-lg;
}
&.layout-gap-xl {
gap: @space-xl;
}
&.layout-vertical {
flex-direction: column;
}
&.layout-stretch {
flex-grow: 1;
}
&.layout-wrap {
flex-wrap: wrap;
& > .layout {
flex-grow: 1;
}
}
&.justify-content-start {
justify-content: start;
}
&.justify-content-center {
justify-content: center;
}
&.justify-content-space-between {
justify-content: space-between;
}
&.justify-content-space-around {
justify-content: space-around;
}
&.justify-content-end {
justify-content: end;
}
&.align-items-start {
align-items: start;
}
&.align-items-center {
align-items: center;
}
&.align-items-end {
align-items: end;
}
&.align-items-stretch {
align-items: stretch;
}
&.align-self-start {
align-self: start;
@media (max-width: 768px) {
&:not(.layout-nowrap) {
flex-direction: column;
}
}
}
&.align-self-center {
align-self: center;
}
&.align-self-end {
align-self: end;
}
&.align-self-stretch {
align-self: stretch;
}
.layout-scrollable {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
overflow-y: auto;
}
}
.p-xs {
padding: @space-xs;
}
.p-sm {
padding: @space-sm;
}
.p-md {
padding: @space-md;
}
.p-lg {
padding: @space-lg;
}
.p-xl {
padding: @space-xl;
}
.pt-xs {
padding-top: @space-xs;
}
.pr-xs {
padding-right: @space-xs;
}
.pb-xs {
padding-bottom: @space-xs;
}
.pl-xs {
padding-left: @space-xs;
}
.pt-sm {
padding-top: @space-sm;
}
.pr-sm {
padding-right: @space-sm;
}
.pb-sm {
padding-bottom: @space-sm;
}
.pl-sm {
padding-left: @space-sm;
}
.pt-md {
padding-top: @space-md;
}
.pr-md {
padding-right: @space-md;
}
.pb-md {
padding-bottom: @space-md;
}
.pl-md {
padding-left: @space-md;
}
.pt-lg {
padding-top: @space-lg;
}
.pr-lg {
padding-right: @space-lg;
}
.pb-lg {
padding-bottom: @space-lg;
}
.pl-lg {
padding-left: @space-lg;
}
.pt-xl {
padding-top: @space-xl;
}
.pr-xl {
padding-right: @space-xl;
}
.pb-xl {
padding-bottom: @space-xl;
}
.pl-xl {
padding-left: @space-xl;
}
.m-xs {
margin: @space-xs;
}
.m-sm {
margin: @space-sm;
}
.m-md {
margin: @space-md;
}
.m-lg {
margin: @space-lg;
}
.m-xl {
margin: @space-xl;
}
.mt-xs {
margin-top: @space-xs;
}
.mr-xs {
margin-right: @space-xs;
}
.mb-xs {
margin-bottom: @space-xs;
}
.ml-xs {
margin-left: @space-xs;
}
.mt-sm {
margin-top: @space-sm;
}
.mr-sm {
margin-right: @space-sm;
}
.mb-sm {
margin-bottom: @space-sm;
}
.ml-sm {
margin-left: @space-sm;
}
.mt-md {
margin-top: @space-md;
}
.mr-md {
margin-right: @space-md;
}
.mb-md {
margin-bottom: @space-md;
}
.ml-md {
margin-left: @space-md;
}
.mt-lg {
margin-top: @space-lg;
}
.mr-lg {
margin-right: @space-lg;
}
.mb-lg {
margin-bottom: @space-lg;
}
.ml-lg {
margin-left: @space-lg;
}
.mt-xl {
margin-top: @space-xl;
}
.mr-xl {
margin-right: @space-xl;
}
.mb-xl {
margin-bottom: @space-xl;
}
.ml-xl {
margin-left: @space-xl;
}

View File

@ -1,151 +0,0 @@
// NAVIGATION - GENERAL
nav {
@media (max-width: 992px) {
display: none;
}
&.mobile {
display: none;
}
ul {
li {
@media (max-width: 768px) {
display: block;
width: 100%;
}
}
}
}
.navToggle {
display: none;
cursor: pointer;
width: 32px;
height: 32px;
align-self: center;
@media (max-width: 992px) {
display: block;
}
}
// HEADER
header {
nav {
list-style-type: none;
margin-top: @space-md;
display: flex;
justify-content: flex-end;
align-items: center;
gap: @space-md;
@media (max-width: 992px) {
display: none;
}
a {
&.active {
color: @primary;
}
}
& > * {
text-decoration: none;
transition: @transition-default;
font-weight: 500;
&:hover {
color: @primary;
}
}
}
.nav-mobile-toggle {
display: none;
cursor: pointer;
margin: @space-md 0 0 auto;
@media (max-width: 992px) {
display: block;
}
}
nav.main-mobile {
display: none;
position: fixed;
top: @header-height;
left: 0;
right: 0;
bottom: 0;
background-color: @surface;
z-index: 9999;
margin: 0;
overflow-y: auto;
@media (max-width: 768px) {
top: @header-height-max-768;
}
&.show {
display: flex;
flex-direction: column;
justify-content: flex-start;
align-items: center;
}
.bg-image {
position: absolute;
left: 0;
top: 0;
}
.nav-item {
align-self: center;
display: block;
text-align: center;
color: @primary;
font-size: 18px;
font-weight: 700;
a {
transition: @transition-default;
padding: @space-xs;
&:hover {
color: @secondary;
}
&.tel-box {
padding: 0 @space-md 0 0;
margin-bottom: @space-md;
color: @primary;
}
}
}
}
}
// FOOTER
footer {
nav.footer {
display: flex;
justify-content: center;
gap: @space-md;
a {
color: @on-background;
&:hover {
text-decoration: underline;
}
&.active {
color: @primary;
}
}
}
}

View File

@ -1,19 +0,0 @@
.news {
article {
background: @surface;
color: @on-surface;
padding: @space-sm @space-md;
border-radius: 10px;
box-shadow: 0 10px 40px 0 rgba(0, 0, 0, 0.1);
margin-bottom: @space-lg;
@media (max-width: 768px) {
text-align: center;
}
.title {
font-weight: 700;
margin-bottom: @space-xs;
}
}
}

View File

@ -1,12 +0,0 @@
.promotion-image-wave-top,
.promotion-image-wave-bottom {
z-index: 2;
width: 100%;
}
.promotion-image {
z-index: 0;
margin-top: -56px;
margin-bottom: -68px;
width: 100%;
}

View File

@ -1,7 +0,0 @@
section,
.section {
& ~ section,
& ~ .section {
margin-top: 4rem;
}
}

View File

@ -1,52 +0,0 @@
.services {
article {
font-weight: 700;
display: flex;
align-items: flex-start;
gap: @space-sm;
margin-bottom: @space-xs;
padding: @space-sm @space-md;
border-radius: 10px;
cursor: pointer;
&:hover {
background: @surface;
color: @on-surface;
box-shadow: 0 10px 40px 0 rgba(0, 0, 0, 0.1);
}
.icon {
width: 50px;
height: 50px;
border-radius: 100%;
background-color: @secondary;
display: flex;
justify-content: center;
align-items: center;
flex-shrink: 0;
img {
height: 32px;
margin-top: 2px;
}
}
.title {
font-size: 24px;
font-weight: 700;
@media (max-width: 768px) {
font-size: 20px;
}
}
@media (max-width: 768px) {
padding: 0;
&:hover {
background: transparent;
box-shadow: none;
}
}
}
}

View File

@ -1,42 +0,0 @@
.sidebar {
.contact-info {
color: @primary;
font-size: 18px;
font-weight: 600;
}
.today {
padding: 5px 20px;
border-radius: 25px;
border: solid 3px #000;
font-weight: 700;
}
.lastPageUpdate {
text-align: center;
.lastPageUpdate-date {
font-weight: 700;
font-size: 18px;
margin-top: @space-xs;
}
}
.visitor-counter {
h3 {
margin-bottom: @space-xs;
}
table {
width: 100% !important;
max-width: 100% !important;
display: block !important;
td {
width: 100%;
font-family: "Nunito", sans-serif;
font-size: @font-size-default;
line-height: auto;
padding: @space-xs 0;
}
}
}
}

View File

@ -1,79 +0,0 @@
.specials {
article {
background: @surface;
color: @on-surface;
padding: @space-md;
border-radius: 10px;
box-shadow: 0 10px 40px 0 rgba(0, 0, 0, 0.1);
margin-bottom: @space-lg;
font-weight: 700;
display: flex;
justify-content: flex-start;
align-items: center;
gap: @space-md;
@media (max-width: 768px) {
flex-direction: column;
text-align: center;
}
.icon {
width: 80px;
height: 80px;
display: flex;
justify-content: center;
align-items: center;
flex-shrink: 0;
@media (max-width: 768px) {
width: 50px;
height: 50px;
}
img {
width: 100%;
}
}
.title {
margin-bottom: @space-xs;
font-size: 24px;
line-height: 1.3;
@media (max-width: 768px) {
font-size: 20px;
}
}
&.hovered {
display: none;
@media (min-width: 768px) {
display: flex;
position: fixed;
top: 40%;
left: 30%;
right: 30%;
z-index: 999;
box-shadow: inset 0 0 2px 1px white, 0 10px 40px 0 rgba(0, 0, 0, 0.1), 0 10px 40px 0 rgba(0, 0, 0, 0.1);
background: linear-gradient(
90deg,
rgba(238, 254, 255, 1) 0%,
rgba(255, 254, 255, 1) 35%,
rgba(215, 255, 254, 1) 100%
),
radial-gradient(88.73% 230.98% at 25.76% 13.14%, #ffffff 0%, rgba(255, 255, 255, 0) 100%),
radial-gradient(50% 20.05% at 50% 46.13%, #fffeff 0%, #d7fffe 100%);
}
}
}
.row:nth-child(2) > *:nth-child(2) > article:first-child {
margin-top: @space-xl;
@media (max-width: 1050px) {
margin-top: 0;
}
}
}

View File

@ -1,50 +0,0 @@
.top-section {
height: 1003px;
margin-bottom: -28rem;
@media (max-width: 1050px) {
margin-bottom: 0rem;
}
.text {
margin-top: @space-xl;
strong {
color: @secondary;
}
}
.top-section-bg {
position: absolute;
top: 0;
left: 0;
width: 100%;
@media (max-width: 768px) {
height: 64rem;
object-fit: cover;
}
}
.circles {
position: absolute;
top: -151px;
left: -97px;
min-width: 986px;
@media (max-width: 1049px) {
top: -151px;
left: -97px;
}
}
.circles-image {
position: absolute;
top: 0;
left: 70px;
min-width: 550px;
@media (max-width: 1240px) {
min-width: 652px;
}
}
}

View File

@ -1,51 +0,0 @@
// Headlines
h1,
h2,
h3,
h4,
h5,
h6 {
color: @primary;
font-weight: 700;
@media (max-width: 768px) {
text-align: center;
}
}
h1 {
font-size: 48px;
margin-bottom: @space-md;
line-height: @space-xl;
@media (max-width: 768px) {
font-size: 32px;
}
}
h2 {
font-size: 48px;
margin-bottom: @space-md;
line-height: @space-xl;
@media (max-width: 768px) {
font-size: 28px;
}
}
h3 {
font-size: 24px;
margin-bottom: @space-sm;
@media (max-width: 768px) {
font-size: 18px;
}
}
// Link
a {
text-decoration: none;
color: @on-background;
}

View File

@ -1,52 +0,0 @@
// Font - NUNITO
@font-face {
font-family: "Nunito";
font-style: normal;
font-weight: 300;
src: url("../fonts/nunito/nunito-v22-latin-300.woff2") format("woff2");
}
@font-face {
font-family: "Nunito";
font-style: normal;
font-weight: 400;
src: url("../fonts/nunito/nunito-v22-latin-regular.woff2") format("woff2");
}
@font-face {
font-family: "Nunito";
font-style: normal;
font-weight: 600;
src: url("../fonts/nunito/nunito-v22-latin-600.woff2") format("woff2");
}
@font-face {
font-family: "Nunito";
font-style: italic;
font-weight: 700;
src: url("../fonts/nunito/nunito-v22-latin-700italic.woff2") format("woff2");
}
// Font - CAVEAT
@font-face {
font-family: "Caveat";
font-style: normal;
font-weight: 400;
src: url("../fonts/caveat/caveat-v14-latin-regular.woff2") format("woff2");
}
@font-face {
font-family: "Caveat";
font-style: normal;
font-weight: 600;
src: url("../fonts/caveat/caveat-v14-latin-600.woff2") format("woff2");
}
@font-face {
font-family: "Caveat";
font-style: normal;
font-weight: 700;
src: url("../fonts/caveat/caveat-v14-latin-700.woff2") format("woff2");
}

View File

@ -1,56 +0,0 @@
// Variables
@background: #fff;
@on-background: #575756;
@primary: #ff0000;
@on-primary: #fff;
@secondary: #4e5d64;
@on-secondary: #ffffff;
@surface: #fff;
@on-surface: #555555;
@error: #eebdbd;
@on-error: #eb5757;
@font-size-default: 14px;
@font-weight-default: 400;
@font-line-height-default: 1.6;
@radius-default: 50px;
@transition-default: all 0.2s ease-in-out;
// Header
@header-height: 140px;
@header-height-max-768: 100px;
// CSS Definitions
@import "fonts";
@import "reset";
@import "components/general";
@import "components/grid";
@import "components/typo";
@import "components/layout";
@import "components/section";
@import "components/header";
@import "components/footer";
@import "components/navigation";
@import "components/news";
@import "components/services";
@import "components/specials";
@import "components/iframes";
@import "components/contact-information";
@import "components/promotion-image";
@import "components/history";
@import "components/top-section";
@import "components/forms";
@import "components/language-chooser";
@import "components/article";
@import "components/cc-bar";

View File

@ -1,78 +0,0 @@
* {
position: relative;
}
/* Box sizing rules */
*,
*::before,
*::after {
box-sizing: border-box;
}
/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
margin: 0;
}
/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role="list"],
ol[role="list"] {
list-style: none;
}
/* Set core root defaults */
html:focus-within {
scroll-behavior: smooth;
}
/* Set core body defaults */
body {
min-height: 100vh;
text-rendering: optimizeSpeed;
line-height: 1.5;
}
/* A elements that don't have a class get default styles */
a:not([class]) {
text-decoration-skip-ink: auto;
}
/* Make images easier to work with */
img,
picture {
width: 100%;
max-width: 100%;
display: block;
}
/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
font: inherit;
}
/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
html:focus-within {
scroll-behavior: auto;
}
*,
*::before,
*::after {
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.01ms !important;
scroll-behavior: auto !important;
}
}