@import "font-mixins"; /*------------------------------------*\ MAIN \*------------------------------------*/ /* global box-sizing */ *, *:after, *:before { -moz-box-sizing: border-box; box-sizing: border-box; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; } /* html element 62.5% font-size for REM use */ html { font-size: 62.5%; } body { font: 300 14px/1.4 "Westeinde Caption", "Helvetica Neue", Helvetica, Arial, sans-serif; color: #000; } /* clear */ .clear:before, .clear:after { content: " "; display: table; } .clear:after { clear: both; } .clear { *zoom: 1; } img { max-width: 100%; vertical-align: bottom; } a { color: #000; text-decoration: none; cursor: pointer; &:hover { color: #000; } &:focus, &:hover, &:active { outline: 0; } } input:focus { outline: 0; border: 1px solid #888; } input::selection { color: #888; background-color: #aaa; } button { background: transparent; appearance: none; -webkit-appearance: none; -moz-appearance: none; padding: 0; border: 0; &:focus { outline: none; } } object { pointer-events: none; } /* -------------------------------------------------------------------------- */ /* GLOBAL VARIABLES */ /* -------------------------------------------------------------------------- */ $smalldesktop: only screen and ( min-width: 769px ); $mobile-landscape: only screen and ( min-width: 769px ) and (-webkit-min-device-pixel-ratio: 2.1); $bigdesktop: only screen and ( min-width: 1281px ); $desktop-home-margin: 10rem; // menuwidth on desktop $desktop-home-margin-half: 5rem; $desktop-top-margin: 4rem; $desktop-bottom-margin: 2rem; $desktop-bottom-margin-double: 4rem; /* -------------------------------------------------------------------------- */ /* other mixins */ /* -------------------------------------------------------------------------- */ @mixin transition($transition) { -webkit-transition: $transition; -moz-transition: $transition; -o-transition: $transition; transition: $transition; } @mixin transform($transforms) { -moz-transform: $transforms; -o-transform: $transforms; -ms-transform: $transforms; -webkit-transform: $transforms; transform: $transforms; } @mixin rotated-text($num-letters: 100, $angle-span: 180deg, $angle-offset: 0deg) { $angle-per-char: $angle-span / $num-letters; @for $i from 1 through $num-letters { &.char#{$i} { @include transform(rotate($angle-offset + $angle-per-char * $i)); } } } @mixin box-shadow($a...) { -moz-box-shadow: $a; -webkit-box-shadow: $a; box-shadow: $a; } @mixin trianglecorner($side, $size) { content: ""; display: block; position: absolute; background-color: transparent; width: 0; height: 0; @if $side==topleft { left: -$size; top: -$size; border-top: $size solid transparent; border-left: $size solid transparent; border-right: $size solid transparent; border-bottom: $size solid #fff; } @if $side==bottomleft { left: -$size; bottom: -$size; border-bottom: $size solid transparent; border-left: $size solid transparent; border-right: $size solid transparent; border-top: $size solid #fff; } @if $side==topright { right: -$size; top: -$size; border-top: $size solid transparent; border-left: $size solid transparent; border-right: $size solid transparent; border-bottom: $size solid #fff; } position: absolute; z-index: -1; } @mixin triangle-corner-bordered($radius, $left, $bgcolor) { &::after { //for border without corner position: absolute; top: 0; border: none; @if $left==0 { width: calc(100% - #{$radius}); } @else { width: calc(100% - #{$radius} + #{$left}); } border-top: #000 1px solid; left: calc(#{$radius}); background-color: $bgcolor; margin-left: -#{$left}; } &::before { //filleted corner display: block; content: ""; position: absolute; width: calc(#{$radius}); height: calc(#{$radius}); top: 0; left: -#{$left}; border-left: #000 solid 1px; border-top: #000 1px solid; @include transform(skewX(-45deg)); transform-origin: left bottom; background-color: $bgcolor; z-index: 9; } } /* -------------------------------------------------------------------------- */ /* STRUCTURE */ /* -------------------------------------------------------------------------- */ /* wrapper */ .wrapper { margin: 0 auto; position: relative; width: 100vw; height: 100vh; /* -------------------------------------------------------------------------- */ /* header */ /* -------------------------------------------------------------------------- */ .header { position: fixed; top: 0; width: 100vw; // padding: 2rem; // background-color: #000; display: flex; flex-direction: row; justify-content: space-between; align-items: center; z-index: 3; @media #{$smalldesktop} { height: 0; position: relative; width: 0; &::before { display: none; } } .header-1, .header-2 { display: flex; flex-direction: row; align-items: center; @media #{$smalldesktop} { width: $desktop-home-margin; position: fixed; top: 0; height: 100vh; flex-direction: column; flex: 0 0 auto !important; //filter: invert(100); padding: 2rem !important; justify-content: space-between !important; align-content: space-between; z-index: 3100; background: #fff; & > div:not(#sidebar) { filter: invert(100); } } div { z-index: 3500; } a { display: inline-block; } } .header-1 { justify-content: space-between; flex: 1 1 auto; padding: 2rem 0 2rem 2rem; @media #{$smalldesktop} { border-right: #000 1px solid; } } .header-2 { justify-content: flex-end; flex: 0 1 auto; padding: 2rem 2rem 2rem 0; @media #{$smalldesktop} { order: 99; border-left: #000 1px solid; right: 0; } } .totop { position: fixed; bottom: 1rem; right: 1rem; z-index: 2; @media #{$smalldesktop} { display: none; } a { display: inline-block; object { height: 2rem; // color: #000; // fill: currentColor; filter: invert(100%); //black @include transform(rotate(180deg)) // transform: rotate(180deg);; } } } object { height: 3rem; } /* -------------------------------------------------------------------------- */ /* header elements */ /* -------------------------------------------------------------------------- */ @media #{$smalldesktop} { .header-1 > div, .header-2 > div { flex: 0 0 5rem !important; } } .logo { object { height: 5rem; } } .events-link { display: none; @media #{$smalldesktop} { display: block; } } .menubutton { $speed: 0.5s; $degree: 225deg; $easing: linear; order: 99; z-index: 3001; @media #{$smalldesktop} { } button { transform-origin: center; @include transition($speed $easing); &.rotated { @include transform(rotate($degree)); @media #{$smalldesktop} { filter: invert(100); } } } @media #{$smalldesktop} { order: unset; } } .social-link { margin: 0 2rem 0 0; &.hidden { display: none !important; } @media #{$smalldesktop} { margin: 0; } } /* ========================================================================== */ /* SEARCH */ /* ========================================================================== */ .search-box { display: none; @media #{$smalldesktop} { display: block; flex: 1 1 0 !important; } } .search-bar { @media #{$smalldesktop} { display: none; position: absolute; width: 0; left: 7rem; top: 0; } form.search { display: flex; flex-direction: row; border-bottom: #fff 1px solid; @media #{$smalldesktop} { } input { @include menutext(); background-color: #000; padding: 0; border: none; caret-color: #fff; flex: 1 1 auto; width: 1rem; } button { flex: 0 0 auto; @media #{$smalldesktop} { display: none; } } } } //search-bar end .header-scroll { display: none; } /* ========================================================================== */ /* MENUS */ /* ========================================================================== */ #sidebar { padding-top: 9rem !important; background-color: #000; @media #{$smalldesktop} { padding: 0 !important; } .sidebar-wrapper { position: relative; height: 100%; overflow: auto; padding: 0 4rem; @media #{$smalldesktop} { padding: 4rem; } ul { margin-block-start: 0; margin-block-end: 0; margin-inline-start: 0; margin-inline-end: 0px; padding-inline-start: 0; @media #{$smalldesktop} { display: flex; flex-direction: column; flex-wrap: wrap; height: 100%; justify-content: space-evenly; } } li { display: block; padding-top: 2rem; @media #{$smalldesktop} { width: 50%; padding: 3rem 0; } a { @include menutext(); } } } } /* ------------------------------- bedo circle ------------------------------ */ #tag-nav { display: none; position: fixed; right: calc(#{$desktop-home-margin}* 2); top: calc(#{$desktop-top-margin}/ 2); z-index: 1000; @media #{$smalldesktop} { display: block; } ul { padding: 0; margin: 0; @include bedocircle(); li { display: inline; a { span { height: calc(#{$desktop-top-margin}/ 2); position: absolute; // width: 20px; left: 0; top: 0; transform-origin: bottom center; @include bedocircle(); @include rotated-text(17, 360deg, 0deg); } } } } } } //header end /* -------------------------------------------------------------------------- */ /* STRUCTURE ALL PAGE */ /* -------------------------------------------------------------------------- */ main { z-index: 1; section { article { position: relative; .metadata { position: absolute; background-color: #fff; padding: 2rem; bottom: 49%; right: 0; width: 50vw; text-align: center; @include home-metadata(); z-index: 1; &::after { @include trianglecorner(topleft, 5rem); } } } //article end /* -------------------------------- load more ------------------------------- */ .misha_loadmore { @include home-title(); @media #{$smalldesktop} { border-left: #000 1px solid; padding: $desktop-top-margin $desktop-home-margin; align-self: stretch; display: flex; flex-direction: column; justify-content: space-around; height: 100%; } a { @media #{$smalldesktop} { } } } } } } //wrapper end /* -------------------------------------------------------------------------- */ /* HOMEPAGE */ /* -------------------------------------------------------------------------- */ .home { @media #{$smalldesktop} { overflow-y: hidden; } .wrapper { @media #{$smalldesktop} { overflow-y: hidden; width: fit-content; } /* ----------------------------- header on home ----------------------------- */ .header { .header-scroll { @media #{$smalldesktop} { display: block; position: fixed; height: 100vh; width: $desktop-home-margin; flex: 1 0 auto !important; top: 0; } &.header-scroll-left { left: $desktop-home-margin; button { // cursor: url("../img/arrow-black-left.svg"), url("../img/arrow-black-left.png"), w-resize, auto; cursor: url("../img/arrow-black-left.png"), w-resize; } } &.header-scroll-right { right: $desktop-home-margin; button { // cursor: url("../img/arrow-black-right.svg"), url("../img/arrow-black-right.png"), e-resize, auto; cursor: url("../img/arrow-black-right.png"), e-resize; } } button { height: 100vh; width: $desktop-home-margin; } } } } main { @media #{$smalldesktop} { height: 100vh; width: fit-content; position: relative; } section { @media #{$smalldesktop} { //horizontal scrolling on desktop: display: flex; flex-direction: row; margin: 0; height: 100vh; width: fit-content; } /* --------------------------- home article mobile/default -------------------------- */ article { height: 100vh; @media #{$smalldesktop} { & > a { margin: 0; padding: 0; border: none; display: inline-block; } .thumbnailwrapper { img.attachment-home-thumbnail { // post thumbnail on home height: 50vh; width: 100vw; object-fit: cover; } } h2 { width: 100%; height: 50vh; padding: 2rem; padding-top: 3rem; margin: 0; // display: flex; // flex-direction: row; // align-items: center; a { @include home-title(); } } } //article end } /* ------------------------ home article desktop big ------------------------ */ @media #{$smalldesktop} { //big: first 2 articles .home-wrapper-big { flex: 0 0 auto; article { position: relative; width: calc(100vw - (#{$desktop-home-margin} * 3)); margin: 0; padding: 0; margin-left: $desktop-home-margin; padding-top: $desktop-top-margin; border-right: #000 1px solid; &::before { //this is the border on top content: "