:root{
    --os-font-size:18px;
    --os-font-size-mq-small:16px;
    --os-font-size-5:2.5555555555555554rem;
    --os-font-size-5-mq-small:2rem;
    --os-font-size-4:3.375rem;
    --os-font-size-4-mq-small:3rem;
    --os-font-size-3:2rem;
    --os-font-size-3-mq-small:1.75rem;
    --os-font-size-2:1.2222222222222223;
    --os-font-size-1:1rem;
    --os-font-size-0:0.6666rem;
    --os-font-family:"Inter",sans-serif;
    --os-line-height:1.5em;
    --os-container-margin:auto;
    --os-grid-columns:12;
    --os-grid-columns-gutter:1.6666666666666667rem;
    --os-grid-rows-gutter:1.6666666666666667rem;
    --os-components-margin:6.5rem;
    --os-color-dark:0,0,0;
    --os-color-light:255,255,255;
    --os-color-light-1:229,229,229;
    --os-color-background:255,255,255;
    --os-color-background-alt:32,32,32;
    --os-color-text:0,0,0;
    --os-color-light:152,152,152;
    --os-color-text-alt:255,255,255;
    --os-color-primary:0,31,115;
    --os-color-primary-light:0,69,255;
    --os-easing-01:cubic-bezier(1,0.7,0.4,1);
    --vh:1vh
}
*{
    margin:0;
    padding:0;
    box-sizing:border-box
}
html{
    font-size:var(--os-font-size)
}
@media (max-width:580px){
    html{
        font-size:var(--os-font-size-mq-small)
    }
}
body{
    font-size:1rem;
    font-family:var(--os-font-family);
    font-weight:400;
    line-height:var(--os-line-height);
    color:rgb(var(--os-color-text));
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale
}
::selection{
    background-color:rgb(var(--os-color-primary));
    color:rgb(var(--os-color-text-alt))
}
h1{
    font-size:var(--os-font-size-5);
    font-weight:600;
    line-height:1.391304347826087em
}
@media(max-width:580px){
    h1{
        font-size:var(--os-font-size-5-mq-small)
    }
}
h2{
    font-size:var(--os-font-size-4);
    font-weight:500;
    line-height:1.1111111111111112em
}
@media(max-width:580px){
    h2{
        font-size:var(--os-font-size-4-mq-small)
    }
}
h3{
    font-size:var(--os-font-size-3);
    font-weight:600;
    line-height:1.25em
}
@media(max-width:580px){
    h3{
        font-size:var(--os-font-size-3-mq-small)
    }
}
h4{
    font-size:var(--os-font-size-2);
    line-height:1.5454545454545454em
}
h4,h5{
    font-weight:700
}
h5{
    font-size:var(--os-font-size-1);
    line-height:1.5em
}
h6{
    font-size:var(--os-font-size-0);
    font-weight:600;
    line-height:1.3333333333333333em;
    letter-spacing:.25em;
    text-transform:uppercase
}
@media (max-width:580px){
    h6{
        font-size:var(--os-font-size-small-mq-small)
    }
}
a{
    color:rgb(var(--os-color-primary))
}
a:hover{
    text-decoration:none;
    color:rgb(var(--os-color-primary-light))
}
a:active{
    color:rgba(var(--os-color-primary-light),.5)
}
.m-typo-link{
    position:relative;
    color:rgb(var(--os-color-text));
    text-decoration:none;
    -webkit-user-select:none;
    user-select:none
}
.m-typo-link:before{
    content:"";
    display:block;
    position:absolute;
    bottom:-3px;
    left:0;
    width:100%;
    height:1px;
    background-color:rgb(var(--os-color-text));
    transform-origin:0 0;
    transition:all .4s var(--os-easing-01);
    opacity:1
}
.m-typo-link:hover:before{
    transform:scaleX(.075);
    opacity:.2
}
.m-typo-link:active{
    color:rgba(var(--os-color-text),.5)
}
.m-typo-link.m-typo-link--alt{
    color:rgb(var(--os-color-text-alt))
}
.m-typo-link.m-typo-link--alt:before{
    background-color:rgb(var(--os-color-text-alt))
}
.m-typo-link.m-typo-link--alt:active{
    color:rgba(var(--os-color-text-alt),.5)
}
.m-typo-content>*{
    margin-bottom:var(--os-line-height)
}
.m-typo-content>:last-child{
    margin-bottom:0
}
.os-layout-container{
    margin:0 var(--os-container-margin);
    max-width:70rem;
    padding-left:1rem;
    padding-right:1rem
}
.os-layout-component{
    margin-top:var(--os-grid-rows-gutter)
}
.os-layout-grid{
    display:grid;
    grid-template-columns:repeat(var(--os-grid-columns),minmax(0,1fr));
    grid-column-gap:var(--os-grid-columns-gutter);
    column-gap:var(--os-grid-columns-gutter);
    grid-row-gap:var(--os-grid-columns-gutter);
    row-gap:var(--os-grid-columns-gutter)
}
.os-layout-grid.os-layout-grid--1{
    grid-template-columns:repeat(1,minmax(0,1fr))
}
.os-layout-grid.os-layout-grid--2{
    grid-template-columns:repeat(2,minmax(0,1fr))
}
.os-layout-grid.os-layout-grid--3{
    grid-template-columns:repeat(3,minmax(0,1fr))
}
.os-layout-grid.os-layout-grid--4{
    grid-template-columns:repeat(4,minmax(0,1fr))
}
.os-layout-grid.os-layout-grid--5{
    grid-template-columns:repeat(5,minmax(0,1fr))
}
.os-layout-grid.os-layout-grid--6{
    grid-template-columns:repeat(6,minmax(0,1fr))
}
.os-layout-grid.os-layout-grid--7{
    grid-template-columns:repeat(7,minmax(0,1fr))
}
.os-layout-grid.os-layout-grid--8{
    grid-template-columns:repeat(8,minmax(0,1fr))
}
.os-layout-grid.os-layout-grid--9{
    grid-template-columns:repeat(9,minmax(0,1fr))
}
.os-layout-grid.os-layout-grid--10{
    grid-template-columns:repeat(10,minmax(0,1fr))
}
.os-layout-grid.os-layout-grid--11{
    grid-template-columns:repeat(11,minmax(0,1fr))
}
.os-layout-grid.os-layout-grid--12{
    grid-template-columns:repeat(12,minmax(0,1fr))
}
.os-ui-button{
    display:inline-block;
    background-color:rgb(var(--os-color-primary-light));
    border-radius:.3333333333333333rem;
    font-weight:700;
    font-size:.8888888888888888rem;
    line-height:1.5em;
    padding:.6666666666666666rem 2rem;
    text-decoration:none;
    transition:all .3s var(--os-easing-01)
}
.os-ui-button,.os-ui-button:hover{
    color:rgb(var(--os-color-text-alt))
}
.os-ui-button:hover{
    background-color:rgb(var(--os-color-primary))
}
.os-ui-button:active{
    transition:unset;
    color:rgba(var(--os-color-text-alt),.75);
    background-color:rgb(var(--os-color-primary-light))
}
.os-ui-button.os-ui-button--alt{
    background-color:rgb(var(--os-color-text-alt));
    color:rgb(var(--os-color-text))
}
.os-ui-button.os-ui-button--alt:hover{
    color:rgb(var(--os-color-text-alt));
    background-color:rgb(var(--os-color-primary-light))
}
.os-ui-button.os-ui-button--alt:active{
    color:rgba(var(--os-color-text-alt),.5)
}
.os-ui-link{
    display:inline-block;
    position:relative;
    text-decoration:none
}
.os-ui-link:before{
    content:"";
    display:block;
    position:absolute;
    width:100%;
    bottom:-1px;
    left:0;
    height:1px;
    background-color:rgb(var(--os-color-text));
    transform-origin:0 0;
    transition:transform .3s var(--os-easing-01)
}
.os-ui-link:hover:before{
    transform:scaleX(0)
}
.os-ui-linkarrow{
    display:inline-flex;
    flex-flow:row nowrap;
    justify-content:flex-start;
    align-items:center;
    font-size:.8888888888888888rem;
    font-weight:700;
    line-height:1.5em;
    color:rgb(var(--os-color-text));
    text-decoration:none
}
.os-ui-linkarrow svg{
    display:block;
    width:1.2222222222222223rem;
    height:1.2222222222222223rem;
    margin-right:1.2222222222222223rem;
    transition:transform .3s ease-in-out
}
.os-ui-linkarrow:hover{
    color:rgb(var(--os-color-primary-light))
}
.os-ui-linkarrow:hover svg{
    transform:translateX(.5rem)
}
.os-ui-linkarrow:active{
    color:rgb(var(--os-color-primary))
}
.os-banner{
    background-color:rgb(var(--os-color-light-1));
    padding-top:4rem;
    padding-bottom:4rem;
    margin-top:var(--os-components-margin);
    opacity:0
}
@media(max-width:580px){
    .os-banner{
        padding-top:3.5rem;
        padding-bottom:3.5rem
    }
}
.os-banner.os-banner--active{
    opacity:1
}
.os-banner h5+h3{
    margin-top:1rem
}
.os-banner h3{
    position:relative;
    padding-right:30%
}
@media(max-width:580px){
    .os-banner h3{
        padding-right:0;
        padding-bottom:4rem
    }
}
.os-banner a{
    position:absolute;
    right:0;
    top:calc(50% - 1.55556rem);
    display:flex;
    flex-flow:row nowrap;
    justify-content:center;
    align-items:center;
    background-color:rgb(var(--os-color-primary-light));
    width:3.111111111111111rem;
    height:3.111111111111111rem;
    border-radius:50%
}
@media(max-width:580px){
    .os-banner a{
        bottom:0;
        left:0;
        top:unset
    }
}
.os-banner a svg{
    display:block;
    width:1.4259444444444445rem;
    height:1.4259444444444445rem
}
.os-banner a:hover{
    background-color:rgb(var(--os-color-primary))
}
.os-banner a:active svg{
    opacity:.75
}
.os-boxes{
    padding-top:var(--os-components-margin)
}
.os-boxes .os-boxes-box{
    margin-bottom:4.5rem;
    opacity:0
}
.os-boxes .os-boxes-box.os-boxes-box--active{
    opacity:1
}
.os-boxes .os-boxes-box:last-child{
    margin-bottom:0
}
.os-boxes .os-boxes-box:nth-child(2n) .os-boxes-content{
    order:1;
    grid-column-start:9;
    grid-column-end:13;
    padding-right:3.111111111111111rem;
    padding-left:0
}
@media(max-width:580px){
    .os-boxes .os-boxes-box:nth-child(2n) .os-boxes-content{
        order:0;
        grid-column-start:1;
        grid-column-end:13
    }
}
.os-boxes .os-boxes-box:nth-child(2n) .os-boxes-image{
    grid-column-start:1;
    grid-column-end:8
}
@media(max-width:580px){
    .os-boxes .os-boxes-box:nth-child(2n) .os-boxes-image{
        grid-column-start:1;
        grid-column-end:13
    }
}
.os-boxes .os-boxes-content{
    grid-column-start:1;
    grid-column-end:5;
    display:flex;
    flex-flow:column nowrap;
    justify-content:center;
    align-items:flex-start;
    padding-left:3.111111111111111rem
}
@media(max-width:580px){
    .os-boxes .os-boxes-content{
        grid-column-start:1;
        grid-column-end:13;
        padding-left:0
    }
}
.os-boxes .os-boxes-content h3,.os-boxes .os-boxes-content p{
    margin-bottom:2.111111111111111rem
}
.os-boxes .os-boxes-content p{
    line-height:1.7777777777777777em
}
.os-boxes .os-boxes-image{
    grid-column-start:6;
    grid-column-end:13
}
@media(max-width:580px){
    .os-boxes .os-boxes-image{
        grid-column-start:1;
        grid-column-end:13
    }
}
.os-boxes .os-boxes-image img{
    display:block;
    width:100%;
    height:27rem;
    object-fit:cover;
    object-position:center;
    border-radius:6px
}
.os-contact{
    position:relative;
    padding-top:16rem;
    opacity:0
}
@media(max-width:580px){
    .os-contact{
        padding-top:8rem
    }
}
.os-contact.os-contact--active{
    opacity:1
}
.os-contact h1{
    line-height:1.2em;
    grid-column-start:1;
    grid-column-end:3;
    padding-right:10vw
}
@media(max-width:580px){
    .os-contact h1{
        grid-column-end:4;
        padding-right:0
    }
}
@media(max-width:580px){
    .os-contact .os-contact-info{
        grid-column-start:1;
        grid-column-end:4
    }
}
.os-contact .os-contact-info h1,.os-contact .os-contact-info h2,.os-contact .os-contact-info h3,.os-contact .os-contact-info h4,.os-contact .os-contact-info h5,.os-contact .os-contact-info h6{
    margin-bottom:0
}
.os-contact .os-contact-map{
    grid-column-start:1;
    grid-column-end:4;
    height:22rem;
    margin-top:4rem
}
@media(max-width:580px){
    .os-contact .os-contact-map{
        height:50vh;
        margin-top:0
    }
}
.os-contact .os-contact-map iframe{
    width:100%;
    height:100%
}
.os-footer{
    position:relative;
    padding-top:4.5rem;
    padding-bottom:4.5rem
}
@media(max-width:580px){
    .os-footer{
        padding-top:3.5rem;
        padding-bottom:3.5rem
    }
}
.os-footer .os-footer-column.os-footer-column--1{
    grid-column-start:1;
    grid-column-end:9
}
@media(max-width:580px){
    .os-footer .os-footer-column.os-footer-column--1{
        grid-column-end:13
    }
}
.os-footer .os-footer-column.os-footer-column--2{
    grid-column-start:9;
    grid-column-end:13
}
@media(max-width:580px){
    .os-footer .os-footer-column.os-footer-column--2{
        grid-column-start:1;
        grid-column-end:13
    }
}
.os-footer .os-footer-logo{
    display:block
}
.os-footer .os-footer-logo img{
    display:block;
    width:10.694rem;
    height:auto
}
.os-footer .os-footer-logo:active{
    opacity:.75
}
.os-footer .os-footer-info{
    margin-top:2.2777777777777777rem;
    font-size:.6666666666666666rem;
    line-height:1.5em
}
.os-footer .os-footer-text{
    text-align:right;
    color:rgb(var(--os-color-light));
    font-size:.7777777777777778rem;
    line-height:1.5714285714285714em
}
@media(max-width:580px){
    .os-footer .os-footer-text{
        text-align:left
    }
}
.os-footer .os-footer-text+.os-footer-icons{
    margin-top:2.5555555555555554rem
}
.os-footer .os-footer-icons{
    display:flex;
    flex-flow:row nowrap;
    justify-content:flex-end;
    align-items:center
}
@media(max-width:580px){
    .os-footer .os-footer-icons{
        justify-content:center
    }
}
.os-footer .os-footer-icons a{
    display:block;
    width:1rem;
    height:1rem;
    margin-left:1rem
}
.os-footer .os-footer-icons a:hover svg path{
    fill:rgb(var(--os-color-primary))
}
.os-footer .os-footer-icons a:active{
    opacity:.75
}
.os-footer .os-footer-icons a svg{
    display:block;
    width:100%;
    height:100%
}
.os-footer .os-footer-icons a svg path{
    fill:rgb(var(--os-color-primary-light))
}
.os-gallery{
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    grid-column-gap:var(--os-grid-columns-gutter);
    column-gap:var(--os-grid-columns-gutter);
    grid-row-gap:var(--os-grid-columns-gutter);
    row-gap:var(--os-grid-columns-gutter);
    margin-top:var(--os-components-margin);
    opacity:0;
    grid-template-areas:"one two two" "one three four"
}
@media(max-width:580px){
    .os-gallery{
        grid-template-columns:1fr;
        grid-template-areas:"one" "two" "three" "four"
    }
}
.os-gallery.os-gallery--active{
    opacity:1
}
.os-gallery img{
    display:block;
    width:100%;
    height:20rem;
    object-fit:cover;
    object-position:center;
    border-radius:.3333333333333333rem;
    cursor:pointer
}
@media(max-width:580px){
    .os-gallery img{
        height:calc(100vw - 2rem)
    }
}
.os-gallery img:active{
    opacity:.9;
    transform:scale(.99)
}
.os-gallery img:first-child{
    grid-area:one;
    height:100%
}
@media(max-width:580px){
    .os-gallery img:first-child{
        height:calc(100vw - 2rem)
    }
}
.os-gallery img:nth-child(2){
    grid-area:two
}
.os-gallery img:nth-child(3){
    grid-area:three
}
.os-gallery img:nth-child(4){
    grid-area:four
}
.os-hero{
    height:calc(var(--vh)*100);
    position:relative;
    background-color:rgb(var(--os-color-dark));
    overflow:hidden
}
.os-hero:after{
    content:"";
    position:absolute;
    top:0;
    left:0;
    background-color:rgba(var(--os-color-dark),.5)
}
.os-hero .os-hero-image,.os-hero:after{
    display:block;
    width:100%;
    height:100%
}
.os-hero .os-hero-image{
    object-fit:cover;
    object-position:center
}
.os-hero .os-hero-content{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    display:flex;
    flex-flow:column nowrap;
    justify-content:center;
    align-items:center;
    color:rgb(var(--os-color-text-alt));
    text-align:center;
    z-index:1;
    padding:1rem
}
.os-hero .os-hero-content h1+p{
    margin-top:1rem
}
.os-hero p{
    max-width:31rem;
    font-size:.8888888888888888rem;
    line-height:1.5em
}
.os-hero svg{
    position:absolute;
    width:1.2222222222222223rem;
    height:1.2222222222222223rem;
    left:calc(50% - .61111rem);
    bottom:4.888888888888889rem;
    animation:hero-arrow;
    animation-timing-function:ease-in-out;
    animation-duration:1s;
    animation-direction:alternate;
    animation-iteration-count:infinite;
    z-index:1
}
@keyframes hero-arrow{
    0%{
        transform:translateY(-25%)
    }
    0%{
        transform:translateY(25%)
    }
    to{
        transform:translateY(-25%)
    }
}
.os-hero2{
    height:calc(var(--vh)*100);
    position:relative;
    overflow:hidden;
    background-color:rgb(var(--os-color-dark))
}
.os-hero2:after{
    content:"";
    position:absolute;
    display:block;
    width:100%;
    height:100%;
    top:0;
    left:0;
    background-color:rgba(var(--os-color-dark),.5)
}
.os-hero2 .os-hero2-image{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center
}
.os-hero2 .os-hero2-image2{
    position:absolute;
    bottom:0;
    left:0;
    width:50%;
    height:65%;
    z-index:1
}
@media(min-width:581px) and (max-width:1200px){
    .os-hero2 .os-hero2-image2{
        display:none
    }
}
@media(max-width:580px){
    .os-hero2 .os-hero2-image2{
        display:none
    }
}
.os-hero2 .os-hero2-image2 .swiper-container{
    position:relative;
    height:100%
}
.os-hero2 .os-hero2-image2 img{
    position:absolute;
    display:block;
    width:100%;
    height:100%;
    top:0;
    left:0;
    object-fit:cover;
    object-position:center;
    border-radius:0 .3333333333333333rem 0 0
}
.os-hero2 .os-hero2-text{
    position:absolute;
    bottom:0;
    width:50%;
    right:0;
    padding:0 10% 6rem;
    color:rgb(var(--os-color-text-alt));
    z-index:1
}
@media(min-width:581px) and (max-width:1200px){
    .os-hero2 .os-hero2-text{
        width:100%
    }
}
@media(max-width:580px){
    .os-hero2 .os-hero2-text{
        width:100%;
        padding:0 1rem 1rem
    }
}
.os-hero2 .os-hero2-text h3{
    margin-bottom:3rem
}
@media(min-width:581px) and (max-width:1200px){
    .os-hero2 .os-hero2-text h3{
        margin-bottom:1.5rem
    }
}
@media(max-width:580px){
    .os-hero2 .os-hero2-text h3{
        margin-bottom:1rem
    }
}
.os-imagetitle{
    position:relative;
    height:26.666666666666668rem;
    display:flex;
    flex-flow:column nowrap;
    justify-content:center;
    align-items:center;
    text-align:center;
    color:rgb(var(--os-color-text-alt));
    overflow:hidden;
    background-color:rgb(var(--os-color-dark))
}
@media(max-width:580px){
    .os-imagetitle{
        height:60vh
    }
}
.os-imagetitle .os-imagetitle-image{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background-color:rgba(var(--os-color-dark),.5);
    overflow:hidden
}
.os-imagetitle .os-imagetitle-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    mix-blend-mode:multiply
}
.os-imagetitle h1{
    position:relative;
    padding:3.5rem 1rem 0;
    margin-bottom:1.2777777777777777rem
}
.os-imagetitle p{
    position:relative;
    max-width:33rem;
    padding:0 1rem
}
.os-imagetitle .os-imagetitle-back{
    position:absolute;
    display:inline-flex;
    flex-flow:row nowrap;
    justify-content:flex-start;
    align-items:center;
    left:50%;
    bottom:3rem;
    transform:translateX(-50%);
    color:rgba(var(--os-color-text-alt),.5);
    font-size:.8888888888888888rem;
    font-weight:700;
    text-decoration:none
}
.os-imagetitle .os-imagetitle-back:hover{
    color:rgba(var(--os-color-text-alt),.75)
}
.os-imagetitle .os-imagetitle-back:hover svg{
    transform:rotate(180deg) translateX(-.5rem)
}
.os-imagetitle .os-imagetitle-back:active{
    color:rgba(var(--os-color-text-alt),.5)
}
.os-imagetitle .os-imagetitle-back svg{
    display:block;
    transform:rotate(180deg);
    margin-right:1rem;
    opacity:.5;
    transition:transform .3s ease-in-out
}
.os-info{
    margin-top:var(--os-components-margin);
    overflow:hidden;
    opacity:0
}
.os-info.os-info--active{
    opacity:1
}
.os-info .os-info-image{
    position:relative;
    grid-column-start:1;
    grid-column-end:2;
    height:28.11111111111111rem
}
@media(max-width:580px){
    .os-info .os-info-image{
        grid-column-end:4
    }
}
.os-info .os-info-image img{
    position:absolute;
    top:0;
    right:0;
    width:40vw;
    height:100%;
    object-fit:cover;
    object-position:center;
    border-radius:0 .3333333333333333rem .3333333333333333rem 0
}
@media(max-width:580px){
    .os-info .os-info-image img{
        border-radius:.3333333333333333rem;
        width:100%
    }
}
.os-info .os-info-content{
    grid-column-start:2;
    grid-column-end:4;
    align-self:center;
    margin-left:5.277777777777778rem
}
@media(min-width:581px) and (max-width:1200px){
    .os-info .os-info-content{
        margin-left:0
    }
}
@media(max-width:580px){
    .os-info .os-info-content{
        grid-column-start:1;
        grid-column-end:4;
        margin-left:0
    }
}
.os-info .os-info-content h3{
    font-size:var(--os-font-size-5);
    font-weight:900;
    line-height:1.391304347826087em;
    margin-bottom:3.388888888888889rem
}
@media(min-width:581px) and (max-width:1200px){
    .os-info .os-info-content h3{
        margin-bottom:1.5rem
    }
}
@media(max-width:580px){
    .os-info .os-info-content h3{
        margin-bottom:1rem
    }
}
.os-info .os-info-columns{
    display:flex;
    flex-flow:row nowrap;
    justify-content:space-between;
    align-self:flex-start
}
@media(max-width:580px){
    .os-info .os-info-columns{
        flex-flow:column nowrap;
        justify-content:flex-start
    }
}
.os-info .os-info-column{
    width:calc(50% - 3.47222rem)
}
@media(min-width:581px) and (max-width:1200px){
    .os-info .os-info-column{
        width:calc(50% - .83333rem)
    }
}
@media(max-width:580px){
    .os-info .os-info-column{
        width:100%
    }
}
@media(max-width:580px){
    .os-info .os-info-column:first-child{
        margin-bottom:var(--os-grid-rows-gutter)
    }
}
.os-infocolumns{
    position:relative;
    margin-top:var(--os-components-margin);
    opacity:0
}
.os-infocolumns.os-infocolumns--active{
    opacity:1
}
.os-infocolumns .os-infocolumns-column{
    position:relative
}
@media(max-width:580px){
    .os-infocolumns .os-infocolumns-column{
        grid-column-start:1;
        grid-column-end:4
    }
}
.os-infocolumns .os-infocolumns-column img{
    display:block;
    width:100%;
    min-height:29rem;
    object-position:center;
    object-fit:cover;
    border-radius:.3333333333333333rem
}
@media(min-width:581px) and (max-width:1200px){
    .os-infocolumns .os-infocolumns-column img{
        min-height:100%
    }
}
@media(max-width:580px){
    .os-infocolumns .os-infocolumns-column img{
        min-height:120vw
    }
}
.os-infocolumns .os-infocolumns-column:first-child .os-infocolumns-text{
    padding-right:5.555555555555555rem
}
@media(min-width:581px) and (max-width:1200px){
    .os-infocolumns .os-infocolumns-column:first-child .os-infocolumns-text{
        padding-right:0
    }
}
@media(max-width:580px){
    .os-infocolumns .os-infocolumns-column:first-child .os-infocolumns-text{
        padding-right:0
    }
}
.os-infocolumns .os-infocolumns-column:nth-child(3) .os-infocolumns-text{
    padding-left:5.555555555555555rem
}
@media(min-width:581px) and (max-width:1200px){
    .os-infocolumns .os-infocolumns-column:nth-child(3) .os-infocolumns-text{
        padding-left:0
    }
}
@media(max-width:580px){
    .os-infocolumns .os-infocolumns-column:nth-child(3) .os-infocolumns-text{
        padding-left:0
    }
}
.os-infocolumns .os-infocolumns-text{
    padding-top:2.5rem;
    padding-bottom:2.5rem
}
@media(min-width:581px) and (max-width:1200px){
    .os-infocolumns .os-infocolumns-text{
        padding-top:0;
        padding-bottom:0
    }
}
@media(max-width:580px){
    .os-infocolumns .os-infocolumns-text{
        padding-top:0;
        padding-bottom:0
    }
}
.os-infocolumns .os-infocolumns-text h3{
    margin-bottom:3rem
}
@media(min-width:581px) and (max-width:1200px){
    .os-infocolumns .os-infocolumns-text h3{
        font-size:var(--os-font-size-3-mq-small);
        margin-bottom:1rem
    }
}
@media(max-width:580px){
    .os-infocolumns .os-infocolumns-text h3{
        margin-bottom:1rem
    }
}
@media(min-width:581px) and (max-width:1200px){
    .os-infocolumns .os-infocolumns-text .m-typo-content{
        font-size:.8rem
    }
}
.os-intro{
    text-align:center;
    margin-top:var(--os-components-margin);
    font-size:1.2222222222222223rem;
    line-height:1.4545454545454546em;
    opacity:0
}
.os-intro.os-intro--active{
    opacity:1
}
.os-intro p{
    max-width:58rem;
    margin:0 auto
}
.os-mobilemenu{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:calc(var(--vh)*100);
    z-index:50;
    background-color:rgb(var(--os-color-primary));
    color:rgb(var(--os-color-text-alt));
    -webkit-clip-path:inset(0 0 100% 0);
    clip-path:inset(0 0 100% 0);
    pointer-events:none
}
.os-mobilemenu.os-mobilemenu--active{
    pointer-events:auto;
    -webkit-clip-path:inset(0 0 0 0);
    clip-path:inset(0 0 0 0)
}
.os-mobilemenu .os-mobilemenu-cross{
    position:absolute;
    top:calc(.5rem + 1.9vw);
    right:1rem
}
.os-mobilemenu .os-mobilemenu-cross svg{
    display:block
}
.os-mobilemenu .os-mobilemenu-cross svg path{
    fill:rgb(var(--os-color-text-alt))
}
.os-mobilemenu .os-mobilemenu-cross:active{
    opacity:.5
}
.os-mobilemenu ul{
    display:flex;
    flex-flow:column nowrap;
    justify-content:center;
    align-items:center;
    height:100%
}
.os-mobilemenu ul li{
    display:block
}
.os-mobilemenu ul li a{
    display:block;
    color:rgb(var(--os-color-text-alt));
    text-decoration:none;
    font-size:2rem;
    font-weight:600;
    line-height:1.5em
}
.os-mobilemenu ul li a:before{
    display:none
}
.os-mobilemenu ul.os-mobilemenu-languages{
    position:absolute;
    bottom:1rem;
    left:1rem;
    width:calc(100% - 2rem);
    flex-flow:row nowrap;
    height:auto;
    text-transform:uppercase
}
.os-mobilemenu ul.os-mobilemenu-languages li{
    margin:0 .5rem;
    opacity:.5
}
.os-mobilemenu ul.os-mobilemenu-languages li.os-mobilemenu-language--active{
    opacity:1
}
.os-mobilemenu ul.os-mobilemenu-languages li a{
    font-size:1rem
}
.os-pbottom{
    margin-top:var(--os-components-margin);
    margin-bottom:var(--os-components-margin);
    text-align:center;
    opacity:0
}
.os-pbottom.os-pbottom--active{
    opacity:1
}
.os-pbottom p{
    max-width:30rem;
    margin:0 auto 2.111111111111111rem
}
.os-pbottom .os-pbottom-back{
    margin-top:2rem
}
.os-pbottom .os-pbottom-back a{
    display:inline-flex;
    flex-flow:row nowrap;
    justify-content:center;
    align-items:center;
    font-weight:700;
    font-size:.8888888888888888rem;
    line-height:1.5em;
    text-decoration:none;
    color:rgb(var(--os-color-text));
    opacity:.5;
    transition:opacity .3s ease-in-out
}
.os-pbottom .os-pbottom-back a:hover{
    opacity:1
}
.os-pbottom .os-pbottom-back a:hover svg{
    transform:translateX(.5rem) rotate(180deg)
}
.os-pbottom .os-pbottom-back a:active{
    color:rgb(var(--os-color-primary))
}
.os-pbottom .os-pbottom-back a svg{
    display:inline-block;
    transform:rotate(180deg);
    opacity:.5;
    margin-right:1rem;
    transition:transform .3s ease-in-out
}
.os-pbottom .os-pbottom-back a svg path{
    fill:rgb(var(--os-color-primary))
}
.os-prefooter{
    position:relative;
    background-color:rgb(var(--os-color-primary));
    color:rgb(var(--os-color-text-alt));
    padding-top:7rem;
    padding-bottom:7rem;
    opacity:0
}
@media(max-width:580px){
    .os-prefooter{
        padding-top:3.5rem;
        padding-bottom:3.5rem
    }
}
.os-prefooter.os-prefooter--active{
    opacity:1
}
@media(max-width:580px){
    .os-prefooter h3{
        margin-bottom:1rem
    }
}
.os-prefooter .os-layout-container{
    display:flex;
    flex-flow:row nowrap;
    justify-content:space-between;
    align-items:center
}
@media(max-width:580px){
    .os-prefooter .os-layout-container{
        flex-flow:column nowrap;
        justify-content:flex-start;
        align-items:flex-start
    }
}
.os-prefooter .os-prefooter-actions{
    display:flex;
    flex-flow:row nowrap;
    justify-content:flex-end;
    align-items:center
}
@media(max-width:580px){
    .os-prefooter .os-prefooter-actions{
        justify-content:flex-start;
        width:100%
    }
}
.os-prefooter .os-prefooter-actions .os-ui-button{
    margin-left:2rem
}
.os-prefooter .os-prefooter-actions .os-ui-button:hover{
    color:rgb(var(--os-color-primary-light));
    background-color:rgb(var(--os-color-text-alt))
}
.os-prefooter .os-prefooter-actions .os-ui-button:active{
    color:rgba(var(--os-color-primary-light),.5)
}
.os-prefooter .os-prefooter-actions .os-ui-link{
    color:rgb(var(--os-color-text-alt))
}
.os-prefooter .os-prefooter-actions .os-ui-link:before{
    background-color:rgb(var(--os-color-text-alt))
}
.os-prefooter .os-prefooter-actions .os-ui-link:active{
    color:rgba(var(--os-color-text-alt),.75)
}
.os-products{
    margin-top:var(--os-components-margin);
    display:flex;
    flex-flow:row wrap;
    justify-content:flex-start;
    align-items:flex-start
}
@media(max-width:580px){
    .os-products{
        flex-flow:column nowrap
    }
}
.os-products .os-products-product{
    display:block;
    width:calc(50% - var(--os-grid-columns-gutter)/2);
    color:var(--os-color-text);
    text-decoration:none;
    text-align:center;
    opacity:0
}
@media(max-width:580px){
    .os-products .os-products-product{
        width:100%
    }
}
.os-products .os-products-product.os-products-product--active{
    opacity:1
}
.os-products .os-products-product:nth-child(odd){
    margin-right:var(--os-grid-columns-gutter)
}
@media(max-width:580px){
    .os-products .os-products-product:nth-child(odd){
        margin-top:3rem
    }
}
.os-products .os-products-product:nth-child(2n){
    margin-top:6rem
}
@media(max-width:580px){
    .os-products .os-products-product:nth-child(2n){
        margin-top:3rem
    }
}
@media(max-width:580px){
    .os-products .os-products-product:first-child{
        margin-top:0
    }
}
.os-products .os-products-product:hover h4{
    color:rgb(var(--os-color-primary-light))
}
.os-products .os-products-product:hover .os-products-image{
    transition-timing-function:ease-out;
    transform:translateY(-1rem)
}
.os-products .os-products-product:hover .os-products-image img{
    opacity:.5
}
.os-products .os-products-product:active .os-products-image{
    opacity:.8
}
.os-products .os-products-product .os-products-image{
    position:relative;
    margin-bottom:1rem;
    transition:transform .5s ease-in-out;
    background-color:rgb(var(--os-color-primary))
}
.os-products .os-products-product .os-products-image:before{
    content:"";
    display:block;
    padding-bottom:100%
}
.os-products .os-products-product .os-products-image img{
    display:block;
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    transition:opacity .4s ease-out
}
.os-products .os-products-product h4{
    text-align:center;
    transition:color .4s ease-out
}
.os-stockgrid.os-layout-grid{
    position:relative;
    margin-bottom:var(--os-components-margin);
    grid-row-gap:0;
    row-gap:0
}
@media(min-width:581px) and (max-width:1200px){
    .os-stockgrid.os-layout-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media(max-width:580px){
    .os-stockgrid.os-layout-grid{
        grid-template-columns:repeat(1,minmax(0,1fr))
    }
}
.os-stockgrid.os-layout-grid .os-stockgrid-filters{
    grid-column-start:1;
    grid-column-end:4;
    margin-top:calc(var(--os-components-margin) - 1rem)
}
@media(min-width:581px) and (max-width:1200px){
    .os-stockgrid.os-layout-grid .os-stockgrid-filters{
        grid-column-end:3
    }
}
@media(max-width:580px){
    .os-stockgrid.os-layout-grid .os-stockgrid-filters{
        grid-column-end:2
    }
}
.os-stockgrid.os-layout-grid .os-stockgrid-filters ul{
    display:flex;
    flex-flow:row wrap;
    justify-content:flex-start;
    align-items:center
}
.os-stockgrid.os-layout-grid .os-stockgrid-filters ul li.os-stockgrid-filter{
    list-style-type:none;
    margin:1rem 2rem 0 0
}
.os-stockgrid.os-layout-grid .os-stockgrid-filters ul li.os-stockgrid-filter.os-stockgrid-filter--active a.os-ui-link{
    color:rgb(var(--os-color-primary))
}
.os-stockgrid.os-layout-grid .os-stockgrid-filters ul li.os-stockgrid-filter.os-stockgrid-filter--active a.os-ui-link:before{
    transform:scaleX(1)
}
@media(hover:hover){
    .os-stockgrid.os-layout-grid .os-stockgrid-filters ul li.os-stockgrid-filter.os-stockgrid-filter--active a.os-ui-link:hover:before{
        transform:scaleX(0)
    }
}
.os-stockgrid.os-layout-grid .os-stockgrid-filters ul li.os-stockgrid-filter a.os-ui-link{
    font-weight:600;
    color:var(--os-color-text);
    text-decoration:none
}
.os-stockgrid.os-layout-grid .os-stockgrid-filters ul li.os-stockgrid-filter a.os-ui-link:before{
    transform:scaleX(0);
    background-color:rgb(var(--os-color-primary))
}
@media(hover:hover){
    .os-stockgrid.os-layout-grid .os-stockgrid-filters ul li.os-stockgrid-filter a.os-ui-link:hover:before{
        transform:scaleX(1)
    }
}
.os-stockgrid.os-layout-grid .os-stockgrid-item{
    overflow:hidden;
    flex-shrink:0;
    padding-top:var(--os-components-margin)
}
.os-stockgrid.os-layout-grid .os-stockgrid-item h3{
    font-size:1.3rem
}
.os-stockgrid.os-layout-grid .os-stockgrid-item h3+p{
    font-size:.8888888888888888rem;
    height:calc(var(--os-line-height)*2);
    margin-top:.5rem;
    overflow:hidden;
    line-height:var(--os-line-height)
}
.os-stockgrid.os-layout-grid .os-stockgrid-item h3+p span{
    display:inline-block;
    margin-right:1em
}
.os-stockgrid.os-layout-grid .os-stockgrid-item img{
    display:block;
    width:100%;
    height:17.5vw;
    object-fit:cover;
    object-position:center;
    margin:1rem 0;
    border-radius:.3333333333333333rem
}
@media(max-width:580px){
    .os-stockgrid.os-layout-grid .os-stockgrid-item img{
        height:calc(100vw - 2rem)
    }
}
@media(min-width:581px) and (max-width:1200px){
    .os-stockgrid.os-layout-grid .os-stockgrid-item img{
        height:50vh
    }
}
.os-stockgrid.os-layout-grid .os-stockgrid-actions{
    display:flex;
    flex-flow:row nowrap;
    justify-content:flex-start;
    align-items:center
}
.os-stockgrid.os-layout-grid .os-stockgrid-actions a+a{
    margin-left:2rem
}
.os-stockoffers{
    margin-top:var(--os-components-margin);
    opacity:0
}
.os-stockoffers.os-stockoffers--active{
    opacity:1
}
.os-stockoffers .os-stockoffers-wrapper{
    position:relative;
    height:40rem;
    position:sticky;
    top:1rem;
    overflow:hidden
}
@media(max-width:960px){
    .os-stockoffers .os-stockoffers-wrapper{
        height:auto;
        overflow:scroll;
        -webkit-overflow-scrolling:touch;
        margin-bottom:var(--os-components-margin)
    }
}
.os-stockoffers .os-layout-container{
    position:relative;
    height:100%
}
.os-stockoffers .os-stockoffers-bar{
    display:flex;
    flex-flow:row nowrap;
    justify-content:flex-start;
    align-items:stretch;
    position:absolute;
    top:6rem;
    left:1rem;
    height:100%
}
@media(max-width:960px){
    .os-stockoffers .os-stockoffers-bar{
        position:relative;
        top:0;
        left:0
    }
}
.os-stockoffers .os-stockoffers-bar:after{
    content:"";
    display:none;
    width:1rem;
    height:1rem;
    flex-shrink:0
}
@media(max-width:960px){
    .os-stockoffers .os-stockoffers-bar:after{
        display:block
    }
}
.os-stockoffers .os-stockoffers-item{
    width:30rem;
    margin-right:2rem;
    overflow:hidden;
    flex-shrink:0
}
@media(max-width:960px){
    .os-stockoffers .os-stockoffers-item{
        width:calc(90vw - 2rem)
    }
}
.os-stockoffers .os-stockoffers-item:last-child{
    margin-right:2rem
}
@media(max-width:960px){
    .os-stockoffers .os-stockoffers-item:last-child{
        margin-right:0
    }
}
.os-stockoffers .os-stockoffers-item h3{
    font-size:1.5rem
}
.os-stockoffers .os-stockoffers-item h3+p{
    font-size:.8888888888888888rem;
    margin-top:.5rem
}
.os-stockoffers .os-stockoffers-item h3+p span{
    display:inline-block;
    margin-right:1em
}
.os-stockoffers .os-stockoffers-item img{
    display:block;
    width:100%;
    height:50vh;
    object-fit:cover;
    object-position:center;
    margin:1rem 0;
    border-radius:.3333333333333333rem
}
@media(max-width:580px){
    .os-stockoffers .os-stockoffers-item img{
        height:calc(100vw - 2rem)
    }
}
@media(min-width:581px) and (max-width:1200px){
    .os-stockoffers .os-stockoffers-item img{
        height:50vh
    }
}
.os-stockoffers .os-stockoffers-actions{
    display:flex;
    flex-flow:row nowrap;
    justify-content:flex-start;
    align-items:center
}
.os-stockoffers .os-stockoffers-actions a+a{
    margin-left:2rem
}
.os-top{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    padding:.75rem 2.2222222222222223rem;
    display:flex;
    flex-flow:row nowrap;
    justify-content:space-between;
    align-items:center;
    z-index:10;
    transition:background-color .5s ease-in-out
}
@media(max-width:580px){
    .os-top{
        padding:.5rem 1rem
    }
}
.os-top.os-top--scroll{
    background-color:rgba(var(--os-color-primary),.95)
}
.os-top .os-top-logo{
    display:block
}
.os-top .os-top-logo:active{
    opacity:.75
}
.os-top .os-top-logo img{
    display:block;
    width:15.77777777777778rem;
    height:auto;
    max-height: 2.77rem;
}
@media(max-width:580px){
    .os-top .os-top-logo img{
        width:50vw
    }
}
.os-top .os-top-nav{
    display:flex;
    flex-flow:row nowrap;
    justify-content:flex-start;
    align-items:center;
    line-height:1.3333333333333333rem
}
@media(min-width:581px) and (max-width:1200px){
    .os-top .os-top-nav{
        display:none
    }
}
@media(max-width:580px){
    .os-top .os-top-nav{
        display:none
    }
}
.os-top .os-top-nav ul{
    list-style-type:none;
    display:flex;
    flex-flow:row nowrap;
    justify-content:flex-start;
    align-items:center
}
.os-top .os-top-nav ul li{
    margin-right:2.5rem
}
.os-top .os-top-nav ul li a{
    display:block;
    text-decoration:none;
    color:rgb(var(--os-color-text-alt));
    transition:color .3s var(--os-easing-01)
}
.os-top .os-top-nav ul li a:before{
    background-color:rgb(var(--os-color-text-alt));
    transform:scaleX(0)
}
.os-top .os-top-nav ul li a:hover:before{
    transform:scaleX(1)
}
.os-top .os-top-nav ul li a:active{
    transition:unset;
    color:rgba(var(--os-color-text-alt),.5)
}
.os-top .os-top-mobilenav{
    cursor:pointer;
    display:none
}
@media(min-width:581px) and (max-width:1200px){
    .os-top .os-top-mobilenav{
        display:block
    }
}
@media(max-width:580px){
    .os-top .os-top-mobilenav{
        display:block
    }
}
.os-top .os-top-mobilenav:active svg{
    opacity:.5
}
.os-top .os-top-mobilenav svg{
    display:block
}
.os-top .os-top-mobilenav svg path{
    fill:rgb(var(--os-color-text-alt))
}
.os-top ul.os-top-languages{
    margin:0 2.5rem 0 1rem;
    font-size:.7777777777777778rem;
    text-transform:uppercase;
    letter-spacing:.05em
}
.os-top ul.os-top-languages li.os-top-language{
    margin-right:1rem;
    opacity:.5
}
.os-top ul.os-top-languages li.os-top-language.os-top-language--active{
    opacity:1
}
.os-page--contact .os-top,.os-page--contactos .os-top,.os-page--contattaci .os-top{
    background-color:rgb(var(--os-color-primary))
}
.os-page--contact .os-top.os-top--scroll,.os-page--contactos .os-top.os-top--scroll,.os-page--contattaci .os-top.os-top--scroll{
    background-color:rgba(var(--os-color-primary),.95)
}
.os-top-intersection{
    position:absolute;
    top:0;
    left:0;
    height:1px;
    width:100%
}

a.os-ui-link {
    font-size: 15px;
}
ul.os-top-languages a {
    font-size: 12px;
}
a.os-ui-button {
    font-size: 13px;
}

.os-prefooter {
    margin-top: 6.5rem;
}

@media (max-width: 580px) {
    h3 {
        font-size: 24px!important;
    }
    .os-banner {
        padding-top: 2rem !important;
        padding-bottom: 2rem!important;
    }
    .os-prefooter {
        padding-top: 2rem!important;
        padding-bottom: 2rem!important;
    }
    .os-banner h3 {
        padding-right: 0px!important;
    }
}
.os-hero:after {

    background-color: rgba(var(--os-color-dark),.3);
}

.os-banner {
    padding-top: 2rem;
    padding-bottom: 2rem;
}
.os-banner h3, .os-prefooter h3 {
    font-size: 28px;
}
.os-prefooter {
    padding-top: 3rem;
    padding-bottom: 3rem;
}
.os-banner h3 {
    padding-right: 20%;
}

.os-products .os-products-product .os-products-image img {
    border-radius: 6px;
}
.os-products .os-products-product .os-products-image {
    border-radius: 6px;
}
.os-products .os-products-product:nth-child(2n) {
    margin-top: 0px;
}

/*.os-stockoffers .os-stockoffers-bar {
    top:10rem;
}*/
.os-hero2 .os-hero2-text {
    padding: 0 10% 6rem;
    left: 0;
}

.os-stockoffers .os-stockoffers-item img {
    height: 35vh;
}

:root{ --os-color-primary:11,46,106;
    --os-color-primary-light:72,110,176;
}

.journey-vision {
    width: 100%;
    height: auto;
}

@media (min-width: 844px) {
    .journey-vision {
        width: auto;
        height: 103vh;
        max-width: 100%;
    }
}
