﻿@font-face {
    font-family: 'oswaldheavy';
    src: url("../fonts/heavyoswald-webfont.51c074b9cbb3.woff2") format("woff2"), url("../fonts/heavyoswald-webfont.859781456e12.woff") format("woff");
    font-weight: bold;
    font-style: normal
}

@font-face {
    font-family: 'gitlab_sans';
    src: url("../fonts/GitLabSans-Italic.46a806094bb6.woff2") format("woff2");
    font-style: italic
}

@font-face {
    font-family: 'gitlab_sans';
    src: url("../fonts/GitLabSans.70b05f2f2a8b.woff2") format("woff2");
    font-style: normal
}

a#skip-to-content {
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden
}

a#skip-to-content:focus, a#skip-to-content:active {
    position: absolute;
    z-index: 100;
    top: 0;
    width: initial;
    height: initial;
    left: 0;
    background-color: #fff;
    padding: 0.5rem;
    font-size: 20px;
    border: 2px solid #0b0a0a
}

.content a {
    text-decoration: underline;
    text-decoration-color: #e3081300;
    transition: .3s
}

.content a:hover {
    text-decoration-color: #e30813
}

a {
    color: #e30813
}

a.pagination-link, a.pagination-next, a.pagination-previous {
    text-decoration: none
}

a.pagination-link.is-current {
    background-color: #e30813;
    text-decoration-color: #e30813
}

a.pagination-link.is-current:hover {
    background-color: #ff0f0f
}

a.main-link {
    color: #4d4747
}

a.main-link:hover {
    color: #e30813;
    text-decoration-color: #e3081363
}

main a:hover, footer a:hover {
    text-decoration: underline
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0
}

.list-style-none {
    list-style: none !important
}

.button.is-primary {
    background-color: #e30813
}

.button.is-primary:hover {
    background-color: #ff0f0f
}

h1, h2, h3, h4, h5, h6, .title {
    font-family: "oswaldheavy", "gitlab_sans", "Ubuntu", "Helvetica Neue", "Helvetica", "Arial", sans-serif
}

.h1-title, .content h1.h1-title {
    text-shadow: 1px 1px 1px #322;
    font-size: 3rem;
    color: #e30813
}

.h2-title, .content h2.h2-title {
    text-shadow: 1px 1px 1px #322;
    font-size: 2.5rem;
    color: #e30813
}

.enlarge-link {
    position: relative
}

.enlarge-link .main-link::after {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    content: ''
}

.open {
    display: block !important
}

.navbar-brand {
    height: var(--bulma-navbar-height)
}

.navbar-brand img {
    transform: translateY(-1em);
    transition: all .3s;
    max-height: 6em
}

@media screen and (max-width: 1023px) {
    .navbar-brand img {
        max-height: 5em
    }
}

@media screen and (max-width: 768px) {
    .navbar-brand img {
        max-height: 4em
    }
}

.navbar-brand .navbar-item:hover {
    background-color: transparent
}

.navbar-brand .navbar-item:hover img {
    transform: translateY(-12px)
}

.navbar-menu-container {
    z-index: 10;
    padding: .5em 0 1em 0
}

header.section {
    padding-bottom: 0;
    box-shadow: 2px 2px 1em #0005;
    z-index: 10;
    background-color: #fff;
    position: relative;
    transition: transform .3s
}

@media screen and (max-width: 768px) {
    header.section {
        padding: 2.5em 1em 0 1em
    }
}

@media screen and (min-width: 1024px) {
    header.section {
        position: sticky;
        top: 0;
        left: 0
    }
}

@media screen and (min-width: 1024px) {
    header.section.scrolled {
        transform: translateY(-4.7em)
    }

    header.section.scrolled .container {
        transform: translateY(1em)
    }

    header.section.scrolled #navbar-menu-container {
        background: none
    }

    header.section.scrolled #top-navbar {
        transform: translateY(1em)
    }

    header.section.scrolled #navbar-logo {
        max-height: 2.75rem;
        transform: none
    }
}

@media screen and (min-width: 1024px) {
    .navbar > .container .navbar-brand, .container > .navbar .navbar-brand {
        margin-inline-start: 0
    }
}

.main-content {
    background-image: linear-gradient(to bottom, #333, #666);
    background-color: #666;
    position: relative;
    min-height: 60vh
}

.main-content > .section {
    padding-top: 0;
    padding-bottom: 0
}

.main-content > .section > .container {
    padding: 3.5em 2.5em;
    background: #f9f4f4;
    box-shadow: 2px 2px 1em #0008;
    clip-path: inset(0 -2em 0 -2em);
    min-height: 60vh
}

.breadcrumb ul {
    margin: 0 0 1em 0
}

.breadcrumb a {
    color: #e30813
}

.footer {
    box-shadow: 0 .5em 1em inset #25222255;
    border-radius: 0;
    background-color: #383333;
    color: #b8b2b2
}

.footer a {
    color: #b8b2b2;
    text-decoration: underline;
    transition: all .3s
}

.footer a:hover {
    color: #dddada
}

.banner {
    display: flex;
    flex-direction: column;
    justify-content: flex-end
}

.banner .banner-image {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    background-size: cover;
    min-height: 60vh;
    background-color: #222;
    background-blend-mode: overlay;
    box-shadow: 0 .75em 1em inset #1115;
    background-position: center
}

.banner .banner-image + .section {
    background: #222
}

.banner .title {
    font-weight: bold;
    text-shadow: 2px 2px 4px #000;
    color: #fff;
    line-height: 1
}

.banner .subtitle {
    color: #fff
}

.content-page .main-content.section > .container {
    border: 2em solid #fff;
    background: #fff;
    box-shadow: 2px 2px 1em #3223
}

.subcategory {
    background: #fff;
    padding: 1.25em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-radius: .3em;
    transition: .3s;
    box-shadow: 2px 2px 5px #6660
}

.subcategory:hover {
    transform: translateY(-0.1em);
    box-shadow: 2px 2px 5px #6666
}

.home-hero {
    position: relative;
    box-shadow: 2px 2px 1em #2113
}

.home-banner {
    margin: -3.5rem -2.5rem 2.5rem;
    position: relative
}

.home-banner > img {
    z-index: 0
}

.home-banner .title-wrapper {
    padding: 1em 2em;
    margin: 0;
    z-index: 1
}

.home-banner .title-wrapper .title {
    text-shadow: 2px 2px 1px #322;
    font-size: 4rem
}

.home-banner .title-wrapper .text-wrapper {
    background-color: #fff;
    background-color: #fffc;
    padding: 1em 1em 3em;
    --size: 3em;
    --angle: 120deg;
    mask: conic-gradient(from calc(var(--angle) / -2) at bottom, #0000, #000 1deg calc(var(--angle) - 1deg), #0000 var(--angle)) 50%/var(--size) 100%
}

.home-banner .title-wrapper .link {
    margin-top: 2em
}

.home-banner .title-wrapper .link a {
    display: inline-block;
    padding: .75em 1.75em;
    background: #e30813;
    border: 1px solid #ca0711;
    border-radius: .5em;
    text-decoration: none;
    color: #fff
}

.home-banner .title-wrapper .link a:hover {
    background: #d40712;
    transform: translateX(0.3em)
}

@media screen and (min-width: 769px) {
    .home-banner {
        display: grid;
        grid-template-columns:2fr 1fr 2fr
    }

    .home-banner > img {
        grid-area: 1/1/4/4
    }

    .title-wrapper {
        grid-area: 1/1/2/2
    }
}

.hero-body {
    z-index: 1;
    padding: 2em 0 0 0
}

.list-link-block-container {
    margin: 0 -2.5em !important
}

.list-link-block-container .link-in-list {
    display: flex;
    flex-direction: column;
    text-align: center;
    padding: 6em 2em;
    transition: .5s;
    background: #fbfafa;
    text-decoration: none
}

.list-link-block-container .link-in-list .link-title {
    font-weight: bold;
    margin-bottom: 1.5em;
    border-bottom: 1px solid #e30813;
    font-size: 1.25em;
    padding: 0 0 .75em;
    min-height: 5em;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: "oswaldheavy", sans-serif
}

.list-link-block-container .link-in-list:hover {
    background: #fff;
    text-decoration: none;
    transform: translateY(-0.25em);
    background-color: #f9f4f4
}

.list-link-block-container .link-in-list:hover .link-title {
    border-color: #e30813
}

.list-link-block-container .link-in-list:hover img {
    opacity: 100%
}

.list-link-block-container .link-in-list img {
    max-width: 100px;
    margin: 0 auto;
    opacity: 70%;
    transition: .5s
}

@media screen and (max-width: 1023px) {
    .list-link-block-container .link-in-list {
        padding: 2em 1em
    }

    .list-link-block-container .link-in-list .link-title {
        font-size: 1em
    }

    .list-link-block-container .link-in-list img {
        max-width: 70px
    }
}

.overtitle {
    display: block;
    font-size: .9em;
    margin-bottom: 0.1em;
    color: #e30813
}

article a.button {
    white-space: normal;
    margin: 1em 0;
    text-align: left
}

.sm-article-list-item {
    display: flex;
    background: #fff;
    flex-direction: column;
    justify-content: start;
    position: relative;
    box-shadow: 2px 2px 5px #6660;
    transition: .3s
}

.sm-article-list-item:hover {
    transform: translateY(-0.1em);
    box-shadow: 2px 2px 5px #6666
}

.sm-article-list-item .title-subtitle h3 {
    font-weight: normal;
    font-size: 1.75em
}

.sm-article-list-item .aside {
    justify-self: end;
    margin-top: auto
}

.sm-article-list-item .aside .tag {
    position: relative;
    z-index: 2
}

.sm-article-list-item .page-date {
    font-size: .75em
}

.tag {
    white-space: normal;
    height: auto;
    min-height: 2em;
    padding: .5em .75em
}

a.tag {
    text-decoration: none;
    transition-duration: 0s
}

a.tag:hover {
    background: #e30813;
    text-decoration: none;
    color: #fff
}

.see-all {
    margin-left: auto;
    font-size: 1rem;
    font-family: "gitlab_sans", "Ubuntu", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
    font-weight: normal;
    text-shadow: none;
    color: #e30813
}

.see-all::before {
    content: "› "/""
}

.homepage-actus .sm-article-list-item .title-subtitle h3 {
    font-weight: bold;
    font-size: 1.2rem;
    text-align: center
}

.actus-agenda .actus.column {
    display: flex;
    flex-direction: column
}

.actus-agenda .actus.column .fixed-grid {
    flex-grow: 1
}

@media screen and (max-width: 768px) {
    .actus-agenda .actus.column .fixed-grid .grid {
        display: block
    }

    .actus-agenda .actus.column .fixed-grid .grid .cell {
        margin-bottom: .75em
    }
}

.actus-agenda .actus.column .grid {
    height: 100%
}

.actus-agenda .actus.column .cell {
    background: #fff;
    position: relative;
    padding: 1em;
    transition-duration: .3s;
    box-shadow: 2px 2px 10px #6660;
    display: flex;
    flex-direction: column
}

.actus-agenda .actus.column .cell h3 {
    font-size: 2em
}

.actus-agenda .actus.column .cell .tag {
    position: relative;
    z-index: 1
}

.actus-agenda .actus.column .cell:hover {
    transform: translateY(-0.1em);
    box-shadow: 2px 2px 10px #6666
}

.actus-agenda .agenda ul {
    background: #fff;
    list-style: none;
    margin: 0;
    padding: 1.25em
}

.actus-agenda .agenda ul li {
    padding: 0 0 1.25em;
    transition-duration: .3s
}

.actus-agenda .agenda ul li:hover {
    transform: translateX(0.2em)
}

.actus-agenda .agenda ul li h3 {
    font-family: "gitlab_sans", "Ubuntu", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
    font-weight: bold;
    font-size: 1rem;
    margin: 0
}

.actus-agenda .agenda ul > li + li {
    border-top: 1px solid #e30813;
    padding-top: 1.25em
}

.richtext-image.left {
    float: left;
    margin-right: 1em
}

.richtext-image.right {
    float: right;
    margin-left: 1em
}

.richtext-image.full-width {
    margin: 2em auto
}

.pagination-link:not(.is-current), .pagination-next, .pagination-previous {
    background: #fefefe
}

.pagination-link:not(.is-current):hover, .pagination-next:hover, .pagination-previous:hover {
    text-decoration: none;
    background: #fff
}

.pagination-link:hover {
    text-decoration: none
}

ul.pagination-list {
    margin-inline-start: 0
}

ul.pagination-list li + li {
    margin-top: 0
}

a[href*="component/tag"], a[href*="component/edocman"] {
    display: none
}

.link-hub-page {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.link-hub-page .main-content {
    flex-grow: 1;
    background: #f9f4f4;
}

.link-hub-page .main-content .section {
    padding: 0;
}

.link-hub-page .main-content > .section > .container {
    padding: 1em 2.75em 2.75em;
    background: none;
    box-shadow: none;
    clip-path: initial;
}

.link-hub-logo {
    width: 11em;
}

.link-hub-link {
    display: block;
    background: #fff;
    box-shadow: 2px 2px 5px #666;
    padding: 1em 2.5em;
}

