:root {
    --primary: #4255bd;
    --primary-dark: #2e3b84;
    --primary-light: #7b88d1;
    
    --secondary: #429ebd;
    --secondary-dark: #2e6f84;
    --secondary-light: #7bbbd1;

    --white: #ffffff;
    --bg-lightest: #f8f8f8;
    --bg-mid: #f5f5f5;
    --bg-highlight: #ebebeb;
    --bg-highlight-overlay: #dcdcdc;

    --red: #bd4242;
    --red-dark: #842e2e;
    --red-light: #d17b7b;

    --greyblue: #698796;
    --greyblue-dark: #495f69;
    --greyblue-light: #96abb6;

    --black: #000000;
    --text-mid: #666666;
    --text-light: #AAAAAA;
}

/**
** Layout and structure
**/
body {
    background-color: var(--bg-lightest);
    color: var(--black);
    font-size: 16px;
}
body.navbar-is-fixed-top {
    margin-top: 60px;
}
body.sidebar-first section.main-section {
    margin-left: 0%;
}
footer.footer {
    margin-top: 5em;
    padding-top: 2em;
    padding-bottom: 2em;
    border-top: 1px solid var(--bg-highlight-overlay);
}
@media (min-width: 768px) {
    body.sidebar-first section.main-section {
        margin-left: 0px;
        width: 100%;
    }
}
@media (min-width: 992px) {
    body {
        font-size: 14px;
    }
    body.sidebar-first section.main-section {
        margin-left: 220px;
        width: calc(100% - 220px);
    }
    footer.footer {
        margin-left: 220px;
        width: calc(100% - 220px);
    }
}
@media (min-width: 1440px) {
    body.sidebar-first section.main-section {
        margin-left: 16%;
        width: 84%;
        min-height: 75vh;
    }
    footer.footer {
        margin-left: 16%;
        width: 84%; 
    }
}
@media (min-width: 1600px) {
    body {
        font-size: 16px;
    }
}
.navbar-default {
    background-color: var(--white);
    border: unset;
    box-shadow: 0 0 10px 2px rgba(0,0,0,0.1);
}

aside.sidebar-left {
    position: fixed;
    top: 0;
    left: -250px;
    padding: 10px 0;
    height: 100%;
    background: var(--bg-mid);
    width: 250px;
    border-right: 1px solid var(--bg-highlight-overlay);
}
aside.sidebar-left.is-open {
    z-index: 1031;
    box-shadow: 5px 0 10px 0 rgba(0,0,0,0.1);
}
body.node-add-edit aside.sidebar-left {
    border-right: 1px solid var(--bg-highlight-overlay);
    overflow: hidden;
}
@media (min-width: 768px) {
    aside.sidebar-left {
        position: fixed;
        width: 250px;
    }
    body.node-add-edit aside.sidebar-left {
        width: 80px;
    }
    body.node-add-edit aside.sidebar-left ul.menu > li.menu-icon > a {
        height: 50px;
        font-size: 0px;
    }
}
@media (min-width: 992px) {
    aside.sidebar-left { 
        left: 0px !important;
        top: unset;
        width: 220px;
    }
}
@media (min-width: 1440px) {
    aside.sidebar-left { 
        width: 16%;
    }
}

aside.sidebar-offcanvas-right {
    position: fixed;
    right: -250px;
    top: 0;
    z-index: 1031;
    width: 250px;
    height: 100%;
    background: var(--bg-mid);
}
aside.sidebar-offcanvas-left {
    position: fixed;
    left: -350px;
    top: 50px;
    z-index: 1031;
    width: 350px;
    height: 100%;
    background: white;
}
aside.sidebar-offcanvas-right.is-open {
    box-shadow: -5px 0 10px 0 rgba(0,0,0,0.1);
    z-index: 1031;
}
aside.sidebar-offcanvas-left.is-open {
    box-shadow: 5px 0 10px 0 rgba(0,0,0,0.1);
    z-index: 1031;
}

section.main-section {
    min-height: 500px;
}

#full-page-overlay {
    background-color: var(--black);
    opacity: 0.25;
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1030;
    display: none;
}
@media (min-width: 768px) {
    body.node-add-edit section.main-section {
        margin-left: 80px;
        width: calc(100% - 80px);
    }
    body.node-add-edit footer.footer {
        margin-left: 80px;
        width: calc(100% - 80px);
    }
}

.maxwidth900 {
    max-width: 900px;
    margin: auto;
}
.maxwidth1200 {
    max-width: 1200px;
    margin: auto;
}

@media (min-width: 992px) {
    .maxwidth1200 {
        width: calc(95% + 30px);
    }
    .maxwidth1900 {
        width: calc(95% + 30px);
    }
}


/**
** Views elements
**/
.view.view-resources .row > .col-xs-6 {
    padding-left: 5px;
    padding-right: 5px;
}

.view-header > h2 {
    font-size: 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: bold;
    color: var(--primary-dark);
}

.discover-create-block {
    padding: 15px;
    border: 3px dashed var(--bg-highlight-overlay);
    display: flex;
    flex-direction: column;
    min-height: 250px;
    justify-content: space-between;
    color: var(--text-mid);
}

.view-content.horizontally-scrollable {
    overflow-x: auto;
    width: 100%;
    display: flex;
}
.view-content.horizontally-scrollable > .views-row {
    min-width: 70%;
}

.view.view-content-card > .view-content {
    padding: 20px;
    background: var(--white);
    font-size: 14px;
    border: 1px solid var(--bg-highlight);
}

@media (min-width: 768px) {
    .view.view-resources .row > .col-xs-6 {
        padding-left: 15px;
        padding-right: 15px;
    }
    .view-content.horizontally-scrollable {
        overflow-x: unset;
        width: unset;
        display: block;
    }
    .view-content.horizontally-scrollable > .views-row {
        min-width: unset;
    }
    
}

/**
** Forums
**/
.path-forum .region-content {
    width: 95%;
    max-width: 1200px;
    margin: auto;
}
.path-forum .region-content > .action-links {
    display: none;
}
.path-forum .region-content > table,
.path-forum .region-content > .table-responsive > table {
    width: 100%;
}
.path-forum .region-content > table > thead,
.path-forum .region-content > .table-responsive > table > thead {
    line-height: 40px;
    font-size: 18px;
}
.path-forum .region-content > table > thead th,
.path-forum .region-content > .table-responsive > table > thead th {
    padding: 0 15px 15px;
    color: var(--text-mid);
    border-bottom: 0px;
}
.path-forum .region-content > table > tbody > tr,
.path-forum .region-content > .table-responsive > table > tbody > tr {
    line-height: 30px;
    background: var(--white);
    border-bottom: 1px solid var(--bg-highlight-overlay);
}
.path-forum .region-content > table > tbody td,
.path-forum .region-content > .table-responsive > table > tbody td {
    padding: 15px 20px;
    line-height: 30px;
    vertical-align: unset;
}
.path-forum .region-content > table > tbody > tr > td > div > a,
.path-forum .table-responsive .forum__title > div > a {
    font-weight: bold;
    font-size: 18px;
}
.path-forum .region-content > table > tbody > tr > td > div > p,
.path-forum .region-content > .table-responsive > table > tbody > tr > td > div > p,
.path-forum .region-content table > tbody > tr > td > div > span,
.path-forum .region-content table > tbody > tr > td > span {
    font-size: 14px;
    color: var(--text-mid);
}



/** 
** Node / DS layouts
**/

/** 2col-fluid **/
.node.ds-2col-fluid {
    max-width: 1200px;
    margin: auto;
}
.node.ds-2col-fluid > .group-left {
    width: 100%;
    margin-bottom: 2em;
}
.node.ds-2col-fluid > .group-right {
    width: 100%;
}

.node.ds-2col-fluid .field.field--name-field-content-blocks {
    padding: 30px;
    background: var(--white);
    border: 1px solid var(--bg-highlight);
    margin-bottom: 20px;
}

@media (min-width: 768px) {
    .node.ds-2col-fluid > .group-left {
        width: 70%;
    }
    .node.ds-2col-fluid > .group-right {
        width: 25%;
    }
    .node.ds-2col-fluid .field.field--name-field-content-blocks {
        margin-bottom: 50px;
    }
}
@media (min-width: 992px) {
    .node.ds-2col-fluid {
        width: 95%
    }
}

/** 2col-stacked (minibook) **/
.ds-2col-stacked {
    background-color: white;
    margin-top: 1em;
    border: 1px solid var(--bg-highlight);
}
.ds-2col-stacked > .group-left {
    float: left;
    width: 15%;
    padding: 1em;
}
.ds-2col-stacked > .group-right {
    float: right;
    width: 85%;
    padding: 1em;
}
.ds-2col-stacked > .group-footer {
    clear: both;
    padding: 1em;
    margin-top: 1em;
    border-top: 1px solid var(--bg-highlight);
    display: block;
    font-size: 14px;
}
.ds-2col-stacked > .group-footer .footer-left > .field,
.ds-2col-stacked > .group-footer .footer-left > .form-group {
    display: inline-block;
    margin-right: 1.5em;
    color: var(--text-mid);
    margin-bottom: 0px;
}
.ds-2col-stacked h2.card-title {
    font-size: 1.1em;
    font-weight: 600;
}
.ds-2col-stacked h2.card-title a {
    color: black;
}

/** tags with links **/
.tags-with-links > a {
    background-color: var(--bg-lightest);
    padding: 0.5em;
    display: inline-block;
    margin: 0 5px 5px 0;
    color: var(--black);
    border-radius: 10px;
}
.tags-with-links > a:hover,
.tags-with-links > a:focus {
    text-decoration: none;
    background-color: var(--bg-highlight);
    color: var(--primary-dark);
}


.field.field-author-mini {
    margin: 0.5em 0 0.75em;
}
.field.field-author-mini a {
    color: var(--text-mid);
    font-size: 0.9em;
}
.field.field-author-mini img {
    max-width: 30px;
    border-radius: 50%;
    margin-right: 0.75em;
}

/** Module Field Group **/
.field--group-modal-bootstrap.no-button > button.field--group-modal-bootstrap-button {
    display: none;
}


/**
** Comments
**/
div#comment-form {
    padding: 20px;
    background-color: white;
    margin: 2em 0 0;
    border: 1px solid var(--bg-highlight);
}
div#comment-form > h2,
div#comment-list > h2 {
    font-size: 18px;
    color: var(--text-mid);
    margin: 0 0 1em;
}
div#comment-form .form-item > label.control-label {
    display: none;
}
div#comment-list {
    padding: 20px;
    background: #fff;
    border: 1px solid var(--bg-highlight);
    border-top: 0px;
}
#comment-list > .comment {
    padding: 1em 0;
    margin-bottom: 1em;
    line-height: 1.7em;
    font-size: 14px;
}
#comment-list .comment.ds-2col-stacked-fluid .group-left {
    width: 12%;
    max-width: 65px;
    float: left;
}
#comment-list .comment.ds-2col-stacked-fluid .group-right {
    width: 84%;
    float: right;
}
.comment .comment-author {
    padding-bottom: 5px;
}
.comment .group-header {
    position: relative;
}
.comment .group-header > ul.links {
    position: absolute;
    right:0;
}
.comment .group-header > ul.links li a {
    color: var(--text-mid);
    font-size: 0.85em;
}
/** hide comment reply link **/
li.comment-reply {
    display: none;
}
/** hide comment login link **/
li.comment-forbidden {
    display: none;
}

/** ajax comments **/
/** hide h2 that pops up for ajax comments */
div#comment-form ~ h2 {
    display: none;
}
div#comment-form div.messages__wrapper {
    margin: 1em;
    position: fixed;
    bottom: 1em;
    right: 3em;
}

/** User Profile / DS layouts **/
.user.ds-2col-fluid {
    width: 100%;
    max-width: 1400px;
    margin: 1em auto 0px;
}
.user.ds-2col-fluid > .group-left {
    width: 100%;
    float: left;
}
.user.ds-2col-fluid > .group-right {
    width: 100%;
    float: left;
    margin-top: 1em;
}
.flag-report {
    margin-top: 3em;
}
.flag-report > a {
    padding: 0.5em 1em;
    background: rgba(0,0,0,0.1);
    border-radius: 10px;
    font-weight: bold;
    font-size: 0.7em;
}
.flag-link-w-icon > a {
    background-color: white;
    padding: 0.5em 1em;
    border: 2px solid var(--greyblue);
    color: var(--greyblue-dark);
    font-size: 14px;
    font-weight: 600;
    border-radius: 4px;
    display: inline-block;
}
.flag-link-w-icon > a > i {
    margin-right: 10px;;
}
.flag-link-w-icon > a > .flag-count {
    margin-left: 10px;
    padding-left: 10px;
    border-left: 1px solid #777;
}
.flag-link-w-icon > a:hover,
.flag-link-w-icon > a:focus {
    background-color: var(--primary);
    color: white;
    border: 2px solid var(--primary-light);
    text-decoration: none;
}
.flag-link-w-icon.flag-rtbc-group-content.action-unflag > a {
    color: var(--primary);
    border-color: var(--primary);
}
.flag-link-w-icon.flag-rtbc-group-content.action-unflag > a:hover,
.flag-link-w-icon.flag-rtbc-group-content.action-unflag > a:focus {
    color: var(--red-dark);
    background-color: white;
    border-color: var(--red-light);
}

@media (min-width: 768px) {
    .user.ds-2col-fluid {
        width: 100%;
        margin-top: 1em;
    }
    .user.ds-2col-fluid > .group-left {
        width: 25%;
    }
    .user.ds-2col-fluid > .group-right {
        width: 73%;
        margin-left: 2%;
    }
}
@media (min-width: 992px) {
    .user.ds-2col-fluid {
        width: 95%;
        margin-top: 2em;
    }
    .user.ds-2col-fluid > .group-left {
        width: 30%;
    }
    .user.ds-2col-fluid > .group-right {
        width: 68%;
    }
}
@media (min-width: 1200px) {
    .user.ds-2col-fluid > .group-left {
        width: 25%;
    }
    .user.ds-2col-fluid > .group-right {
        width: 73%;
    }
}


/**
** Login / Registration Forms
**/
#block-userloginregisterbranding {
    max-width: 400px;
    margin: -50px auto 0;
}
form#user-login-form,
form#user-register-form,
form#user-pass {
    max-width: 400px;
    margin: 0 auto;
    padding: 30px;
    background: var(--white);
}
form#user-login-form {
    margin-top: 20px;
}
form#user-register-form {
    padding: 20px 30px;
}
form#user-pass {
    padding: 20px 30px;
    margin-top: 20px;
}
#block-loginfooter {
    max-width: 400px;
    font-size: 14px;
    background: #FFF;
    padding: 20px;
    margin: auto;
    border-top: 1px solid var(--bg-highlight-overlay);
}
#block-loginpageadditionallinks,
#block-userregistrationadditionallinks,
#block-userpasswordresetadditionallinks {
    max-width: 400px;
    margin: 25px auto 0;
    padding: 20px;
    font-size: 12px;
    text-align: center;
}
#edit-mail--description,
#edit-pass--description,
#edit-name--description {
    display: none;
}
#block-userloginsocialloginblock {
    max-width: 400px;
    background: #FFF;
    margin: auto;
    padding: 0 30px;
}
#block-userregisterpageheader {
    max-width: 400px;
    background: #FFF;
    margin: auto;
    padding: 30px 30px 0;
    margin-top: 20px;
}
#block-userregisterpageheader h1 {
    font-size: 23px;
    font-weight: bold;
    margin: 0 0;
}
form#user-login-form .form-item > label,
form#user-register-form .form-item > label,
#user-settings-form .form-item > label,
#user-settings-profile-form .form-item > label {
    font-size: 12px;
}
.password-confirm.js-password-confirm,
.password-strength__title,
.password-strength__text {
    font-size: 12px;
}

.or-separator {
    position: relative;
    line-height: 30px;
    text-align: center;
    color: var(--text-mid);
}
p.or-separator:before,
p.or-separator:after {
    position: absolute;
    width: 40%;
    height: 1px;
    content: '';
    background-color: var(--bg-highlight-overlay);
    top: 15px;
}
p.or-separator:before {
    left: 0px;
}
p.or-separator:after {
    right: 0px;
}
form#user-login-form > #edit-actions > #edit-submit,
form#user-register-form > #edit-actions > #edit-submit {
    display: block;
    width: 100%;
    margin-top: 25px;
}
.btn-google-login {
    display: block;
    text-align: center;
    border: 3px solid var(--primary);
    border-radius: 30px;
    margin: 30px 0;
    color: var(--primary);
    position: relative;
}
.btn-google-login:after {
    content: '';
    display: block;
    background-image: url(/themes/custom/learnful-theme/assets/icons/icons8-google.svg);
    position: absolute;
    top: 0;
    right: 5px;
    height: 30px;
    width: 30px;
    background-repeat: no-repeat;
    background-position: 50%;
}
.btn-google-login:hover,
.btn-google-login:focus {
    color: var(--white);
    border-color: var(--primary-dark);
    background-color: var(--primary-dark);
}

body.path-user .region-content > div > .messages__wrapper .alert {
    max-width: 400px;
    margin: 20px auto 0;
}

/**
** Buttons, links, typography
**/

a {
    color: var(--primary);
}
a:active,
a:hover,
a:focus {
    color: var(--primary-dark);
}

h1.page-header {
    border: 0;
    padding: 28px;
    font-size: 20px;
    margin: 0;
    border-bottom: 1px solid var(--bg-highlight);
    background-color: var(--text-mid);
    color: var(--white);
}

.btn {
    font-weight: bold;
    padding: 6px 15px;
    border-width: 3px;
}
.btn {
    white-space: pre-wrap;
}
button.btn {
    white-space: nowrap;
}
.btn-xs {
    padding: 1px 8px;
    font-size: 11px;
}
.btn-sm {
    padding: 5px 10px;
}
.btn-primary {
    background-color: var(--primary);
    border-color: transparent;
}
.btn-primary-dark {
    background-color: var(--primary-dark);
    border-color: transparent;
    color: white;
}
.btn-secondary {
    background-color: var(--secondary);
    border-color: transparent;
    color: var(--white);
}
.btn-default {
    background-color: var(--greyblue-light);
    border-color: transparent;
    color: black;
}
.btn-success {
    background-color: var(--greyblue);
    border-color: transparent;
    color: var(--white);
}
.btn-info {
    background-color: var(--secondary);
    border-color: transparent;
}
.btn-light {
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 0.06em;
    background-color: var(--bg-mid);
}

.btn-white {
    background-color: var(--white);
    color: var(--primary);
}

.btn-lightgrey {
    background-color: var(--bg-highlight);
    color: var(--black);
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--primary-dark);
    border-color: transparent;
}
.btn-primary-dark:hover,
.btn-primary-dark:focus {
    background-color: var(--primary);
    border-color: transparent;
    color: white;
}
.btn-secondary:hover,
.btn-secondary:focus {
    background-color: var(--secondary-dark);
    border-color: transparent;
    color: var(--white);
}
.btn-default:hover,
.btn-default:focus {
    background-color: var(--primary);
    border-color: transparent;
    color: var(--white);
}
.btn-success:hover,
.btn-success:focus {
    background-color: var(--greyblue-dark);
    border-color: transparent;
}
.btn-info:hover,
.btn-info:focus {
    background-color: var(--secondary-dark);
    border-color: transparent;
}
.btn-white:hover,
.btn-white:focus {
    background-color: var(--primary-light);
    color: var(--white);
}
.btn-lightgrey:hover,
.btn-lightgrey:focus {
    background-color: var(--bg-highlight-overlay);
    color: var(--black);
}

.btn-success:active {
    background-color: var(--greyblue-light);
    border-color: var(--greyblue);
}

.btn-circle {
    border-radius: 50%;
    height: 50px;
    width: 50px;
    padding: 0;
}
.btn-circle > i {
    font-size: 30px;
    vertical-align: middle;
    line-height: 0;
}

/** Flags **/
.flag-report-adaption a {
    padding: 0.5em 1em;
    background-color: var(--secondary);
    color: white;
    border-radius: 4px;
    display: inline-block;
}
.flag-report-adaption a > i {
    margin-right: 0.5em;
}
.flag-report-adaption a:hover,
.flag-report-adaption a:focus {
    background-color: var(--secondary-dark);
    text-decoration: none;
}

.label-with-icon {
    display: flex;
    align-items: center;
    font-weight: bold;
    background-color: rgba(0,0,0,0.35);
    padding: 5px 15px;
    color: white;
    border-radius: 10px;
    margin-right: 4px;
}
.label-with-icon > i {
    margin-right: 10px;
}
.label-with-icon:last-of-type {
    border-right: unset;
}
.page-title-calltoaction > .label-with-icon {
    background-color: var(--secondary);
    padding: 7px 11px;
    border-radius: 4px;
    margin-right: 5px;
}
.page-title-calltoaction a {
    padding: 7px 11px;
    background-color: var(--secondary);
    color: var(--white);
    font-size: 14px;
    display: block;
    border-radius: 4px;
    border: 0px;
    margin-right: 5px;
    font-weight: bold;
}
.page-title-calltoaction a > i {
    margin-right: 5px;
}
.page-title-calltoaction a:hover,
.page-title-calltoaction a:focus {
    background-color: var(--secondary-dark);
    text-decoration: none;
}

@media (min-width: 1600px) {

    .page-title-calltoaction a {
        padding: 10px 15px;
        font-size: 16px;
    }
    .page-title-calltoaction > .label-with-icon {
        padding: 10px 15px;
    }

}

/**
** Vertical Tabs to Horizontal Tabs
**/
.field-group-tabs-wrapper .vertical-tabs > ul.nav-tabs {
    float: none;
    margin-right: 0;
    width: unset;
    padding-bottom: 0;
}
.field-group-tabs-wrapper .vertical-tabs > ul.nav-tabs > li {
    float: left;
    margin-bottom: 0;
}
.field-group-tabs-wrapper .vertical-tabs > ul.nav-tabs > li > a {
    border-radius: 0;
    margin: 0;
    font-size: 12px;
    margin: 0px;
    font-weight: bold;
    text-transform: uppercase;
    color: var(--text-mid);
    border-top: 1px solid var(--bg-highlight);
    border-right: 1px solid var(--bg-highlight);
    border-bottom: 0;
    border-left: 1px solid var(--bg-highlight);
}
.field-group-tabs-wrapper .vertical-tabs > ul.nav-tabs > li.active > a {
    border-color: var(--bg-highlight-overlay);
    box-shadow: unset;
    background-color: white;
}
.field-group-tabs-wrapper .vertical-tabs > ul.nav-tabs > li:last-of-type > a {
    border-left: 0px;
}
.field-group-tabs-wrapper .vertical-tabs .tab-content {
    border: 1px solid var(--bg-highlight-overlay);
    background-color: white;
    padding: 20px;
    border-radius: 0px;
    box-shadow: unset;
}
.field-group-tabs-wrapper .vertical-tabs .tab-content .panel-body {
    padding: 0;
}
.field-group-tabs-wrapper .vertical-tabs .tab-content #comment-form {
    padding: 0;
    border: 0;
    background-color: unset;
    margin: 0 0 2em;
}
.field-group-tabs-wrapper .vertical-tabs .tab-content #comment-list {
    padding: 2em 0 0;
    border-top: 1px solid var(--bg-highlight);
    border-right: 0;
    border-bottom: 0;
    border-left: 0;
    background: unset;
}

/**
** Main header / nav
**/
.navbar-header {
    width: 100%;
    margin: 0px !important;
}
button#toggle-mobile-nav {
    float: left;
    border: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    width: 40px;
    margin-left: 0px;
    margin-top: 10px;
    background: unset;
    border-radius: 50%;
}
button#toggle-mobile-nav:focus,
button#toggle-mobile-nav:hover,
button#toggle-mobile-nav:active {
    background: var(--bg-highlight-overlay);
}
button#toggle-module-nav {
    padding: 13px 0 0;
    margin: 0;
    background-color: unset;
    border: unset;
    float: left;
}
h2.module-lesson-title {
    font-size: 20px;
    line-height: 50px;
    margin: 0;
    padding: 0;
    font-weight: bold;
}
h2.module-lesson-title a {
    color: black;
}
h2.module-lesson-title a:hover,
h2.module-lesson-title a:focus {
    text-decoration: none;
    color: var(--primary-dark);
}
.module-navbar {
    z-index: 1032;
}
.module-navbar .region-navigation {
    float: left;
    margin-left: 1em;
}
.navbar .logo {
    margin-top: 5px;
    margin-bottom: 5px;
}
.navbar .logo.hidden-md.hidden-lg {
    line-height: 60px;
    margin: 0;
}
.navbar-default .navbar-nav > li > a {
    padding-top: 20px;
    padding-bottom: 20px;
    color: var(--text-mid);
    font-weight: bold;
}
.navbar-default .navbar-nav > li.active > a {
    background-color: transparent;
    box-shadow: inset 0 -2px var(--primary);
    color: var(--primary);
}
.user-nav-button {
    float: right;
}
a#openUserNav {
    display: flex;
    height: 60px;
    align-items: center;
    font-weight: bolder;
    color: var(--black);
}
a#openUserNav .user-avatar > img {
    margin: auto 0px;
    border-radius: 50%;
    max-width: 40px;
}
a#openUserNav .user-name {
    padding: 20px 0;
}
a#openUserNav:hover,
a#openUserNav:focus {
    text-decoration: none;
    cursor: pointer;
    color: var(--primary);
}

@media (min-width: 768px) {
    .navbar-header {
        width: 16%;
        min-width: 300px;
    }
    a#openUserNav .user-avatar > img {
        margin: 5px 15px 5px 0;
    }
}

/**
** Main Nav Tabs
**/
.region-content > nav.tabs {
    margin-bottom: 20px;
}

/**
** Offcanvas Right
**/
button#close-sidebar-off-right {
    background: rgba(255,255,255,0.25);
    float: right;
    margin: 10px 10px 0 0;
    border: 0;
    width: 30px;
    height: 30px;
    text-align: center;
    border-radius: 50%;
    display: none;
}
button#close-sidebar-off-right svg {
    fill: var(--white);
    width: 10px;
}
#block-placeholderuserinfoinoffcanvasblock {
    background: linear-gradient(to bottom right, var(--primary), var(--primary-dark));
    padding: 20px;
    height: 150px;
    color: #FFF;  
}

/**
** Offcanvas Left
**/
button#close-sidebar-off-left {
    background: rgba(255,255,255,0.25);
    float: right;
    margin: 10px 10px 0 0;
    border: 0;
    width: 30px;
    height: 30px;
    text-align: center;
    border-radius: 50%;
    display: none;
}
button#close-sidebar-off-left svg {
    fill: var(--white);
    width: 10px;
}

.sidebar-offcanvas-left .view-header > a {
    padding: 1em;
    display: block;
    text-align: center;
    background-color: var(--secondary);
    color: white; 
}

.module-nav-item > a {
    display: block;
    margin: 0;
    padding: 1em;
    border-bottom: 1px solid var(--bg-highlight-overlay);
    color: black;
    background-color: unset;
}
.module-nav-item > a .mnav-counter {
    font-size: 0.8em;
    display: block;
}
.module-nav-item > a .mnav-title {
    font-weight: bold;
}
.module-nav-item > a.active {
    background-color: var(--bg-lightest);
    color: var(--primary-dark);
}
.module-nav-item > a:hover,
.module-nav-item > a:focus {
    text-decoration: none;
    background-color: var(--bg-mid);
    color: var(--primary);
}

/**
** Vertical Nav
**/
nav.vertical-nav > ul.menu > li > a {
    padding: 15px 30px;
    /* font-weight: bold; */
    color: var(--black);
    opacity: 0.75;
}
nav.vertical-nav > ul.menu > li.menu-icon > a {
    background-position: 15px center;
    background-size: 24px;
    padding: 15px 15px 15px 80px;
    /* font-weight: bold; */
    color: var(--black);
    opacity: 0.75;
}
nav.vertical-nav > ul.menu > li.menu-icon.active > a.is-active,
nav.vertical-nav > ul.menu > li.menu-icon > a.is-active,
nav.vertical-nav > ul.menu > li.menu-icon.active > a,
nav.vertical-nav > ul.menu > li.active > a.is-active {
    background-color: var(--bg-highlight);
    color: var(--primary);
    opacity: 1;
}
nav.vertical-nav > ul.menu > li.menu-icon > a:hover,
nav.vertical-nav > ul.menu > li.menu-icon > a:focus {
    background-color: var(--bg-highlight-overlay);
    opacity: 1;
}
nav.vertical-nav > ul.menu > li.menu-icon.active > a.is-active:hover
nav.vertical-nav > ul.menu > li.menu-icon.active > a.is-active:focus,
nav.vertical-nav > ul.menu > li.menu-icon > a.is-active:hover,
nav.vertical-nav > ul.menu > li.menu-icon > a.is-active:focus,
nav.vertical-nav > ul.menu > li.menu-icon.active > a:hover,
nav.vertical-nav > ul.menu > li.menu-icon.active > a:focus {
    background-color: var(--bg-highlight-overlay);
    opacity: 1;
}
nav.vertical-nav > ul.menu > li:not(.menu-icon) {
    border-bottom: 1px solid var(--bg-highlight);
    margin: 10px 0;
}
nav.vertical-nav > ul.menu > li:not(.menu-icon) > span {
    display: none;
}

@media (min-width: 768px) {
    nav.vertical-nav > ul.menu > li.menu-icon > a {
        background-position: 28px center;
    }
}

/**
** Page Title Region (#page-header)
**/
#page-header {
    margin: 0 -15px 15px;
}
/** Page Header for Clone/Remix **/
body.user-logged-in.path-clone #page-header {
    margin-bottom: 0;
}
body.user-logged-in.path-clone #page-header .clone-page-header {
    padding: 1em;
    background-color: var(--secondary);
    color: white;
}

#page-header .page-title-block {
    background: var(--primary-dark);
    color: var(--white);
    background-image: url(/themes/custom/learnful-theme/assets/images/bgs/always-grey.png);
}
#block-views-block-page-title-dynamic-tutorialnode.page-title-block {
    background-color: var(--primary-dark);
    background-image: unset;
    padding: 15px 0;
}
#block-pagetitleblockfindadesigner.page-title-block {
    background-image: url(/themes/custom/learnful-theme/assets/images/bgs/gplay.png);
}
#block-pagetitleblockbrowseprojects.page-title-block {
    background-image: url(/themes/custom/learnful-theme/assets/images/bgs/inspiration-geometry.png);
}
#block-pagetitlecreatelandingpage.page-title-block {
    background-image: url(/themes/custom/learnful-theme/assets/images/bgs/gplay.png), linear-gradient(to bottom right, var(--primary-dark), var(--primary));
}
#block-pagetitleblockcompetitions.page-title-block {
    background-image: url(/themes/custom/learnful-theme/assets/images/bgs/bright-squares.png), linear-gradient(to bottom right, var(--red), var(--primary));
}
#block-pagetitleblockawards.page-title-block {
    background-image: url(/themes/custom/learnful-theme/assets/images/bgs/dark-mosaic.png);
}
#block-hubsheader.page-title-block {
    background-image: url(/themes/custom/learnful-theme/assets/images/bgs/bright-squares.png), linear-gradient(to bottom right, var(--greyblue-dark), var(--primary-dark));
}
#block-marketplaceheader.page-title-block {
    background-image: url(/themes/custom/learnful-theme/assets/images/bgs/gplay.png), linear-gradient(to bottom right, var(--primary), var(--red-dark));
}

#block-pagetitleblockforums.page-title-block,
.path-forum  #page-header .page-title-block,
.page-node-type-forum  #page-header .page-title-block {
    background-color: var(--greyblue-dark);
    background-image: url(/themes/custom/learnful-theme/assets/images/bgs/batthern.png);
}




#page-header .page-title-block .block-content--type-page-title-image {
    max-width: 1200px;
    margin: auto;
    padding: 15px;
}
#page-header .page-title-block .view-page-title-dynamic-user,
#page-header .page-title-block .view-page-title-dynamic-forums {
    max-width: 1200px;
    margin: auto;
    padding: 15px;
}

.page-title-image {
    float: left;
    margin-right: 5%;
    width: 15%;
}
.page-title-text {
    float: left;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 50px;
    width: 80%;
}
h1.page-title-title {
    font-size: 18px;
    font-weight: 800;
    margin: 0 0 5px 0;
}
h1.page-title-title > a {
    color: var(--white);
    background: rgba(0,0,0,0.35);
    padding: 0 0px;
}
.page-title-subtitle {
    font-size: 12px;
}
.page-title-subtitle > a {
    color: #fff;
    font-weight: bold;
}
.page-title-calltoaction {
    float: right;
    display: flex;
    height: 100px;
    flex-direction: row;
    align-items: center;
}
.page-title-calltoaction > a.btn {
    margin: 0 0 5px 5px;
}
.page-title-tabs {
    padding: 30px 0 0;
    clear: both;
    display: flex;
    justify-content: space-between;
}
.region-header-nav {
    /* max-width: 1200px;
    margin: auto; */
    background: var(--bg-mid);
    border-bottom: 1px solid var(--bg-highlight-overlay);
}
.region-header-nav > nav {
    background-color: var(--white);
    border-bottom: 1px solid var(--bg-highlight-overlay);
}
.region-header-nav > nav > ul.menu {
    max-width: 1200px;
    margin: auto;
    overflow: scroll;
    white-space: nowrap;
}
.region-header-nav > .views-exposed-form {
    max-width: 1200px;
    margin: auto;
}
.region-header-nav > nav > ul.menu > li {
    margin-top: 0;
    display: inline-block;
    font-size: 14px;
}
.region-header-nav > nav > ul.menu > li > a {
    border-bottom: 1px solid;
    padding: 10px 20px;
    color: var(--text-mid);
    font-weight: bold;
    font-size: 14px;
    border-color: transparent;
}
.region-header-nav > nav > ul.menu > li.active > a.active-trail,
.region-header-nav > nav > ul.menu > li > a.is-active {
    border-color: inherit;
    color: var(--primary);
}
.region-header-nav > nav > ul.menu > li > a:hover,
.region-header-nav > nav > ul.menu > li > a:focus {
    background-color: var(--bg-highlight);
}

@media (min-width: 768px) {
    #page-header {
        margin-bottom: 30px;
    }
    body.node-add-edit #page-header {
        margin-bottom: 0px;
    }
    #page-header .page-title-block .block-content--type-page-title-image {
        padding: 0 25px;
    }
    /* #page-header .page-title-block {
        padding: 30px 0 0;
    } */
    /* #page-header .page-title-block.views-element-container {
        padding-bottom: 30px;
    } */
    .page-title-image {
        margin-right: 30px;
        width: unset;
    }
    .page-title-text {
        width: unset;
        height: 100px;
        max-width: 80%;
    }
    h1.page-title-title {
        font-size: 26px;
    }
    .page-title-subtitle {
        font-size: 16px;
    }
    
}
@media (min-width: 992px) {
    #page-header .page-title-block .block-content--type-page-title-image {
        padding: 25px;
    }
    h1.page-title-title {
        font-size: 20px;
    }
    .page-title-subtitle {
        font-size: 14px;
    }
    .page-title-image {
        max-width: 50px;
    }
    .page-title-text {
        height: 50px;
        max-width: 57%;
    }
    .page-title-calltoaction {
        height: 50px;
    }
    .region-header-nav > nav > ul.menu {
        overflow: unset;
        white-space: unset;
    }
}

@media (min-width: 1600px) {
    #page-header .page-title-block .block-content--type-page-title-image {
        padding: 0px;
    }
    #page-header .page-title-block .view-page-title-dynamic-user {
        padding: 15px 0;
    }
    .page-title-image {
        max-width: unset;
    }
    .page-title-text {
        height: 100px;
        max-width: 55%;
    }
    .page-title-calltoaction {
        height: 100px;
        font-weight: bold;
    }
    h1.page-title-title {
        font-size: 26px;
    }
    .page-title-subtitle {
        font-size: 16px;
    }
}


/** 
** Cards
**/
.card {
    background: var(--white);
    /* box-shadow: 0 0 10px 0px rgba(0,0,0,0.15);
    border-radius: 4px; */
    border: 1px solid var(--bg-highlight-overlay);
}
.content-card {
    padding: 30px;
}
.content-card > .field {
    margin-bottom: 30px;
}
.content-card > .field:last-of-type {
    margin-bottom: 0px;
}
.content-card > .field > p {
    line-height: 1.7em;
}
.card-large {
    padding: 20px;
}
.card.field {
    margin-bottom: 20px;
    padding: 20px;
}
.card.field.group-card > .field {
    margin-bottom: 1em;
}
.card.field.group-card > .field:last-of-type {
    margin-bottom: 0px;
}
.card.field.group-card > .field > .field--label {
    font-size: 0.8em;
}
.card.card-grid-content {
    margin-bottom: 20px;
}
.card.field.field--name-field-tags > a,
.card.field--name-field-tools > a,
.meta-entry .field--name-field-tags > a {
    padding: 4px 12px;
    background: var(--bg-highlight);
    border-radius: 10px;
    color: var(--black);
    margin: 3px 6px 3px 0;
    display: inline-block;
}
.card.two-col-card {
    border-radius: 0px;
    border: unset;
}
.card.two-col-card .col-2 {
    padding-left: 0px;
}
.card-cover {
    position: relative;
}
.card-cover > .cover-image {
    height: 135px;
    background: linear-gradient(to bottom right,var(--primary), var(--greyblue));
}
.card-cover > .cover-image img {
    object-fit: cover;
    height: 135px;
}
.card-cover > .overlayed-image {
    position: absolute;
    bottom: -50px;
    display: flex;
    justify-content: center;
    width: 100%;
}
.card-cover > .overlayed-image img {
    border: 5px solid white;
}
.card.card-full-width .card-media {
    padding: 0px;
}
.card.card-stacked .card-media {
    position: relative;
    margin-bottom: 30px;
}
.card-media .img-responsive {
    width: 100%;
}
.card-media.circle-image .img-responsive {
    width: unset;
}
.card-media > .card-overlay-top-left {
    position: absolute;
    top: 10px;
    left: 25px;
    max-width: 30px; 
}
.card-media > .card-overlay-top-left img {
    border-radius: 50%;
    border: 2px solid white;
    background-color: white;
}
.card.card-stacked .card-media > a {
    display: block;
}
.card.card-stacked .card-media > a > img,
.card.card-stacked .card-media > img {
    margin: auto;
}
.card.card-stacked .card-media > .card-media-overtop {
    padding: 2px 10px;
    background-color: var(--primary);
    color: var(--white);
    border-radius: 4px;
    position: absolute;
    bottom: -8px;
    left: 0;
    right: 0;
    margin: auto;
    min-width: 100px;
    max-width: 50%;
    text-align: center;
    font-weight: bold;
    font-size: 14px;
}
.card.card-full-width .card-title-region {
    margin-bottom: 15px;
    padding: 5px 20px;
}
.card.card-full-width .card-meta-region {
    padding: 5px 20px;
}
.card.card-full-width .card-meta-region > .metablock {
    display: inline-block;
    margin-right: 5em;
    margin-bottom: 1.5em;
    font-size: 14px;   
}
.metablock span.label-above {
    display: block;
    font-size: 12px;
    color: var(--text-light);
}
.card.card-with-cover .card-body {
    margin-top: 65px;
}
.card.card-stacked .card-body {
    margin-bottom: 15px;
}
.card-body p.pre-title {
    color: var(--text-mid);
    margin-bottom: 5px;
}
.card-body > p {
    font-size: 14px;
    color: var(--text-mid);
    margin: 0 0 5px;
}
.card .card-body.subtext-sm > p {
    font-size: 12px;
    padding-bottom: 5px;
}
.card-grid-content .card-body > p {
    padding: 0 15px;
    margin: 1em 0;
}
.card-grid-content .card-body > p.card-description {
    margin-top: 0px;
}
.card-body > p.card-location > span.glyphicon {
    margin-right: 10px;
}
h3.card-label {
    font-size: 12px;
    margin: 0;
    font-weight: bold;
    text-transform: uppercase;
    color: var(--text-mid);
    margin-bottom: 20px;
}
h3.card-title {
    font-weight: 600;
    font-size: 16px;
    margin: 20px 0 5px;
}
h3.card-title.no-margin {
    margin: unset;
}
.card-grid-content h3.card-title {
    padding: 10px 15px 0;
    margin: 0;
}
.card-with-cover h3.card-title {
    margin: 0 0 10px;
}
.card-body.subtext-sm h3.card-title {
    padding: 15px;
}
p.card-primary-text {
    margin: 0;
}
p.card-secondary-text {
    margin: 0;
    font-size: 14px;
    color: var(--text-mid);
}

.card.card-stacked .card-action {
    border-top: 1px solid var(--bg-highlight);
    padding-top: 12px;
}
.card.card-stacked .card-action > a {
    font-size: 14px;
    padding: 6px 10px;
    background-color: var(--bg-lightest);
    border-radius: 16px;
    color: var(--primary);
    font-weight: bold;
    display: block;
    text-align: center;
}
.card.card-stacked .card-action > a:hover,
.card.card-stacked .card-action > a:focus {
    text-decoration: none;
    background-color: var(--bg-highlight);
}

.card-links > a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    margin-right: 5px;
    border-radius: 50%;
    background-color: var(--text-mid);
    color: var(--white);
    font-size: 15px;
}
.card-links > a:hover,
.card-links > a:focus {
    background-color: var(--black);
    text-decoration: none;
}

.card-footer {
    padding: 10px 15px;
    margin-top: 10px;
    border-top: 1px solid var(--bg-highlight);
    font-size: 12px;
}
.card.card-full-width .card-footer {
    padding: 10px 20px;
}
.card-footer span.card-stat {
    margin-right: 15px;
    color: var(--text-light);
}
.card-footer span.card-stat > i,
.card-footer span.card-stat > span {
    margin-right: 3px;
}

.card-footer .card-footer-left {
    float: left;
}
.card-footer .card-footer-right {
    float: right;
}
.card-footer .card-footer-right > a {
    margin-left: 10px;
}

.card-manage-region {
    margin: 20px 0;
    padding: 20px 0;
    border-top: 1px solid var(--bg-highlight);
    border-bottom: 1px solid var(--bg-highlight);
}
.card-manage-region > a {
    display: block;
    border-radius: 20px;
    background-color: var(--bg-lightest);
    color: var(--primary);
    font-size: 14px;
}
.card-manage-region > a:hover,
.card-manage-region > a:focus {
    background-color: var(--bg-highlight);
    color: var(--primary);
}

.card-stat .view ul.list-inline {
    margin-bottom: 0;
}
.card-stat .view ul.list-inline li {
    margin-right: 5px;
}
.comm_stat.comment::before {
    font-family: "Font Awesome 5 Free";
    content: "\f086";
    margin-right: 5px;
    font-weight: 900;
}
.comm_stat.field_feedback_review::before {
    font-family: "Font Awesome 5 Free";
    content: "\f891";
    margin-right: 5px;
    font-weight: 900;
}
.comm_stat.field_report_adaption::before {
    font-family: "Font Awesome 5 Free";
    content: "\f126";
    margin-right: 5px;
    font-weight: 900;
}

@media (min-width: 768px) {
    .card-large {
        padding: 50px;
    }
    h3.card-title {
        font-size: 18px;
    }
    .card.two-col-card .col-2 {
        padding-left: 15px;
    }
    p.card-primary-text {
        font-size: 12px;
    }
    p.card-secondary-text {
        font-size: 10px;
    }
    .card.card-full-width .card-media {
        padding: 20px;
    }
}
@media (min-width: 992px) {
    p.card-primary-text {
        font-size: 16px;
    }
    p.card-secondary-text {
        font-size: 14px;
    }
    .card.card-full-width .card-title-region {
        margin-bottom: 15px;
        padding: 0;
    }
    .card.card-full-width .card-meta-region {
        padding: 0;
    }
}


/**
** Footer
**/

@media (max-width: 1199px) {
    footer #block-sitefooter {
        text-align: center !important;
    }
    footer #block-sitefooter .footer-right {
        margin-top: 2em;
    }
}

/**
** hypothesis
**/
.annotator-frame {
    margin-top: 60px !important;
    z-index: 1030 !important;
}

/**
** Global Styles
**/

.launch-tutorial-button {
    position: fixed;
    bottom: 200px;
    right: 1em;
    z-index: 1041;
}

.display-inline {
    display: inline-block;
}
.circle-image img {
    border-radius: 50%;
}
.gradient-bg {
    background: linear-gradient(to bottom right, var(--primary), var(--primary-dark));
    color: var(--white);
}
.gradient-bg.with-texture {
    background-image: url(/themes/custom/learnful-theme/assets/images/bgs/gplay.png), linear-gradient(to bottom right, var(--red), var(--primary));
}
.label {
    padding: 0.2em 0.6em;
}
span.label.secondary {
    background-color: var(--secondary);
    color: var(--white);
    font-size: 12px;
}
span.label.label-greyblue {
    background-color: var(--greyblue);
    color: var(--white);
    font-size: 12px;
    font-weight: normal;
    padding: 4px 11px;
}
.text-mid {
    color: var(--text-mid);
}
body:not(.user-logged-in) .for-member {
    display: none;
}
body.user-logged-in .for-guest {
    display: none;
}
.tabledrag-toggle-weight {
    display: none;
}
.alert {
    margin: 0 -15px;
    border-radius: 0;
}
.alert.alert-default {
    background-color: var(--bg-highlight);
}

.well {
    padding: 20px;
    border: 1px solid var(--bg-highlight-overlay);
    box-shadow: unset;
    border-radius: 0px;
}
.well.well-white {
    background-color: var(--white);
}
.well.has-header-btn {
    position: relative;
}
.well.has-header-btn > div:first-of-type > p > a.btn {
    position: absolute;
    top: 15px;
    right: 15px;
}
.well > h2 {
    font-size: 14px;
    margin: 0 0 15px;
    font-weight: bold;
    color: var(--primary);
}
p.can-expand {
    font-size: 12px;
    overflow: hidden;
    margin-top: 20px;
    /* height: 60px; */
}
div.can-expand {
    overflow: hidden;
}
a[data-readmore-toggle] {
    font-size: 10px;
    color: var(--primary);
    font-weight: bold;
    text-transform: uppercase;
    display: block;
    margin-top: 1em;
}

ul.inline-items {
    margin: 0;
    padding: 0;
    display: inline-block; 
}
ul.inline-items > li.inline-item {
    display: inline-block;
    width: auto;
    font-size: 0.8em;
    padding: 5px 10px;
    background-color: var(--bg-highlight);
    margin: 0 5px 5px 0;
    border-radius: 3px;
    font-weight: normal;
}

@media (min-width: 768px) {
    span.label.secondary {
        font-size: 14px;
    }
    .well > h2 {
        font-size: 20px;
    }
    /* p.can-expand {
        height: 130px;
    } */
}


/** Custom checkbox **/
.use-custom-checkbox input {
    opacity: 0;
}
.use-custom-checkbox .custom-checkbox {
    display: block;
    width: 20px;
    height: 20px;
    border: 2px solid var(--text-mid);
    border-radius: 5px;
    background-color: white;
    box-shadow: 2px 2px 4px 0px rgba(0,0,0,0.4);
}
.use-custom-checkbox:hover .custom-checkbox {
    background-color: var(--primary);
    border-color: var(--primary);
}
.use-custom-checkbox input:checked ~ .custom-checkbox {
    background-color: var(--primary-dark);
    border-color: var(--primary-dark);
}
.use-custom-checkbox .custom-checkbox:after {
    content: "";
    position: absolute;
    display: none;
}
.use-custom-checkbox input:checked ~ .custom-checkbox:after {
    display: block;
    left: 12px;
    top: 6px;
    width: 7px;
    height: 15px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg); 
}

/** Custom checkbox **/
.use-custom-radio input {
    opacity: 0;
}
.use-custom-radio .custom-radio {
    display: block;
    width: 20px;
    height: 20px;
    border: 2px solid var(--text-mid);
    border-radius: 50%;
    background-color: white;
    box-shadow: 2px 2px 4px 0px rgba(0,0,0,0.4);
}
.use-custom-radio:hover .custom-radio {
    background-color: var(--primary);
    border-color: var(--primary);
}
.use-custom-radio input:checked ~ .custom-radio {
    background-color: var(--primary-dark);
    border-color: var(--primary-dark);
}
.use-custom-radio .custom-radio:after {
    content: "";
    position: absolute;
    display: none;
}
.use-custom-radio input:checked ~ .custom-radio:after {
    display: block;
    left: 12px;
    top: 6px;
    width: 7px;
    height: 15px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg); 
}


/**
** Spacing Utilities
**/
.pad-0 {
    padding: 0;
}
.pad-1 {
    padding: 1em;
}
.pad-2 {
    padding: 2em;
}
.pad-3 {
    padding: 3em;
}
.pad-4 {
    padding: 4em;
}
.pad-5 {
    padding: 5em;
}
.pt-0 {
    padding-top: 0 !important;
}
.pt-1 {
    padding-top: 1em !important;
}
.pt-2 {
    padding-top: 2em;
}
.pt-3 {
    padding-top: 3em;
}
.pt-4 {
    padding-top: 4em;
}
.pt-5 {
    padding-top: 5em;
}
.pb-0 {
    padding-bottom: 0;
}
.pb-1 {
    padding-bottom: 1em;
}
.pb-2 {
    padding-bottom: 2em;
}
.pb-3 {
    padding-bottom: 3em;
}
.pb-4 {
    padding-bottom: 4em;
}
.pb-5 {
    padding-bottom: 5em;
}
.ph-0 {
    padding-right: 0;
    padding-left: 0;
}
.ph-1 {
    padding-right: 1em;
    padding-left: 1em;
}
.ph-2 {
    padding-right: 2em;
    padding-left: 2em;
}
.ph-3 {
    padding-right: 3em;
    padding-left: 3em;
}
.ph-4 {
    padding-right: 4em;
    padding-left: 4em;
}
.ph-5 {
    padding-right: 5em;
    padding-left: 5em;
}
.pv-0 {
    padding-top: 0;
    padding-bottom: 0;
}
.pv-1 {
    padding-top: 1em;
    padding-bottom: 1em;
}
.pv-2 {
    padding-top: 2em;
    padding-bottom: 2em;
}
.pv-3 {
    padding-top: 3em;
    padding-bottom: 3em;
}
.pv-4 {
    padding-top: 4em;
    padding-bottom: 4em;
}
.pv-5 {
    padding-top: 5em;
    padding-bottom: 5em;
}


.mv-0 {
    margin-top: 0em;
    margin-bottom: 0em;
}
.mv-1 {
    margin-top: 1em;
    margin-bottom: 1em;
}
.mv-2 {
    margin-top: 2em;
    margin-bottom: 2em;
}
.mv-3 {
    margin-top: 3em;
    margin-bottom: 3em;
}
.mv-4 {
    margin-top: 4em;
    margin-bottom: 4em;
}
.mv-5 {
    margin-top: 5em;
    margin-bottom: 5em;
}
.mb-1 {
    margin-bottom: 1em;
}
.mb-2 {
    margin-bottom: 2em;
}
.mb-3 {
    margin-bottom: 3em;
}
.mb-4 {
    margin-bottom: 4em;
}
.mb-5 {
    margin-bottom: 5em;
}
.mt-1 {
    margin-top: 1em;
}
.mt-2 {
    margin-top: 2em;
}
.mt-3 {
    margin-top: 3em;
}
.mt-4 {
    margin-top: 4em;
}
.mt-5 {
    margin-top: 5em;
}
.mr-1 {
    margin-right: 1em;
}
.mr-2 {
    margin-right: 2em;
}
.mr-3 {
    margin-right: 3em;
}
.mr-4 {
    margin-right: 4em;
}
.mr-5 {
    margin-right: 5em;
}
.ml-1 {
    margin-left: 1em;
}
.ml-2 {
    margin-left: 2em;
}
.ml-3 {
    margin-left: 3em;
}
.ml-4 {
    margin-left: 4em;
}
.ml-5 {
    margin-left: 5em;
}