@font-face{
    font-display:swap;
    font-family:Open Sans;
    font-style:normal;
    font-weight:400;
    src:url(../../files/CSS-Theme/theme/src/fonts/open_sans/open-sans-v40-latin-regular.woff2)format("woff2")
}
@font-face{
    font-display:swap;
    font-family:Open Sans;
    font-style:normal;
    font-weight:700;
    src:url(../../files/CSS-Theme/theme/src/fonts/open_sans/open-sans-v40-latin-700.woff2)format("woff2")
}
@layer reset{
    *,:before,:after{
        box-sizing:border-box
    }
    body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd{
        margin:0
    }
    html{
        scroll-behavior:smooth
    }
    img,picture,svg,video,canvas{
        vertical-align:middle;
        max-width:100%;
        height:auto;
        font-style:italic
    }
    iframe{
        aspect-ratio:16/9;
        max-width:100%;
        height:100%
    }
    input,button,textarea,select{
        font:inherit
    }
    @media (prefers-reduced-motion:reduce){
        html:focus-within{
            scroll-behavior:auto
        }
        *,:before,:after{
            scroll-behavior:auto!important;
            transition-duration:.01ms!important;
            animation-duration:.01ms!important;
            animation-iteration-count:1!important
        }
    }
}
@layer base{
    body{
        background:var(--bg);
        color:var(--clr);
        font-family:Open Sans,Arial,Helvetica,sans-serif;
        font-size:var(--fs);
        font-weight:var(--fw);
        hyphens:auto;
        min-height:100%;
        line-height:1.5;
        overflow-y:scroll;
        @media print{
            &{
                background:0 0;
                font-size:12pt
            }
        }
    }
    h1,h2,h3,h4,h5,h6{
        --_fs-headline:var(--fs,1rem);
        color:currentColor;
        font-family:Open Sans,Arial,Helvetica,sans-serif;
        font-size:var(--_fs-headline);
        hyphens:none;
        text-wrap:balance;
        text-transform:uppercase;
        margin-block:0 .5em;
        font-weight:400;
        line-height:1.1
    }
    h1{
        --_fs-headline:var(--fs-h1)
    }
    h2{
        --_fs-headline:var(--fs-h2)
    }
    h3{
        --_fs-headline:var(--fs-h3)
    }
    h4{
        --_fs-headline:var(--fs-h4)
    }
    h5{
        --_fs-headline:var(--fs-h5)
    }
    h6{
        --_fs-headline:var(--fs-h6)
    }
    p{
        font-size:var(--fs);
        text-wrap:pretty;
        margin-block-end:1.5em
    }
    strong{
        font-weight:700
    }
    a{
        color:var(--clr-link);
        &:is(:hover,:focus){
            text-decoration:none
        }
    }
    address{
        font-style:normal
    }
    figure{
        & a{
            display:block
        }
    }
    figcaption{
        text-align:left;
        padding-block:1em;
        display:inline-block;
        &:empty{
            display:none
        }
    }
    blockquote{
        font-size:var(--fs-200);
        hyphens:none;
        margin-block-end:1em
    }
    .text--quote-author{
        font-size:var(--fs-small)
    }
    nav,.nav{
        position:relative;
        & ul{
            margin:0;
            padding:0;
            list-style:""
        }
        & a{
            color:currentColor
        }
        & a,& a:hover{
            white-space:nowrap;
            text-decoration:none
        }
    }
    label,input,textarea,legend{
        display:block
    }
}
:root{
    --primary:#99161b;
    --secondary:#0e5680;
    --neutral-dark:#252525;
    --neutral-light:#c3c3c3;
    --inverse:#fff;
    --clr:var(--neutral-dark);
    --bg:var(--inverse);
    --fs-100:clamp(.89rem,.25cqi + .81rem,1rem);
    --fs-200:clamp(1rem,.56cqi + .83rem,1.25rem);
    --fs-300:clamp(1.13rem,.97cqi + .83rem,1.56rem);
    --fs-400:clamp(1.27rem,1.53cqi + .81rem,1.95rem);
    --fs-500:clamp(1.42rem,2.26cqi + .75rem,2.44rem);
    --fs-600:clamp(1.6rem,3.22cqi + .64rem,3.05rem);
    --fs-700:clamp(1.8rem,4.47cqi + .46rem,3.81rem);
    --fs-800:clamp(2.03rem,6.09cqi + .2rem,4.77rem);
    --fs-900:clamp(2.28rem,8.18cqi + -.17rem,5.96rem);
    --fs:var(--fs-200);
    --fs-small:var(--fs-100);
    --fw:400;
    --fw-bold:700;
    --fs-h1:var(--fs-700);
    --fs-h2:var(--fs-600);
    --fs-h3:var(--fs-500);
    --fs-h4:var(--fs-400);
    --fs-h5:var(--fs-300);
    --fs-h6:var(--fs-200);
    --clr-link:var(--primary);
    --bg-header:var(--neutral-light);
    --clr-header:var(--clr);
    --bg-footer:var(--neutral-light);
    --clr-footer:var(--clr);
    --nav-color:var(--clr);
    --nav-active-color:var(--primary);
    --nav-item-line-height:1.5;
    --nav-mobile-background:var(--neutral-light);
    --nav-mobile-color:var(--clr);
    --nav-mobile-active-background:var(--neutral-light);
    --nav-mobile-active-color:var(--primary);
    --nav-mobile-active-border-color:var(--primary);
    --nav-mobile-btn-clr:var(--primary);
    --nav-mobile-separator-color:#ffffff1a;
    --nav-mobile-padding:150px 20px 20px;
    --nav-mobile-font-size:18px;
    --nav-mobile-backdrop-height:80px;
    --nav-submenu-background:#fff;
    --nav-burger-line-color:var(--primary);
    --skip-background:var(--neutral-light);
    --skip-color:var(--clr);
    --skip-focus-border-color:var(--primary);
    --svg:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"28\" height=\"28\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"%23262425\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"m9 18 6-6-6-6\"/></svg>")
}
.mod_article{
    &.bg{
        color:var(--inverse);
        background-color:var(--secondary);
        padding-block:1rem
    }
}
[class*=content-]{
    margin-block-end:3.5rem
}
.content-text{
    &.bg{
        padding-block:2rem
    }
    & .rte{
        &>:last-child{
            margin-block-end:0
        }
    }
    & figure{
        grid-template-columns:1fr;
        display:grid;
        &:has(figcaption){
            grid-template-rows:max-content 1fr;
            gap:1rem
        }
    }
}
.media{
    row-gap:1rem
}
.media--above,.media--below{
    & figure{
        @media only screen and (width>=48em){
            &{
                grid-column:2/span 5
            }
        }
    }
}
.media--left{
    & figure{
        @media only screen and (width>=48em){
            &{
                grid-column:2/span 5
            }
        }
    }
    & .rte{
        @media only screen and (width>=48em){
            &{
                grid-column:7/-2
            }
        }
    }
}
.media--right{
    & figure{
        @media only screen and (width>=48em){
            &{
                order:3;
                grid-column:9/-2
            }
        }
    }
    & .rte{
        @media only screen and (width>=48em){
            &{
                grid-column:2/span 7
            }
        }
    }
}
.content-gallery{
    & ul{
        margin:0;
        padding:0;
        list-style:none
    }
    & figure{
        margin:0;
        overflow:hidden
    }
    & figcaption{
        display:none
    }
    & img{
        object-fit:cover
    }
}
.logo{
    max-width:160px;
    margin:0;
    & .content-image{
        margin:0
    }
}
.copyright{
    margin:0
}
.btn-toggle-submenu{
    &:after{
        background:var(--svg)no-repeat center
    }
}
@media only screen and (width>=64em){
    & .navigation-main{
        & :is(a,strong){
            font-weight:400
        }
    }
}
#wrapper{
    grid-template-rows:min-content 1fr min-content;
    grid-template-areas:"header""container""footer";
    min-height:100vh;
    display:grid;
    @supports (min-height:100dvh){
        &{
            min-height:100dvh
        }
    }
}
header{
    background:var(--bg-header);
    color:var(--clr-header);
    grid-area:header;
    padding-block:2rem;
    &>.inside{
        grid-template-columns:minmax(.5rem,1fr) minmax(0,1200px) minmax(.5rem,1fr);
        column-gap:1rem;
        display:grid
    }
}
#container{
    grid-area:container;
    padding-block:2rem
}
@layer main{
    main{
        &>.inside{
            grid-template-columns:minmax(.5rem,1fr) minmax(0,1200px) minmax(.5rem,1fr);
            column-gap:1rem;
            display:grid;
            &>.mod_article{
                grid-column:1/-1;
                grid-template-columns:subgrid;
                display:grid;
                &>*{
                    grid-column:2/-2
                }
            }
        }
    }
}
footer{
    background:var(--bg-footer);
    color:var(--clr-footer);
    grid-area:footer;
    padding-block:2rem;
    &>.inside{
        grid-template-columns:minmax(.5rem,1fr) minmax(0,1200px) minmax(.5rem,1fr);
        column-gap:1rem;
        display:grid
    }
}
.invisible:not(:focus):not(:active){
    clip:rect(0 0 0 0);
    white-space:nowrap;
    clip-path:inset(50%);
    width:1px;
    height:1px;
    position:absolute;
    overflow:hidden
}
.hide{
    clip:rect(0 0 0 0);
    white-space:nowrap;
    clip-path:inset(50%);
    width:1px;
    height:1px;
    position:absolute;
    overflow:hidden;
    & ul{
        margin:0
    }
}
.bg{
    padding-block:2rem;
    & a{
        color:currentColor;
        &:visited{
            color:currentColor
        }
        &:is(:hover,:focus,:active){
            text-decoration:none
        }
    }
    &.fullwidth{
        padding-inline:0
    }
}
.bg--primary{
    background:var(--primary);
    color:var(--inverse)
}
.bg--secondary{
    background:var(--secondary);
    color:var(--inverse)
}
.bg--light{
    background:var(--neutral-light);
    color:var(--clr)
}
.bg--dark{
    background:var(--neutral-dark);
    color:var(--inverse)
}
.fullwidth{
    grid-column:1/-1;
    grid-template-columns:subgrid;
    display:grid;
    &>*{
        grid-column:2/-2
    }
}

