html{
    background-color: var(--color-dark-blue);
    color: var(--color-white);
    font-size: var(--main-font-size);
    font-weight: var(--font-weight-book);
    font-family: 'MierA';
    line-height: 1.2;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    scroll-behavior: smooth;
}
.layout-container{
    padding: 0 var(--margin);
    max-width: var(--max-width);
    margin: 0 auto;
    overflow: clip;
}
@media (min-width: 1080px) {
    .layout-container{
        padding-top: 69px;
    }
}
a[href]{
    color: var(--color-white);
    text-underline-position: under;
    text-decoration-thickness: from-font;
    text-decoration-color: var(--color-scafi-base-bright);
}
.toolbar-tray a[href]{
    color:var(--color-black);
}
.tabs a[href]:hover,
.tabs a[href].is-active{
    color:var(--color-black);
}
img{
    max-width: 100%;
    /*height:fit-content;*/
    display: block;
    height: auto;
}
p{
    margin-top: 0;
    margin-block-end: 1rem;
}
button{
    font-size: var(--font-size-small-caps);
    letter-spacing: var(--letter-spacing-small-caps);
    text-transform:uppercase;
    font-weight: var(--font-weight-book);
}
strong{
    font-weight: var(--font-weight-bold);
}

article.single-page{
    margin-bottom:calc(2 * var(--vgutter));
}
header[role=banner]{
    position: relative;
    max-width: var(--max-width);
}
@media (min-width: 1080px) {
    .toolbar-fixed header[role=banner] {
        top: 39px;
    }
    .toolbar-fixed.toolbar-tray-open header[role=banner] {
        top: 79px;
    }
    header[role=banner]{
        position: sticky;
        top: 0;
        /* width: 100vw; */
        background: var(--color-dark-blue);
        margin: 0 calc(-1 * var(--margin));
        padding: 0 var(--margin);
        z-index: 100;
        border-bottom: 1px solid transparent;
        transition: border-color .3s linear;    
        position: fixed;
        width: calc(100% - 2 * var(--margin));
    }
    .menu-item-opened header[role=banner]{
        /*position: relative;*/
    }
    body.is-scrolled header[role=banner]{
        border-color: var(--color-scafi-base-bright);
    }
}
.region-header{
    display: flex;
}

h2.title{
    margin: 0;
    border-bottom:1px solid var(--color-light-blue);
    /*padding-bottom: 0.2em;*/
    padding-bottom: var(--halfvmargin);
    margin-bottom: var(--vgutter);
}

div[class^='block_']{
    margin-bottom: var(--vgutter);
    margin-top: var(--vgutter);
}
div[class^='block_']>h2.title{
    margin-top: calc(3 * var(--vgutter));
}

@media (min-width: 769px) {
    div.block_introduction .field-text{
        width: calc((10 * var(--col-w)) - var(--gutter));
        width: --col-width(10);
    }
}

div.block_text_and_image,
div.block_introduction{
    margin-top: calc(3 * var(--vgutter));
}
div.block_hero{
    margin-top: calc(5 * var(--vgutter));
}
.block_hero h1.big-title{
    margin:0;
}
.block_hero h1.big-title+h1.big-title{
    color:var(--color-scafi-base-bright);
}
.field-image-desktop{
    margin-right: calc(-1 * var(--margin));
    margin-top: var(--vgutter);
    margin-bottom: var(--vgutter);
}
.block_text .text-wrapper{
    margin-top: var(--vgutter);
    margin-bottom: var(--gutter);
}
@media (min-width: 769px) {
    .block_text .text-wrapper{
        margin-left: calc(4 * var(--col-w));
        margin-left: --col-margin(4);
        width: calc((7 * var(--col-w)) - var(--gutter));
        width: --col-width(7);
    }
    .block_hero .subhead{
        width: calc((10 * var(--col-w)) - var(--gutter));
        width: --col-width(10);
    }
}
.block_text h2{
    border-bottom: 0;
}

.block_stats h2{
    margin-bottom: 0;
}
.item_stats{
    border-bottom: 1px solid var(--color-light-blue);
    display: flex;
}
@media (min-width: 769px) {
    .item_stats{
        margin-left: calc(4 * var(--col-w));
        margin-left: --col-margin(4);
    }
}
.item_stats>*{
    width: 50%;
}
.item_stats>.text-link{
    margin: 1em 0;
}
.block_text_and_image{
    display: flex;
    flex-direction: column;
    gap: var(--gutter);
}

@media (min-width: 769px) {

    .block_text_and_image{
        flex-direction: row;
    }
    .block_text_and_image .field-image {
        margin-left: calc(-1 * var(--margin));
    }
    .block_text_and_image>.image{
        width: calc((6 * var(--col-w)) - var(--gutter));
        width: --col-width(6);
    }
    .block_text_and_image>.text{
        /*
        width: calc((4 * var(--col-w)) - var(--gutter));
        width: --col-width(4);
        */
        margin-left: calc(1 * var(--col-w));
        margin-left: --col-margin(1);
        align-self: center;
        width: calc((5 * var(--col-w)) - var(--gutter));
        width: --col-width(5);
        /*
        position: sticky;
        top: 0;
        align-self: flex-start;
        */
    }
    .field-texts-w-images .block_text_and_image:nth-child(even) .field-image{
        margin-right: calc(-1 * var(--margin));
        margin-left: 0;
    }
    .field-texts-w-images .block_text_and_image:nth-child(even){
        flex-direction: row-reverse;
    }
    .field-texts-w-images .block_text_and_image:nth-child(even)>.text{
        margin-left: 0;
        margin-right: calc(1 * var(--col-w));
        margin-right: --col-margin(1);
    }
}

.component_table .field-heading{
    font-size: var(--font-size-title);
    padding: 0.75em 0;
    padding-top: 0;
}
.component_table ul{
    margin: 0;
    padding: 0;
}
.component_table ul li{
    display: block;
    font-size: var(--font-size-text);
    font-weight: var(--font-weight-book);
    padding: 0.75em 0;
    border-top: 1px solid var(--color-scafi-base-bright);
}

.field-large-table .component_table ul li{
    font-size: var(--font-size-number);
    font-weight: var(--font-weight-number);
    color: var(--color-scafi-base-bright);
    line-height: 100%;
    padding: 0 0 0.2em;
    letter-spacing: -0.05em;
}
.field-large-table .component_table ul li:nth-child(3n+2){
    text-align: right;
}
.field-large-table .component_table ul li:nth-child(3n+3){
    text-align: center;
}





.single-page.fleet{
    margin-top: calc(3 * var(--vgutter));
}
.single-page.fleet h1.big-title{
    margin-bottom: var(--vgutter);
}

.single-page.fleet .block_text_and_image{
    margin-top: 0;
}
.single-page.fleet .block_text_and_image>.text h2{
    margin-top: 0;
}
.single-page.fleet .block_text_and_image{
    flex-direction: column-reverse;
}
@media (min-width: 769px) {
    .single-page.fleet .block_text_and_image>.text{
        position: sticky;
        /*top: 1em; */
        top: calc(var(--margin) * 2);
        height: 100%;
        align-self: auto;
    }
    .single-page.fleet .block_text_and_image{
        flex-direction: row-reverse;
    }
    .single-page.fleet .block_text_and_image>.text{
        margin-left: 0;
        margin-right: calc(var(--col-w) + var(--gutter));
        width: calc(5 * var(--col-w) - var(--gutter));
        width: --col-width(5);
    }
    .single-page.fleet .block_text_and_image>.image{
        width: calc(6 * var(--col-w) - var(--gutter));
        width: --col-width(6);
    }
    .single-page.fleet .block_text_and_image .field-image{
        margin-left: 0;
        margin-right: calc(-1 * var(--margin));
    }
}


.single-page.fleet .block_text_and_image .cta>a[href^='#'] i:before{
    content: "\ea4c";
}
table.fleet{
    width: 100%;
    border-collapse: collapse;
}
table.fleet th{
    width: 25%;
    text-align: left;
    font-weight: var(--font-weight-book);
    font-size: var(--font-size-small-caps);
    letter-spacing: var(--letter-spacing-small-caps);
    text-transform: uppercase;
    padding: 1em 0;
}
table.fleet th a{
    text-decoration: none;
    color: var(--color-white);
}
table.fleet th .tablesort{
    vertical-align: middle;
}
table.fleet th .tablesort--desc{
    background-image: url('/core/misc/icons/FFFFFF/twistie-up.svg');
}
table.fleet th .tablesort--asc{
    background-image: url('/core/misc/icons/FFFFFF/twistie-down.svg');
}
table.fleet tr{
    border-bottom: 1px solid var(--color-scafi-base-bright);
    padding: 1em 0;
}
table.fleet td{
    font-size: var(--font-size-text);
    padding: 1em 0;
}
table.fleet td.col-title{
    line-height: 2rem;
}
table.fleet td.is-active{
    background: none;
}

table.fleet td.col-field-technical-document{
    text-align: right;
}
table.fleet th.mobile-text{
    width: 80%;
}
.col-title,
.col-field-type,
.col-field-company,
.col-field-country,
.views-field-title,
.views-field-field-type,
.views-field-field-company,
.views-field-field-country{
    display: none;
}
@media (min-width: 769px) {
    .col-title,
    .col-field-type,
    .col-field-company,
    .col-field-country{
        display: table-cell;
    }
    .views-field-title,
    .views-field-field-type,
    .views-field-field-company,
    .views-field-field-country{
        display: table-cell;
    }
    .mobile-text{
        display: none;
    }
}
.single-page.fleet .views-exposed-form-fleet-block{
    display: flex;
}

.view-news .views-row{
    clear: both;
}

.view-news .view-head{
    display: flex;
    gap: var(--gutter);
    flex-direction: column;
}
.view-news h1.big-title{
    margin-top: calc(3 * var(--vgutter));
    margin-bottom: var(--vgutter);
}
.view-news h1.big-title,
.fleet-overview h2.title{
    border-bottom: 0;
    padding-bottom: 0;
}
.view-fleet .view-filters {
    clear: both;
}
.view-news .view-filters,
.view-fleet .view-filters {
    margin-bottom: var(--vgutter);
}
@media (min-width: 769px) {
    .view-news .view-head{
        flex-direction: row;
        align-items: flex-end;
    }
    .view-news h1.big-title,
    .fleet-overview h2.title{
        width: calc(6 * var(--col-w) - var(--gutter));
        width: --col-width(6);
        padding-top: 0.25em;
    }
    .fleet-overview h2.title{
        float: left;
    }
    .view-news .view-filters,
    .view-fleet .view-filters {
        width: calc(6 * var(--col-w) - var(--gutter));
        width: --col-width(6);
    }
    .view-fleet .view-filters {
        clear: none;
        float: right;
    }
}
.view-news  .views-exposed-form .form--inline,
.view-fleet .views-exposed-form .form--inline{
    gap:var(--vgutter);
    display: flex;
    flex-wrap: wrap;
}
.view-news  .views-exposed-form .form--inline::after,
.view-fleet .views-exposed-form .form--inline::after{
    display: none;
}
.view-news  .views-exposed-form .form-item,
.view-fleet .views-exposed-form .form-item{
    margin: 0;
    flex-grow: 1;
    float: none;
}
@media (min-width: 769px) {
    .view-news  .views-exposed-form .form-item,
    .view-fleet .views-exposed-form .form-item{
        width: calc(6 * var(--col-w) - var(--gutter));
        width: --col-width(6);
    }
}
.view-news  .views-exposed-form .form-type-select select,
.view-fleet .views-exposed-form .form-type-select select,
.view-news  .views-exposed-form .form-type-textfield input{
    width: 100%;
    max-width: 100%;
}
.view-news  .views-exposed-form .form-type-select label,
.view-fleet .views-exposed-form .form-type-select label{
    display: none;
}
.view-news  .views-exposed-form .form-actions,
.view-fleet .views-exposed-form .form-actions{
    display: none;
}




.splide__spinner {
  display: none;
}
.splide ul,
.splide ol{
    /*gap: var(--vmargin);*/
}
.splide .splide__slide{
    margin-right: var(--gutter);
}
.splide img{
    max-height:600px;
    inline-size:fit-content;
    width: auto;    
}
.splide .splide_footer{
    position: static;
    display: none;
    gap: var(--vmargin);
    margin-top: var(--vgutter);
}
.splide.is-overflow .splide_footer{
    display: flex;
}
.splide .splide__arrows {
  display: flex;
  justify-content: left;
}
.splide .splide__arrow {
font-family: 'remixicon';
  position: static;
  transform: none;
  font-size: var(--font-size-small-icon);
  opacity: 1;
  width: 50px;
  height: 50px;
  border-radius: 0;
  background-color: transparent;
  border: 1px solid var(--color-scafi-base-bright);
  color: var(--color-white);
    margin-right: -1px;
}
.splide .splide__arrow>i {
    overflow: hidden;
    position: relative;
    font-style: normal;
    align-content: space-evenly;
    width: 100%;
    height: 100%;
}
.splide .splide_progress {
  background: var(--color-scafi-base-bright);
    width: 100%;
    margin: 25px 0;
}
  
.splide .splide_progress_bar {
    background: var(--color-white);
    height: 1px;
    transition: width 400ms ease;
    width: 0;
}

div.splide__track{
    overflow: visible;
}
.splide__list .is-b-loading{
    background:none;
}
.splide__list .is-b-loading.is-b-visible::before{
    display: none;
}


div.block_quote{
    margin:calc(3 * var(--vgutter)) 0;
    /*line-height: 1em;*/
}

div.block_quote .field-image{
    margin:var(--vgutter) 0;
    margin-top: 1em;
}
div.block_quote .image-wrapper{ 
    width: calc((6 * var(--col-w)) - var(--gutter));
    width: --col-width(6);
    font-size: var(--font-size-subtext);
}
div.block_quote .image-wrapper .function{
    color:var(--color-scafi-base);
}  
div.block_quote .field-text{
    font-size: var(--font-size-quote);
    font-weight: var(--font-weight-book);
    line-height: 1em;
    font-weight: var(--font-weight-text);
}
@media (min-width: 769px) {
    div.block_quote .field-image{
        margin: 0;
        margin-top: 1em;
    }
    div.block_quote .image-wrapper{ 
        width: calc((2 * var(--col-w)) - var(--gutter));
        width: --col-width(2);
    }
    div.block_quote.has_image .field-text{
        text-indent: calc(2 * var(--col-w));
        text-indent: --col-margin(2);
        margin-top: -1em;
    }
}



ol {
   counter-reset: item;
   list-style-type: decimal;
}
.field-carousel-texts .number:after{
    content:counter(item, decimal);
   counter-increment: item;
}
.field-carousel-texts li{
    width: calc((10 * var(--col-w)) - var(--gutter));
    width: --col-width(10);
    margin-right: var(--vmargin);
    border: 1px solid var(--color-scafi-base-bright);
    aspect-ratio: 6 / 7;
}
@media (min-width: 769px) {
    .field-carousel-texts li{
        width: calc((4 * var(--col-w)) - var(--gutter));
        width: --col-width(4);
    }
}
.field-carousel-texts li>div{
    padding: var(--vmargin);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.field-carousel-texts li{
    position: relative;
    padding-top: calc(((10 * var(--col-w)) - var(--gutter)) * 7 / 6);
    padding-top: calc(--col-width(10) * 7 / 6);
    height: 0;
}
.field-carousel-texts li > * {
  position: absolute;
  inset: 0;
}
@media (min-width: 769px) {
    .field-carousel-texts li{
        position: relative;
        padding-top: calc(((4 * var(--col-w)) - var(--gutter)) * 7 / 6);
        padding-top: calc(--col-width(4) * 7 / 6);
        height: 0;
    }
}



.block_quote_slider li.splide__slide{
    width: 100%;
}
.block_quote_slider .splide_progress{
    display: none;
}
.item_quote_slider>.image{
    width: calc((4 * var(--col-w)) - var(--gutter));
    width: --col-width(4);
}
.item_quote_slider{
    display: flex;
    flex-direction: column;
    gap:var(--gutter);
}
@media (min-width: 769px) {
    .item_quote_slider{
        flex-direction: row;
    }
    .item_quote_slider>.image{
        width: calc((2 * var(--col-w)) - var(--gutter));
        width: --col-width(2);
    }
    .item_quote_slider>.text{
        width: calc((7 * var(--col-w)) - var(--gutter));
        width: --col-width(7);
        margin-left: calc(2 * var(--col-w) - var(--gutter));
        margin-left: --col-width(2);
        align-self: center;
    }
}
.item_quote_slider>.text .field-title{
    color:var(--color-scafi-base-bright);
}

.node--type-job-offer .content{
    display: flex;
    flex-direction: column;
    gap: var(--gutter);
}
@media (min-width: 769px) {
    .node--type-job-offer .content{
        flex-direction: row;
    }
    .node--type-job-offer .content>.heading{
        width: calc((3 * var(--col-w)) - var(--gutter));
        width: --col-width(3);
    }
    .node--type-job-offer .content>.body{
        width: calc((7 * var(--col-w)) - var(--gutter));
        width: --col-width(7);
        margin-left: calc(1 * var(--col-w));
        margin-left: --col-margin(1);
    }
}
.node--type-job-offer .content>.body ul{
    list-style-type: none;
    padding: 0;
}
.node--type-job-offer .content>.body ul li::marker {
  font-family: "remixicon";
  content: "\ea6d";
  color: var(--color-light-blue);
}

.field-links{
    display: flex;
}
.field-links>.cta {
    margin-right: -1px;
}

.block_job_offers h2.title{
    margin-bottom: 0;
    border-bottom: none;
}
.job-offers .job-offer {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid var(--color-scafi-base-bright);
    padding: 1em 0;
}
.job-offers .job-offer .desc .job-offer-company{
    font-size:var(--font-size-subtext);
}

.job-offers .subhead{
    margin-top: var(--vgutter);
    margin-bottom: var(--gutter);
}
@media (min-width: 769px) {
    .job-offers .subhead{
        margin-left: calc(4 * var(--col-w));
        margin-left: --col-margin(4);
        width: calc((7 * var(--col-w)) - var(--gutter));
        width: --col-width(7);
    }
}


.block_gallery .field-images{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.block_gallery .field-images>.item_gallery_image{
    display: flex;
    width:calc((6 * var(--col-w)) - var(--gutter));
    width:--col-width(6);
}



.block_history {
    display: flex;
    flex-direction: column;
}
.block_history h2{
    border-bottom: 0;
}
/*
.block_history .field-milestones{
    width: calc((8 * var(--col-w)) - var(--gutter));
    width: --col-width(8);
    border-left:1px solid var(--color-scafi-base-bright);
    margin-left: var(--gutter);
}
.block_history .field-milestones .item_history {
    display: flex;
}
.block_history .field-milestones .item_history .date{
    width: 50%;
    line-height: 0.75em;
}
.block_history .field-milestones .item_history .body{
    width: 50%;
}
    */

div.block_history>h2.title{
    margin-top: 0;
}
.block_history .chronology{
    border-left:1px solid var(--color-scafi-base-bright);    
    display: flex;
    flex-direction: column;
    gap: var(--vgutter);
    padding-left: 1em;
}
@media (min-width: 769px) {
    .block_history {
        display: flex;
        flex-direction: row;
    }
    .block_history h2{
        width: calc((4 * var(--col-w)) - var(--gutter));
        width: --col-width(4);
    }
    .block_history .chronology{
        width: calc((8 * var(--col-w)) - var(--gutter));
        width: --col-width(8);
        margin-left: var(--gutter);
    }
    .block_history span.number{
        font-size: 12.5vw;
    }
}
.block_history span.number{
    line-height: 0.75em;
    letter-spacing: -0.04em;
}
.block_history .century {
    position: absolute;
    height: 100%;
    width: calc((6 * var(--col-w)) - var(--gutter));
    width: --col-width(6);
    justify-content: start;
    display: flex;
}
.block_history .century span.number {
    position: sticky;
    top: var(--vgutter);
    height: 0.75em;
}
@media (min-width: 769px) {
    .block_history .century span.number {
        top: calc(var(--vgutter) + 2rem);
    }
}
.block_history .century-wrapper {
    position: relative;
}
.block_history .year {
    width: calc((6 * var(--col-w)) - var(--gutter));
    width: --col-width(6);
    justify-content: start;
    display: flex;
    height: 100%;
    top: var(--vgutter);
}
@media (min-width: 769px) {
    .block_history .year {
        position: sticky;
        top: calc(var(--vgutter) + 2rem);
    }
}
.block_history .century-events-wrapper{
    display: flex;
    flex-direction: column;
    gap: var(--vgutter);
}
.block_history .year-events-wrapper{
    display: flex;
    justify-content: end;
    gap: var(--gutter);
    flex-direction: column;
}
.block_history .events{
    width: calc((8 * var(--col-w)) - var(--gutter));
    width: --col-width(8);
    margin: 0;
    margin-left: calc(4 * var(--col-w) - var(--gutter));
    margin-left: --col-width(4);
}
@media (min-width: 769px) {
    .block_history .year-events-wrapper{
        flex-direction: row;
    }
    .block_history .events{
        width: calc((6 * var(--col-w)) - var(--gutter));
        width: --col-width(6);
        margin: 0;
    }
}
.block_history .events img {
    margin: var(--vmargin) 0;
}
.block_history ul.events{
    list-style-type: none;
    padding: 0;
}
.block_history ul.events li::marker {
  font-family: "remixicon";
  content: "\ea6d";
  color: var(--color-light-blue);
}


.block_accordion h2.title{
    margin-bottom: 0;
}
@media (min-width: 769px) {
    .block_accordion .field-accordions{
        width: calc((8 * var(--col-w)) - var(--gutter));
        width: --col-width(8);
        margin-left: calc(4 * var(--col-w));
        margin-left: --col-margin(4);
        margin-bottom: var(--vgutter);
    }
}
.block_accordion .field-accordions summary::marker {
  display:none;
}
.block_accordion .field-accordions summary {
  cursor: pointer;
  position: relative;
  padding-left: 0px;
  list-style: none;
  font-size: var(--font-size-subhead);
    line-height: 1.1em;
    margin-top:calc(0.75 * var(--gutter));
    margin-bottom:calc(0.75 * var(--gutter));
    padding: 0;
    padding-right: 1.1em;
}

.block_accordion .field-accordions summary:before{
    content: "";
    font-family: "remixicon";
    font-size: var(--font-size-small-caps);
    letter-spacing: var(--letter-spacing-small-caps);
    position: absolute;
    align-content: center;
    text-align: center;
    right: 0;
    top: 0;
    width: 1.375rem;
    height: 1.375rem;
    line-height: 1.375rem;
    transition: transform 0.2s ease;
}
.block_accordion .field-accordions summary:after{
    content: " ";
    position: absolute;
    right: 0;
    top: 0;
    width: 1.375rem;
    height: 1.375rem;
    border: 1px solid var(--color-scafi-base-bright)
}
.block_accordion .field-accordions details[open] summary::before {
  transform: rotate(180deg);
}
.block_accordion .field-accordions details{
    border:none;
    border-bottom: 1px solid var(--color-scafi-base-bright);
    margin: 0;
}
.block_accordion .field-accordions details .body{
    display: flex;
    gap: var(--gutter);
    margin-bottom: var(--margin);
    flex-direction: column;
}
@media (min-width: 769px) {
    .block_accordion .field-accordions details .body{
        flex-direction: row;
    }
    .block_accordion .field-accordions details .body>*{
        flex-grow: 1;
        flex-basis: 0;
    }
}

details::details-content {
    block-size: 0;
    display: block;
    overflow: hidden;
}
@media (prefers-reduced-motion: no-preference) {
    details::details-content {
        transition-property: block-size, content-visibility;
        transition-behavior: allow-discrete;
        transition-duration: .5s;
    }
}
details[open]::details-content {
    block-size: auto;
    block-size: calc-size(max-content, size);
}

/*
.block_carousel_cta,
.block_carousel_ordered_text,
.block_carousel_image{
    margin: 0 calc(-1 * var(--margin));
    padding: var(--margin);
    overflow: hidden;
}
*/

div[class^='block_carousel_']>h2.title{
    border-bottom: none;
    padding-bottom: 0;
}

.block_carousel_image .text-wrapper{
    margin-top: var(--vgutter);
    margin-bottom: var(--gutter);
}
@media (min-width: 769px) {
    .block_carousel_image .text-wrapper{
        margin-left: calc(4 * var(--col-w));
        margin-left: --col-margin(4);
        width: calc((7 * var(--col-w)) - var(--gutter));
        width: --col-width(7);
    }
}
.block_carousel_image .splide__list li{
    width: calc((10 * var(--col-w)) - var(--gutter));
    width: --col-width(10);
    margin-right: var(--gutter);
}
@media (min-width: 769px) {
    .block_carousel_image .splide__list li{
        width: calc((4 * var(--col-w)) - var(--gutter));
        width: --col-width(4);
    }
}
.block_carousel_image .splide__list .slide__media .media{
    /*border: 1px solid var(--color-scafi-base-bright);*/
    background-color: var(--color-dark-light-blue);
    /*padding: 0 var(--margin);*/
    /*min-height: 474px; */
    aspect-ratio: 4 / 3;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.block_carousel_image .splide__list .slide__media img{
    max-width: 80%;
    max-height: 50%;
}
.block_carousel_image .slide__caption h2 {
    font-size: var(--font-size-subtext);
    font-weight: var(--font-weight-book);
}


.field-texts-w-images .block_text_and_image{
    gap: var(--gutter);
    row-gap: var(--vgutter);
}
.field-texts-w-images .block_text_and_image>.text{
    position: sticky;
    /*top: 1em; */
    top: calc(var(--margin) * 2);
    height: 100%;
    align-self: auto;
}
.field-texts-w-images .block_text_and_image>.text h2{
    margin-top: 0;
}
/*
.field-texts-w-images .block_text_and_image:nth-child(odd) .field-image{
    margin-left: calc(-1 * var(--margin));
}
*/


.block_carousel_cta .splide__list li{
    width: calc((10 * var(--col-w)) - var(--gutter));
    width: --col-width(10);
    margin-right: var(--gutter);
}
@media (min-width: 769px) {
    .block_carousel_cta .splide__list li{
        width: calc((4 * var(--col-w)) - var(--gutter));
        width: --col-width(4);
    }
}
.block_carousel_cta .splide__list .splide__slide{
    aspect-ratio: 6 / 7;
}


.block_carousel_cta .splide__list .splide__slide{
    position: relative;
    /*
    padding-top: calc(((10 * var(--col-w)) - var(--gutter)) * 7 / 6);
    padding-top: calc(--col-width(10) * 7 / 6);
    */
    padding-top: calc((10 * var(--col-w)) - var(--gutter));
    padding-top: --col-width(10);
    height: 0;
}
.block_carousel_cta .splide__list .splide__slide > * {
  position: absolute;
  inset: 0;
}
@media (min-width: 769px) {
    .block_carousel_cta .splide__list .splide__slide{
        position: relative;
        /*
        padding-top: calc(((4 * var(--col-w)) - var(--gutter)) * 7 / 6);
        padding-top: calc(--col-width(4) * 7 / 6);
        */
        padding-top: calc((4 * var(--col-w)) - var(--gutter));
        padding-top: --col-width(4);
        height: 0;
    }
}






.block_carousel_cta .slide__caption h2 {
    font-size: var(--font-size-subtext);
    font-weight: var(--font-weight-bold);
}
.block_carousel_cta .splide__list .splide__slide div.cta{
    height: 100%;
}
.block_carousel_cta .splide__list .splide__slide div.cta .item_carousel_cta{
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    text-align: left;
    padding: var(--vmargin);
    justify-content: space-between;
    text-transform: none;
}
.block_carousel_cta .splide__list .splide__slide div.cta .item_carousel_cta .text{
    font-size: var(--font-size-subhead);
    line-height: 1em;
}
.block_carousel_cta .splide__list .splide__slide div.cta .item_carousel_cta .field-carousel-title{
    opacity: 0;
    font-size: var(--font-size-small-caps);
    letter-spacing: var(--letter-spacing-small-caps);
    transition: opacity .3s linear;
    text-transform: uppercase;
    position: absolute;
}
html.touchevents .block_carousel_cta .splide__list .splide__slide div.cta .item_carousel_cta{
    padding-bottom: calc(var(--gutter) + 1.6em);
}
.block_carousel_cta .splide__list .splide__slide div.cta:hover .item_carousel_cta{
    /*padding-bottom:calc(2 * var(--gutter));*/
    padding-bottom: calc(var(--gutter) + 1em);
}
html.touchevents .block_carousel_cta .splide__list .splide__slide div.cta .item_carousel_cta .field-carousel-title,
.block_carousel_cta .splide__list .splide__slide div.cta:hover .item_carousel_cta .field-carousel-title{
    opacity:1;
}

.block_carousel_cta .cta>a:hover{
    text-decoration: none;
}
.block_carousel_cta .cta>a>span:after{
    z-index: -1;
    content: none;
    background: linear-gradient(-10deg, red 75%, transparent 25%);
    border-image-slice: 1;
    position: absolute;
    /* transform: translateY(calc(100% - 20px)); */
    height: calc(100% + 20px);
    width: 100%;
}
.block_carousel_cta .cta>a>span .icon{
    display:block;
    font-size: var(--font-size-big-icon);
}

@property --p {
  syntax: '<percentage>';
  inherits: false;
  initial-value: 0%;
}
@property --l {
  syntax: '<length>';
  inherits: false;
  initial-value: 0px;
}
@property --a {
  syntax: '<angle>';
  inherits: false;
  initial-value: 10deg;
}

.block_carousel_cta .cta>a>span {
  /*  needed for firefox to have a valid output */
  --p:0%;
  --l:0px;
  --a:-10deg;
  /**/
  transition:--p 0.3s,--l 0.3s,--a 0.3s, all 0.3s;
  background:linear-gradient(var(--a), var(--color-scafi-base-bright) var(--p),transparent 0px);
}
.block_carousel_cta .cta>a:hover>span {
  --p:100%;
  --l:80px;
  --a:-8deg;
}







div.block_team>h2.title{
    margin-top: 0;
}
.block_team .members-wrapper{
    /*
    width: calc((8 * var(--col-w)) - var(--gutter));
    width: --col-width(8);
    margin-left: calc(4 * var(--col-w));
    margin-left: --col-margin(4);
    */
}
.block_team .members-wrapper .field-members{
    display: flex;
    flex-wrap: wrap;
    gap: var(--gutter);
    margin-bottom: var(--vgutter);
}
.block_team .members-wrapper .item_team_member{
    display: flex;
    gap: var(--gutter);
}
.field-team .block_team .members-wrapper .item_team_member{
    /*margin-bottom: var(--vgutter);*/
    padding-bottom: var(--vgutter);
    border-bottom: 1px solid var(--color-scafi-base-bright);
}
@media (min-width: 769px) {
    .block_team .members-wrapper .field-members{
        gap: var(--gutter);
    }
}
.field-team .block_team .members-wrapper .item_team_member .image-wrapper{
    width: calc((4 * var(--col-w)) - var(--gutter));
    width: --col-width(4);
    position: relative;
}
.field-team .block_team .members-wrapper .item_team_member .desc-wrapper{
    width: calc((8 * var(--col-w)) - var(--gutter));
    width: --col-width(8);
    position: relative;
}
.block_team .members-wrapper .item_team_member .desc-wrapper{
    font-size: var(--font-size-subtext);
    font-weight: var(--font-weight-book);
    line-height: 1.4em;
    display: flex;
    justify-content: space-between;
}
.field-team .block_team .members-wrapper .item_team_member .desc-wrapper{
    flex-direction: column;
}
.block_team .members-wrapper .item_team_member .desc-wrapper .field-subtitle{
    color: var(--color-scafi-base-bright);
}
.block_team .members-wrapper .item_team_member .linkedin>a>i{
    font-style: normal;
    width: 1.5rem;
    height: 1.5rem;
    display: inline-block;
    background-color: var(--color-scafi-base-bright);
    color: var(--color-white);
    text-align: center;
    align-content: center;
    font-size: 0.8rem;
}
/*
.block_team .members-wrapper .item_team_member .image-wrapper .linkedin,
.field-team-board .block_team .members-wrapper .item_team_member .desc-wrapper .linkedin {
    display: none;
}
*/
.field-team-board .block_team .members-wrapper .item_team_member .image-wrapper .linkedin {
    position: absolute;
    display: block;
    bottom: 1rem;
    right: 1rem;
}
/*
.field-team-board .item_team_member .linkedin {
    opacity: 0;
}
html.touchevents .field-team-board .item_team_member .linkedin,
.field-team-board .item_team_member:hover .linkedin {
    opacity: 1;
}
*/
.field-team-board .block_team .members-wrapper .item_team_member{
    width: calc((6 * var(--col-w)) - var(--gutter));
    width: --col-width(6);
}

.field-team-board .block_team{
    display: flex;
    flex-direction: column;
    gap: var(--gutter);
}
.field-team-board .block_team h2{
    border: none;
    margin-bottom: 0;
    padding-bottom: 0;
}
@media (min-width: 769px) {
    .block_team .members-wrapper{
        width: calc((8 * var(--col-w)) - var(--gutter));
        width: --col-width(8);
        margin-left: calc(4 * var(--col-w));
        margin-left: --col-margin(4);
    }
    .block_team .members-wrapper .item_team_member{
        width: calc((6 * var(--col-w)) - var(--gutter));
        width: --col-width(6);
    }
    .field-team .block_team .members-wrapper .item_team_member .image-wrapper,
    .field-team .block_team .members-wrapper .item_team_member .desc-wrapper{
        width: calc((6 * var(--col-w)) - var(--gutter));
        width: --col-width(6);
    }
    .field-team-board .block_team{
        flex-direction: row;
    }
    .field-team-board .block_team h2{
        width: calc((4 * var(--col-w)) - var(--gutter));
        width: --col-width(4);
    }
}
.field-team-board .block_team .members-wrapper{
    /*margin-left: var(--gutter);*/
    margin-left: 0;
}
.field-team-board .block_team .members-wrapper .item_team_member{
    display: block;
    position: relative;
}
.field-team-board .block_team .members-wrapper .item_team_member .image-wrapper{
    width: auto;
    margin-bottom: var(--halfvmargin);
}
.field-team-board .block_team .members-wrapper .item_team_member .desc-wrapper{
    /*
    position: absolute;
    bottom: 0;
    */
}





.view-news img {
    width: 100%;
}

.node--type-article .content{
    display: flex;
    gap: var(--gutter);
    flex-direction: column;
}
@media (min-width: 769px) {
    .node--type-article .content{
        flex-direction: row;
    }
    .node--type-article .content>.heading{
        width: calc((4 * var(--col-w)) - var(--gutter));
        width: --col-width(4);
    }
    .node--type-article .content>.body{
        width: calc((8 * var(--col-w)) - var(--gutter));
        width: --col-width(8);
        /*
        margin-left: calc(1 * var(--col-w));
        margin-left: --col-margin(1);
        */
    }
}
.node--type-article .content>.body .field-image{
    margin-right: calc(-1 * var(--margin));
    margin-bottom: var(--vgutter);
}
.node--type-article .content>.body .field-chapo{
    font-size: var(--font-size-subhead);
    font-weight: var(--font-weight-book);
    line-height: 1em;
}
@media (min-width: 769px) {
    .node--type-article .content>.body .field-body{
        width: 83.33%;
    }
}

.block_slideshow .splide img{
    max-width: calc(100vw - 2 * var(--margin));
}


.node--type-article.teaser{
    display: flex;
    flex-direction: column;
    gap:var(--gutter);
    border-top: 1px solid var(--color-scafi-base-bright);
    padding-top: var(--vgutter);
    margin-bottom: var(--vgutter);
}
.node--type-article.teaser .date-wrapper{
    font-size: var(--font-size-small-caps);
    letter-spacing: var(--letter-spacing-small-caps);
    text-transform: uppercase;
}
@media (min-width: 769px) {
    .node--type-article.teaser{
        flex-direction: row;
    }
    .node--type-article.teaser .date-wrapper{
        width: calc((3 * var(--col-w)) - var(--gutter));
        width: --col-width(3);
    }
    .node--type-article.teaser .image-wrapper{
        width: calc((3 * var(--col-w)) - var(--gutter));
        width: --col-width(3);
    }
    .node--type-article.teaser .title-wrapper{
        width: calc((6 * var(--col-w)) - var(--gutter));
        width: --col-width(6);
    }
}
.node--type-article.teaser .title-wrapper .field--name-title{
    font-size: var(--font-size-subhead);
}
.node--type-article.teaser .title-wrapper a{
    font-size: var(--font-size-subtext);
}


main div.item_localisation_info{
    margin-top: var(--vgutter);
    margin-bottom: var(--gutter);
}
@media (min-width: 769px) {
    main div.item_localisation_info{
        margin-left: calc(4 * var(--col-w));
        margin-left: --col-margin(4);
        width: calc((7 * var(--col-w)) - var(--gutter));
        width: --col-width(7);
    }
}
main div.item_localisation_info .field-logo{
    margin-bottom: var(--vmargin);
}
div.item_localisation_info .address-block{   
    position: relative;
    line-height: 1.2em;
    padding-inline-start: 0.9em;
}
div.item_localisation_info .address-block li{
    padding-left: 0.5em;
    margin-top: 0.4em;
}
div.item_localisation_info .address-block li:empty{
    display: none;
}
div.item_localisation_info .address-block li::marker {
    font-family:'remixicon';
}
div.item_localisation_info .address-block li#card-address{
    list-style-type: "\ef09";
}
div.item_localisation_info .address-block li#card-phone{
    list-style-type: "\efe9";
}
div.item_localisation_info .address-block li#card-email{
    list-style-type: "\eef3";
}
div.item_localisation_info .address-block li#card-website{
    list-style-type: "\edce";
}
div.item_localisation_info .address-block li#card-linkedin{
    list-style-type: "\eeb3";
}
/*
div.item_localisation_info .address-block [class^="ri-"], 
div.item_localisation_info .address-block [class*=" ri-"] {
    padding-left: 1.2em;
    font-family: inherit !important;
}
div.item_localisation_info .address-block [class^="ri-"]:before, 
div.item_localisation_info .address-block [class*=" ri-"]:before{
    position:absolute;
    left: 0;
    font-family: 'remixicon';
}
    */
div.item_localisation_info .field-logo-image-wrapper{
    /*margin-bottom: var(--gutter);*/
    margin-bottom: var(--vmargin);
    aspect-ratio: 4 / 3;
    align-content: space-around;
    background-color: var(--color-dark-light-blue);
}
div.item_localisation_info .field-logo-image-wrapper .field-logo{
    width:100%;
    height: 100%;    
    justify-content: center;
    align-content: center;
}
div.item_localisation_info .field-logo-image-wrapper .field-logo img{
    margin: 0 auto;
    max-width: 80%;
    max-height: 50%;
    object-fit: contain;
}


div.item_localisation_info .field-logo-image-wrapper{
    position: relative;
    padding-top: calc(100% * 3 / 4);
    height: 0;
    width: 100%;
}
div.item_localisation_info .field-logo-image-wrapper > * {
  position: absolute;
  inset: 0;
}



.view-companies .view-content{
    display: flex;
    gap:var(--gutter);
    flex-direction: column;
}
@media (min-width: 769px) {
    .view-companies .view-content{
        flex-wrap: wrap;
        flex-direction: row;
    }
    .view-companies .view-content .views-row{
        width: calc((4 * var(--col-w)) - var(--gutter));
        width: --col-width(4);
    }
}
.view-companies .view-content .item_localisation_info{
    margin: 0;
    width: 100%;
}


.view-companies .item_localisation_info{
    font-size: 1rem;
    line-height: 1em;
}
.view-companies .item_localisation_info .address-block{
    font-size: var(--font-size-subtext);
    line-height: 1.4;
}




div.block_hero_video{
    margin-top: calc(5 * var(--vgutter));
}
.block_hero_video h1.big-title{
    margin:0;
}
@media (min-width: 769px) {
.block_hero_video .subhead{
    width: calc((10 * var(--col-w)) - var(--gutter));
    width: --col-width(10);
}
}
.block_hero_video .field-video{
    margin-top: var(--vgutter);
    margin-bottom: var(--gutter);
}
.block_hero_video .file.field-media-video-file{
    overflow: clip;
    position: relative;
    margin: 0 calc(-1 * var(--margin));
    height: 100vh;
    width: 100vw;
    clip-path: inset(0);
}
/*
.block_hero_video .file.field-media-video-file:after {
    content: '';
    position: absolute;
    inset: 0px;
    background: #142E49;
    opacity: 0.5;
    margin-top: 0px;
    pointer-events: none;
    z-index: 1;
    margin-top: 0px;
}
    */
.block_hero_video video{    
    position: fixed;
    top: 0;
    object-fit: cover;
    left: 0;
    width: 100%;
    height: 100%;
    /*filter:grayscale(1);*/
}


.block_files h2.title{
    border-bottom: 0;
    padding-bottom: 0;
}
.block_files .fileline{
    border-top: 1px solid var(--color-scafi-base-bright);
    /*padding: var(--vgutter) 0;*/
    padding: 1rem 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.block_files .fileline a{
    text-decoration: none;
    color: var(--color-white);
}



.single-page.spontaneous-application .big-title{
    margin-top: calc(3 * var(--vgutter));
    margin-bottom: var(--vgutter);
}
form.webform-submission-job-application-form .form-type-select.form-item-company{
    display: none;
}
.single-page.spontaneous-application form.webform-submission-job-application-form .form-type-select.form-item-company{
    display: block;
}

@media (min-width: 769px) {
    .single-page.spontaneous-application form.webform-submission-job-application-form {
        margin-left: calc(4 * var(--col-w));
        margin-left: --col-width(4);
        width: calc((6 * var(--col-w)) - var(--gutter));
        width: --col-width(6);
    }
}
.single-page.contact .block_contact_form h2.title,
.single-page.contact .block_companies h2.title{
    padding: 0;
    border: 0;
}

.single-page.contact .block_contact_form{
    margin-top: calc(3 * var(--vgutter));
}
@media (min-width: 769px) {
    .single-page.contact .block_contact_form{
        display: flex;
        gap:var(--vmargin);
    }
    .single-page.contact .block_contact_form h2.title{
        width: calc((4 * var(--col-w)) - var(--gutter));
        width: --col-width(4);
        margin-top: 1em;
    }
    .single-page.contact .block_contact_form form.webform-submission-contact-form{
        width: calc((6 * var(--col-w)) - var(--gutter));
        width: --col-width(6);
    }
}



.region-header{
    margin: var(--margin) 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--gutter);
}
@media (min-width: 1080px) {
    .region-header{
        padding: 0.5em 0;
        margin: 0;
    }
    .region-header .block-system-branding-block{
        width: calc((1 * var(--col-w)) - var(--gutter));
        width: --col-width(1);
    }
    .region-header .block-system-branding-block img{
        width: 70px;
    }
    .region-header nav.navigation{
        width: calc((9 * var(--col-w)) - var(--gutter));
        width: --col-width(9);
    }
    .region-header .block-language{
        width: calc((2 * var(--col-w)) - var(--gutter));
        width: --col-width(2);
    }
    #block-scafi-languageswitcher ul.links {
        justify-content: right;
    }
}





footer{
    margin: 0 calc(-1 * var(--margin));
    padding: 0 var(--margin);
    margin-top: var(--vgutter);
    padding-top: var(--vgutter);
    border-top:1px solid var(--color-scafi-base-bright) ;
    clear: both;
}
footer .region-footer{
    display: flex;
    gap:var(--gutter);
    margin-bottom: var(--vgutter);
    flex-wrap: wrap;
    flex-direction: column;
}


@media (min-width: 769px) {
    footer .region-footer{
        flex-direction: row;
        row-gap: 0;
        margin-bottom: 0;
    }
    #block-scafi-footercompany{
        width: calc((4 * var(--col-w)) - var(--gutter));
        width: --col-width(4);
    }
    #block-scafi-footer{
        width: calc((8 * var(--col-w)) - var(--gutter));
        width: --col-width(8);
    }
}
#block-scafi-bottomfooter{
    order:1;
    font-size: var(--font-size-subtext);
    padding-bottom: var(--vmargin);
    width: 100%;
}
#block-scafi-bottomfooter:before{
    content: "© SCAFI";
    color: var(--color-scafi-base-bright);
}
#block-scafi-bottomfooter a{
    color: var(--color-scafi-base-bright);
    text-decoration: none;
}
#block-scafi-bottomfooter .file{
    padding-left: 0;
}
#block-scafi-bottomfooter .file--application-pdf{
    background: none;
}
#block-scafi-bottomfooter .field-legal-links{
    float: right;
    display: flex;
    gap: 20px;
}     

#block-scafi-footercompany .field-logo-image-wrapper{
    display: none;
}
#block-scafi-footer ul.menu{
    margin: 0;
}
#block-scafi-footer .menu-item{
    /*padding-top: 0;*/
}


#block-scafi-footer>ul.menu{
    display: flex;
    gap:var(--gutter);
    flex-wrap: wrap;
}
#block-scafi-footer>ul.menu>li a{
    text-decoration: none;
    color:var(--color-white);
}
#block-scafi-footer>ul.menu>li{
    list-style: none;
    width: calc((6 * var(--col-w)) - var(--gutter));
    width: --col-width(6);
    font-size: var(--font-size-subtext);
    font-weight: var(--font-weight-bold);
}
@media (min-width: 769px) {
    #block-scafi-footer>ul.menu>li{
        width: calc((3 * var(--col-w)) - var(--gutter));
        width: --col-width(3);
    }
}
#block-scafi-footer>ul.menu>li li{
    font-weight: var(--font-weight-book);
}
footer .item_localisation_info .address-block{
    font-size: var(--font-size-subtext);
    line-height: 1.4;
}


footer #logo-footer {
    width:100%;
    aspect-ratio: 1316/166;
    position: relative;
    overflow: hidden;
    /*margin: var(--vgutter) 0;*/
    margin: var(--vmargin) 0;
    margin-top: calc(3 * var(--vmargin));
}
footer #logo-footer i{
    position: absolute;
    width: 100%;
    background-size: cover;
    height: 100%;
    transition: 0.2s linear;
    transform: translate(0%, 100%);
}
footer #logo-footer.is-visible i{
    transform: translate(0%, 0%);
}
footer #logo-footer i.lf1{ background-image: url(../../images/lf1.svg);transition-delay: .01s; }
footer #logo-footer i.lf2{ background-image: url(../../images/lf2.svg);transition-delay: .02s; }
footer #logo-footer i.lf3{ background-image: url(../../images/lf3.svg);transition-delay: .03s; }
footer #logo-footer i.lfS{ background-image: url(../../images/lfS.svg);transition-delay: .04s; }
footer #logo-footer i.lfC{ background-image: url(../../images/lfC.svg);transition-delay: .05s; }
footer #logo-footer i.lfA{ background-image: url(../../images/lfA.svg);transition-delay: .06s; }
footer #logo-footer i.lfF{ background-image: url(../../images/lfF.svg);transition-delay: .07s; }
footer #logo-footer i.lfI{ background-image: url(../../images/lfI.svg);transition-delay: .08s; }


