Edit folder structure and webpack configuration
This commit is contained in:
parent
6a754806c6
commit
d48d295bf0
24 changed files with 14 additions and 15 deletions
316
assets/css/main.scss
Normal file
316
assets/css/main.scss
Normal file
|
@ -0,0 +1,316 @@
|
|||
@use 'utils/minireset';
|
||||
@use '@splidejs/splide/dist/css/splide-core.min';
|
||||
@use 'partials/fonts';
|
||||
@use 'partials/variables' as *;
|
||||
@use 'partials/animations';
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// GENERALITIES
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// Fonts and colors
|
||||
|
||||
body {
|
||||
font-family: var(--text-font-family);
|
||||
font-size: var(--text-font-size);
|
||||
line-height: var(--text-line-height);
|
||||
color: var(--black);
|
||||
background-color: var(--feldgrau);
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-family: var(--title-font-family);
|
||||
font-size: var(--h1-font-size);
|
||||
line-height: var(--h1-line-height);
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-family: var(--text-font-family);
|
||||
font-size: var(--h2-font-size);
|
||||
line-height: var(--h2-line-height);
|
||||
margin: 0 0 4rem 0;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-family: var(--text-font-family);
|
||||
font-size: var(--h3-font-size);
|
||||
line-height: var(--h3-line-height);
|
||||
margin: 2rem 0 1rem 0;
|
||||
}
|
||||
|
||||
p {
|
||||
text-align: justify;
|
||||
}
|
||||
|
||||
strong {
|
||||
font-weight: var(--bold-font-weight);
|
||||
}
|
||||
|
||||
em {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
@media screen and (min-width: $desktop-media-query) {
|
||||
|
||||
.body--white-background {
|
||||
background-color: var(--white);
|
||||
}
|
||||
}
|
||||
|
||||
// Link style
|
||||
|
||||
a {
|
||||
color: var(--black);
|
||||
text-decoration: none;
|
||||
transition: text-decoration 200ms ease-in-out;
|
||||
|
||||
&:hover,
|
||||
&:focus,
|
||||
&:active {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
&:focus-visible {
|
||||
outline: 1px dashed var(--black);
|
||||
outline-offset: 2px;
|
||||
animation: expand-outline 200ms ease-in-out;
|
||||
}
|
||||
}
|
||||
|
||||
// General layout
|
||||
|
||||
body {
|
||||
min-height: 100vh;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
@media screen and (min-width: $desktop-media-query) {
|
||||
|
||||
body {
|
||||
overflow-y: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// HEADER
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// Logo
|
||||
|
||||
.logo {
|
||||
width: 100%;
|
||||
padding: var(--logo-padding);
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
|
||||
&--fixed-center {
|
||||
z-index: 2;
|
||||
width: auto;
|
||||
padding: 0;
|
||||
position: fixed;
|
||||
top: 1rem;
|
||||
right: calc(50vw - (var(--logo-width) / 2));
|
||||
display: block;
|
||||
}
|
||||
|
||||
.logo__link {
|
||||
width: var(--logo-width);
|
||||
height: var(--logo-height);
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.logo__icon {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
|
||||
&--black {
|
||||
stroke: var(--black);
|
||||
transition: stroke 400ms ease-in-out;
|
||||
}
|
||||
|
||||
&--white {
|
||||
stroke: var(--white);
|
||||
transition: stroke 400ms ease-in-out;
|
||||
}
|
||||
|
||||
&--rotate-horizontal-bottom {
|
||||
animation: rotate-horizontal-bottom 800ms ease-in-out infinite;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: $desktop-media-query) {
|
||||
|
||||
.logo {
|
||||
|
||||
&--fixed-right {
|
||||
z-index: 2;
|
||||
width: auto;
|
||||
padding: 0;
|
||||
position: fixed;
|
||||
top: 1rem;
|
||||
right: 1.5rem;
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Sidebar
|
||||
|
||||
.sidebar {
|
||||
width: 100%;
|
||||
padding: var(--sidebar-padding);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
align-items: flex-start;
|
||||
background-color: transparent;
|
||||
transition: background-color 400ms ease-in-out;
|
||||
|
||||
.sidebar__nav {
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.sidebar__nav-item {
|
||||
|
||||
+ .sidebar__nav-item {
|
||||
margin: 0.5rem 0 0 0;
|
||||
}
|
||||
}
|
||||
|
||||
.sidebar__nav-link {
|
||||
display: inline-block;
|
||||
max-width: 100%;
|
||||
overflow-x: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
color: var(--black);
|
||||
transition: color 400ms ease-in-out;
|
||||
}
|
||||
|
||||
.sidebar__social {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
margin: 1rem 0 0 0;
|
||||
}
|
||||
|
||||
.sidebar__social-link {
|
||||
width: var(--icon-size);
|
||||
height: var(--icon-size);
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
+ .sidebar__social-link {
|
||||
margin: 0 0 0 1rem;
|
||||
}
|
||||
}
|
||||
|
||||
.sidebar__instagram-icon,
|
||||
.sidebar__email-icon {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
fill: var(--black);
|
||||
transition: fill 400ms ease-in-out;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: $desktop-media-query) {
|
||||
|
||||
.sidebar {
|
||||
|
||||
&--fixed {
|
||||
z-index: 1;
|
||||
overflow-y: auto;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
&--slimmed {
|
||||
width: 15%;
|
||||
min-width: 15rem;
|
||||
|
||||
.sidebar__nav-link {
|
||||
color: var(--transparent-black);
|
||||
}
|
||||
|
||||
.sidebar__instagram-icon,
|
||||
.sidebar__email-icon {
|
||||
fill: var(--transparent-black);
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: var(--transparent-feldgrau);
|
||||
|
||||
|
||||
.sidebar__nav-link {
|
||||
color: var(--black);
|
||||
}
|
||||
|
||||
.sidebar__instagram-icon,
|
||||
.sidebar__email-icon {
|
||||
fill: var(--black);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&--white-background {
|
||||
|
||||
&:hover {
|
||||
background-color: var(--transparent-white);
|
||||
}
|
||||
}
|
||||
|
||||
.sidebar__social {
|
||||
width: auto;
|
||||
justify-content: flex-start;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// MAIN
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// Slider section
|
||||
|
||||
.splide {
|
||||
|
||||
&__image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
object-fit: cover;
|
||||
}
|
||||
}
|
||||
|
||||
// Exhibition section
|
||||
|
||||
.exhibition-section {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@media screen and (min-width: $desktop-media-query) {
|
||||
|
||||
.exhibition-section {
|
||||
display: block;
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
}
|
||||
|
||||
.exhibition {
|
||||
opacity: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
transition: opacity 400ms ease-in-out;
|
||||
|
||||
&--visible {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
}
|
28
assets/css/panel.scss
Normal file
28
assets/css/panel.scss
Normal file
|
@ -0,0 +1,28 @@
|
|||
// ----------------------------------------------------------------------------
|
||||
// KIRBY PANEL CUSTOMIZATION
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// Textarea headline buttons
|
||||
|
||||
.k-textarea-field {
|
||||
|
||||
.k-toolbar {
|
||||
|
||||
.k-dropdown {
|
||||
|
||||
.k-button:nth-of-type(2),
|
||||
.k-button:nth-of-type(3) {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Visual image crop field properties
|
||||
|
||||
.kirby-imagecrop-field {
|
||||
|
||||
.k-column:nth-of-type(2) {
|
||||
display: none;
|
||||
}
|
||||
}
|
28
assets/css/partials/animations.scss
Normal file
28
assets/css/partials/animations.scss
Normal file
|
@ -0,0 +1,28 @@
|
|||
// ----------------------------------------------------------------------------
|
||||
// ANIMATIONS
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
@keyframes expand-outline {
|
||||
0% {
|
||||
outline-offset: 0;
|
||||
}
|
||||
100% {
|
||||
outline-offset: 2px;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes rotate-horizontal-bottom {
|
||||
0% {
|
||||
transform: rotateX(0);
|
||||
transform-origin: bottom;
|
||||
}
|
||||
50% {
|
||||
transform: rotateX(180deg);
|
||||
transform-origin: bottom;
|
||||
}
|
||||
100% {
|
||||
transform: rotateX(0);
|
||||
transform-origin: bottom;
|
||||
}
|
||||
}
|
||||
|
3
assets/css/partials/fonts.scss
Normal file
3
assets/css/partials/fonts.scss
Normal file
|
@ -0,0 +1,3 @@
|
|||
// ----------------------------------------------------------------------------
|
||||
// FONTS
|
||||
// ----------------------------------------------------------------------------
|
47
assets/css/partials/variables.scss
Normal file
47
assets/css/partials/variables.scss
Normal file
|
@ -0,0 +1,47 @@
|
|||
// ----------------------------------------------------------------------------
|
||||
// VARIABLES
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
:root {
|
||||
|
||||
// Fonts
|
||||
|
||||
--text-font-family: Helvetica, sans-serif;
|
||||
--title-font-family: Helvetica, sans-serif;
|
||||
--regular-font-weight: 400;
|
||||
--medium-font-weight: 500;
|
||||
--semi-bold-font-weight: 600;
|
||||
--bold-font-weight: 700;
|
||||
--text-font-size: 1rem;
|
||||
--text-line-height: calc(var(--text-font-size) * 1.2);
|
||||
--footnote-font-size: 0.8rem;
|
||||
--footnote-line-height: calc(var(--footnote-font-size) * 1.2);
|
||||
--h1-font-size: 1.6rem;
|
||||
--h1-line-height: calc(var(--h1-font-size) * 1.2);
|
||||
--h2-font-size: 1.4rem;
|
||||
--h2-line-height: calc(var(--h2-font-size) * 1.2);
|
||||
--h3-font-size: 1.2rem;
|
||||
--h3-line-height: calc(var(--h3-font-size) * 1.2);
|
||||
|
||||
// Dimensions
|
||||
|
||||
--logo-width: 6rem;
|
||||
--logo-height: 3rem;
|
||||
--logo-padding: 1rem;
|
||||
--icon-size: 2.25rem;
|
||||
--sidebar-padding: 1rem;
|
||||
|
||||
// Colors
|
||||
|
||||
--black: #000;
|
||||
--transparent-black: rgba(0, 0, 0, 0.3);
|
||||
--white: #fff;
|
||||
--transparent-white: rgba(255, 255, 255, 0.9);
|
||||
--feldgrau: #4B6259;
|
||||
--transparent-feldgrau: rgba(75, 98, 89, 0.9);
|
||||
}
|
||||
|
||||
// Media queries
|
||||
|
||||
$tablet-media-query: 48rem;
|
||||
$desktop-media-query: 62rem;
|
78
assets/css/utils/minireset.css
Normal file
78
assets/css/utils/minireset.css
Normal file
|
@ -0,0 +1,78 @@
|
|||
/* ----------------------------------------------------------------------------
|
||||
MINIRESET V0.0.6
|
||||
---------------------------------------------------------------------------- */
|
||||
|
||||
html,
|
||||
body,
|
||||
p,
|
||||
ol,
|
||||
ul,
|
||||
li,
|
||||
dl,
|
||||
dt,
|
||||
dd,
|
||||
blockquote,
|
||||
figure,
|
||||
fieldset,
|
||||
legend,
|
||||
textarea,
|
||||
pre,
|
||||
iframe,
|
||||
hr,
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
font-size: 100%;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
ul {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
button,
|
||||
input,
|
||||
select {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
html {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
*, *::before, *::after {
|
||||
box-sizing: inherit;
|
||||
}
|
||||
|
||||
img,
|
||||
video {
|
||||
height: auto;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
iframe {
|
||||
border: 0;
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
}
|
||||
|
||||
td,
|
||||
th {
|
||||
padding: 0;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue