@import 'rcss.bundled';

// Include primary fonts in regular, italic and bold each.
@font-face {
    font-family: 'Crimson Pro';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local('Crimson Pro Regular'), local('CrimsonPro-Regular'), url(fonts/Crimson/CrimsonPro-Regular.ttf) format('truetype');
}
@font-face {
    font-family: 'Crimson Pro';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: local('Crimson Pro Italic'), local('CrimsonPro-Italic'), url(fonts/Crimson/CrimsonPro-Italic.ttf) format('truetype');
}
@font-face {
    font-family: 'Crimson Pro';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: local('Crimson Pro Bold'), local('CrimsonPro-Bold'), url(fonts/Crimson/CrimsonPro-Bold.ttf) format('truetype');
}
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local('Montserrat Regular'), local('Montserrat-Regular'), url(fonts/Montserrat/Montserrat-Regular.woff2) format('woff2');
}
@font-face {
    font-family: 'Montserrat';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: local('Montserrat Italic'), local('Montserrat-Italic'), url(fonts/Montserrat/Montserrat-Italic.woff2) format('woff2');
}
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: local('Montserrat Bold'), local('Montserrat-Bold'), url(fonts/Montserrat/Montserrat-Bold.woff2) format('woff2');
}
  
// Define global color variables.
$-beige: #D7CEC7;
$-grey: #565656;
$-wine-red: #76323F;
$-light-brown: #C09F80;
$-almost-white: #f9f9f9;

// Define global sand/serif font variables.
$-primary-sans-serif-font: 'Montserrat',
    Helvetica,
    sans-serif;
$-primary-serif-font: 'Crimson Pro',
    Times,
    serif;

// Define viewport sizes.
$-viewport-normal: 1000px;
$-viewport-medium: 750px;
$-viewport-small: 650px;
$-viewport-extra-small: 450px;

// Define when to hide the sidebar.
$-viewport-toggle-sidebar: $-viewport-small;

$-sidebar-width: 250px;

html {
    height: 100%;
    margin: 0;
    padding: 0;
}

body {
    height: 100%;
    margin: 0;
    padding: 0;
}

.LP-Wrapper__Site {
    display: grid;
    grid-template-columns: $-sidebar-width 1fr;
    grid-template-rows: auto 1fr;
    grid-template-areas: "header header""sidebar content";
    margin: 0;
    padding: 0;
    min-height: 100vh;
}

.LP-Main__Content {
    min-height: 1px;
    padding: 25px;
    grid-area: content;
}

.LP-Main__Sidebar {
    grid-area: sidebar;
    background-color: #f9f9f9;
}

.LP-Section {
    clear: both;
    padding: 25px 0px;
    padding-left: 25px;

    .LP-Headline {
        margin-left: -25px;
    }
}

.LP-Menu__Trigger {
    display: none;
}

// Media queries
@media(max-width: $-viewport-normal) {
    .LP-Wrapper__Site {
        grid-template-columns: (0.75 * $-sidebar-width) 1fr;
    }
}

@media(max-width: $-viewport-small) {
    .LP-Section {
        padding-left: 0;
        padding-right: 0;

        .LP-Headline {
            margin: 0;
        }
    }
}

@media(max-width: $-viewport-extra-small) {
    .LP-Main__Sidebar {
            max-width: 100vw;
        }
    }

@media(max-width: $-viewport-toggle-sidebar) {
    .LP-Wrapper__Site {
        grid-template-columns: 0 1fr;
    }

    .LP-Main__Sidebar {
        grid-area: unset;
        width: $-sidebar-width;
        z-index: 15;
        position: fixed;
        left: -1 * $-sidebar-width - 1;
        height: 100vh;
        top: 60px;
        border-right: 1px solid $-light-brown;
        transition: left 0.3s;

        &--hidden {
            visibility: hidden;
        }
    }

    #toggle_sidebar:checked~.LP-Main__Sidebar {
        left: 0;
    }

    #toggle_sidebar~.LP-Main__Sidebar {
        left: -1 * $-sidebar-width - 1;
    }

    .LP-Menu__TriggerLabel {
        z-index: 20;
        height: 60px;
        width: 60px;
        background-image: url('icons/hamburger_menu.svg');
        background-repeat: no-repeat;
        background-clip: content-box;
        background-position: center;
        position: fixed;
    }

    .LP-Menu__Trigger:checked~.LP-Menu__TriggerLabel {
        background-color: invert($-grey);
        filter: invert(1);
    }

    .LP-Main__Content {
        margin-top: 60px;
    }
}

@import '01_Atoms/atoms';
@import '02_Molecules/molecules';
@import '03_Organisms/organisms';
@import '04_Templates/templates';
@import '05_Pages/pages';

//@import './tagify';
