/*
Theme Name:   	Layer
Author:       	Addedlovely
Author URI:     https://www.addedlovely.com
Template:     	addedlovely
Version:      	1.7.1
Text Domain:  	addedlovely
*/


   
/* ==========================================================================
  Colours
  ========================================================================== */
  :root {
    --dark-grey: #666666;
    --mid-grey: #999999;
    --grey: #D9D9D9;
    --light-grey: #F2F2F2;
    --cream: #F6F3F1;
    --projects: #FFC89F;
    --expertise: #FD87FF;
    --process: #D1FFD0;
    --impact: #C7FEEA;
    --studio: #FFC5BD;
    --contact: #E6FD8C;
    --mb : 160px;
    --negative-mb : -160px;
    --padding: 92px;
    --negative-padding: -92px;
  }
  
  .black { color:#000; }
  .mid-grey { color: var(--mid-grey); }
  .light-grey { color: var(--light-grey); }
  .dark-grey { color: var(--dark-grey); }
  .grey { color: var(--grey); }
  .white { color: #FFF; }
  .bg-cream { background: var(--cream); }
  
  /* ==========================================================================
     Structure
     ========================================================================== */
     
  body { font-size: 20px; font-family: sofia-pro, sans-serif; font-weight: 400;  line-height: 1.2; }/*padding-top:80px; */
  svg { width: 100%; height: 100%; vertical-align: top; fill:currentColor; }
  figure { margin: 0; }
  .container {  max-width: 1326px; width:69.0625%; }
  .mb { margin-bottom: var(--mb); }
  .image { overflow: hidden; }
  
  /* Swiper */
  .swiper-pagination-bullet { border: 1px solid var(--mid-grey); background: none; outline:none; }
  .swiper-pagination-bullet-active { background: var(--mid-grey); }
  .slideshow-button { width: 32px; height: 56px; position: absolute; top:0; bottom: 0; margin: auto; outline: none; cursor: pointer; color:#CCC; cursor: pointer; display: flex; transition: color 0.3s cubic-bezier(0.5,0,0,1); }
  .slideshow-button svg { width: 32px; height: 56px; margin: auto; }
  .slideshow-button:hover { color: #000; }
  .slideshow-button-prev { left: -100px; }
  .slideshow-button-next { right: -100px; }
  .swiper-button-disabled { opacity: 0; }
  .reveal { opacity: 0; }
  .has-parallax img { transform: scale(1.1); }
  
  /* Title transition */
  .has-title-animation span { transform: translate3d(0,30px,0); opacity: 0; display: inline-block; }
  
   
   /* Link */
  .has-underline { position: relative; padding: 0 54px; z-index: 0; white-space: nowrap; }
  .has-underline:after { content:''; height: 14px; left: 0; right: 0; position: absolute; bottom: -2px; z-index: -1; transition: transform 0.3s cubic-bezier(0.5,0,0,1), height 0.3s cubic-bezier(0.5,0,0,1); transform: scaleX(0) translate3d(0,0,0); transform-origin: bottom left; }
  .has-underline-contact:after  { background: var(--contact); }
  .has-underline-projects:after  { background: var(--projects); }
  .has-underline-expertise:after  { background: var(--expertise); }
  .has-underline-process:after  { background: var(--process); }
  .has-underline-impact:after  { background: var(--impact); }
  .has-underline-studio:after  { background: var(--studio); }
  .has-underline.is-visible:after { transform: scaleX(1) translate3d(0,0,0); }
  .has-underline.is-visible:hover:after { height: 42px; transform: translate3d(0,6px,0);}
  
  /* Image Tint */
  .has-tint:after { content: ''; position: absolute; top:0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.15); z-index: 1; opacity: 0; transition: opacity 0.3s cubic-bezier(.77,0,.175,1); }
  
  /* ==========================================================================
     Typography
     ========================================================================== */
  .f-h1 { font-size: 50px; line-height: 1.2; }
  .f-125 { font-size: 125px; }
  .f-60 { font-size: 60px; }
  .f-50 { font-size: 50px; }
  .f-45 { font-size: 45px; }
  .f-40 { font-size: 40px; }
  .f-35 { font-size: 35px; }
  .f-30 { font-size: 30px; }
  .f-26 { font-size: 26px; }
  .f-24 { font-size: 24px; }
  .f-20 { font-size: 20px; }
  .f-18 { font-size: 18px; }
  .f-16 { font-size: 16px; }
  .bold { font-weight: 600; }
  .medium { font-weight: 500; }
  .normal { font-weight: 400; }
  p { margin-bottom: 32px; }
  
  /* ==========================================================================
     Header
   ========================================================================== */
  /* .header { height:80px; padding: 0 37px; position: fixed; top:0; left: 0; right: 0; display: flex; align-items: center; background: #FFF; z-index: 3;  transition: background 0.3s cubic-bezier(0.5,0,0,1); }
  .header-logo { width: 164px; height: 30px; position: relative; z-index: 2; transition: transform 0.3s cubic-bezier(0.5,0,0,1); }
  .header-logo:hover { transform: scale(1.1); }
  .header-menu { margin-left: auto; margin-top: -5px; }
  .header-menu-link { display: inline-flex; flex-direction: column; align-items: center; text-transform: uppercase; padding: 0 26px; position: relative; }
  .header-menu-link:after {  content:''; height: 10px; left: 0; right: 0; position: absolute; bottom: -3px; z-index: -1; transition: transform 0.3s cubic-bezier(0.5,0,0,1); transform: scaleX(0); transform-origin: bottom left; }
  .header-menu-link.active:after, .header-menu-link:hover:after { transform: scaleX(1); }
  .button-menu { display: none; } */
  
  /* Submenu */
  .submenu-container { position: relative; }
  .submenu { line-height: 56px; position: sticky; top:80px; display: flex; align-items: center; flex-direction: row; justify-content: flex-start; z-index: 1; background: #FFF; left:0; right:0; z-index: 2; transition: background 0.3s cubic-bezier(0.5,0,0,1); margin: 20px 0 -20px 0; padding: 0 20px;  transition: transform 200ms linear, background 0.3s cubic-bezier(0.5,0,0,1); }
  .submenu-inner { margin: 0 auto; display: flex; flex-direction: row; width: 100%; justify-content: center; }
  .submenu a { margin: 0 2%; display: inline-flex; flex-direction: column; align-items: center; height: 56px; line-height: 50px; }
  .submenu .active, .no-touchevents .submenu a:hover { color: #000; }
  .submenu.is-sticky.is-hidden { transform: translateY(-100%) !important; } 
  
  /* Submenu : Border : Used to be on the submenu : but has a bug in Chrome on odd sized screens */
  body.has-border:after { content:''; background: #E6E6E6; top:80px; left:0; right:0; pointer-events: none; height: 1px; position: fixed; z-index: 2; } 
  
  
  /* Footer inview */
  .has-footer-inview .header, 
  .has-footer-inview .submenu {  }
  .has-footer-inview .submenu::-webkit-scrollbar-track { background:#F6F3F1; }
  .has-footer-inview .submenu::-webkit-scrollbar-thumb { background-color:#F6F3F1;  }
  .has-footer-inview.has-border:after { background:#F6F3F1; }
  
  /* ==========================================================================
     Layout : Hero
   ========================================================================== */
  .layout-hero { position: relative; z-index: 1; height: 39.0625vw; overflow: hidden; position: relative; text-align: center; color:#FFF; background: #000; }
  .hero-caption { position: absolute; top:50%; transform: translate3d(0,-50%,0); left: 0; right: 0;  margin: auto; z-index: 2; }
  .hero-subtitle { margin-top: 28px; }
  .hero-image, .hero-image img, .hero-image video, .hero-image div { height: 100%; width: 100%; }
  .hero-image img, .hero-image video { object-fit: cover;  }
  .hero-video-mobile { display: none; }
  .hero-video-tablet { display: none; }
  
  
  /* Contact */
  .layout-hero.is-contact { height: calc(100vh - 157px); }
  .layout-hero.is-contact .hero-image img { transform: none; }
  .hero-links { position: absolute; left: 0; right: 0; top:50%; transform: translate3d(0,-50%,0); text-align: center; color:#FFF; z-index: 2; }
  .hero-links a:hover { font-weight: bold; }
  .hero-links h2 { margin-bottom: 26px; }
  .hero-links div { padding: 0 20px; }
  
  
  /* ==========================================================================
     Layout : Background
   ========================================================================== */
  .section-background { padding-top:var(--padding); padding-bottom:var(--padding); position: relative; z-index: 1; }
  .section-background > section:last-of-type { padding-bottom: 0; margin-bottom: 0; }
  .section-background > .layout-text:first-child,
  .section-background > .layout-testimonials:first-child,
  .section-background > .layout-slider:first-child { padding-top: 0; }
  
  /* ==========================================================================
     Layout : Text
   ========================================================================== */
  .layout-text {  text-align: center; padding-top:var(--padding); padding-bottom:var(--padding);  } 
  .layout-text h2 { margin-bottom: 26px; }
  .layout-text article div { min-width: 890px; max-width: 67%; width: 100%; margin-left: auto; margin-right: auto; }
  .layout-text p:last-of-type { margin-bottom: 0; }
  .layout-text strong, .layout-text b { font-weight: 500; color:var(--dark-grey); }
  .mb + .layout-text { margin-top:var(--negative-mb); }
  
  /* Project */
  .layout-text.is-project { padding: 67px 0;}
  .layout-text.is-project h2 { margin-bottom: 54px; }
  .layout-text.is-project article div { min-width: 0; max-width: 92.307692307692308%; }
  
  /* ==========================================================================
    Layout : Text & Image
   ========================================================================== */
  .layout-text_image { grid-gap:40px; position: relative; z-index: 0; }
  .text_image-title { display: none; }
  .text_image-text { display: flex; flex-direction: column; align-items: flex-start;}
  .text_image-text h2 { margin-bottom: 32px; line-height: 0.96; }
  .text_image-text p { margin-bottom: 22px; }
  .text_image-text p:nth-of-type(2) { font-weight: 500; }
  .text_image-text p:last-of-type { margin-bottom: 0; }
  .text_image-text .button-underline { text-align: center; margin: auto auto 0 0; }
  .text_image-media, .text_image-text { grid-row: 1; }
  
  /* Multiple Images */
  .text_image-media { overflow:hidden; }
  .text_image-media.grid { grid-template-rows: 2; }
  .text_image-media.grid .image { height: 100%; }
  .text_image-media .is-landscape { grid-row: span 1; }
  .text_image-media .is-portrait { grid-row: span 2;  }
  .text_image-media img { object-fit: cover; height: 100%; }
  
  /* Text right */
  .has-text-left { grid-template-columns: auto 62.35207100591716%; }
  .has-text-left .text_image-media { grid-column: 2; }
  .has-text-left .text_image-text { grid-column: 1; }
  
  /* Text Right */
  .has-text-right { grid-template-columns: 62.35207100591716% auto; }
  .has-text-right .text_image-media { grid-column: 1; }
  .has-text-right .text_image-text { grid-column: 2; }
  
  /* Text Vertically Centred */
  .has-text-centred .text_image-text { justify-content: center; }
  
  /* Stats */
  .text_image-stats { margin-top: auto; }
  .text_image-stats li { list-style-type: none; display: flex; align-items: baseline; }
  .text_image-stats span { display: inline-block; }
  .text_image-stats .stat { min-width: 94px; }
  
  /* Offset */
  .layout-text_image.is-offset { grid-row-gap: 50px; }
  .layout-text_image.is-offset .text_image-titles { grid-row: 1; grid-column: 1; }
  .layout-text_image.is-offset .text_image-media { grid-row: 1; grid-column: 2; }
  .layout-text_image.is-offset .text_image-text { grid-row: 2; grid-column: 1; grid-column: 1/-1; max-width: 936px; }
  .layout-text_image.is-offset .text_image-text .button-underline { min-width: 333px; }
  .layout-text_image.is-offset.has-text-right .text_image-text { margin-left: auto; }
  .layout-text_image.is-offset.has-text-right .text_image-media { grid-column: 1; }
  .layout-text_image.is-offset.has-text-right .text_image-titles {  grid-column: 2; text-align: right; }
  .layout-text_image.is-offset.has-text-right .text_image-text .button-underline { margin-left: auto; margin-right: 0;}
  .layout-text_image.is-offset .text_image-text p { margin-bottom: 30px; }
  .text_image-titles { display: flex; flex-direction: column; }
  .text_image-titles h2 { margin-top:auto; line-height: 1; }
  .text_image-titles h3 { line-height: 1; margin-bottom: -3px; }
  .offset-reveal { opacity:0; transform:translate3d(0,30px,0); }
  
  /* ==========================================================================
     Layout : Awards
   ========================================================================== */
  .layout-awards { grid-gap:65px; grid-template-columns: 62.35207100591716% auto; }
  .awards { padding-top:59.193357058125741%; position: relative; grid-column: 1; grid-row: 1; }
  .awards h3, .awards h4 { font-size: inherit; line-height: 2; }
  .awards h4 { color: var(--dark-grey); margin-left: auto; }
  .awards .swiper { position: absolute; top:0; left: 0; bottom: 0; right: 0; }
  .awards .swiper-slide { display: flex; flex-direction: row; height: auto;  }
  .awards .swiper-wrapper { transition-timing-function:linear; }
  .awards-text { display: flex; grid-column: 2; grid-row: 1; }
  .awards-text h2 { margin-bottom: 26px; }
  .awards-title { display: none; }
  
  /* ==========================================================================
     Layout : Testimonials
   ========================================================================== */
  .layout-testimonials { text-align: center;  padding-top:var(--padding); padding-bottom:var(--padding); }
  .layout-testimonials h2 { margin-bottom: 44px;}
  .layout-testimonials p { margin-bottom: 40px; }
  .layout-testimonials p.has-no-attribution:last-of-type { margin-bottom: 0; }
  .layout-testimonials blockquote { padding: 0 24px; }
  .layout-testimonials .swiper { position: relative; overflow: visible; }
  .layout-testimonials .swiper-wrapper {  align-items: center; }
  .mb + .layout-testimonials { margin-top:var(--negative-mb); }
  
  /* ==========================================================================
     Layout : Press
   ========================================================================== */
  .layout-press article { text-align: center; width: 100%; margin: auto auto 81px auto; }
  .layout-press h2 { margin-bottom: 24px; }
  .press-slider-container { position: relative; }
  .press { display: block; }
  .press span { color: var(--mid-grey); }
  .press .image { margin-bottom: 19px; position: relative; z-index: 0; display: block; }
  .press:hover .has-tint:after { opacity: 1; }
  .press-logo { position: absolute; padding: 16%; top:0; bottom: 0; left: 0; right: 0; box-sizing: border-box; margin: auto; object-fit: contain; z-index: 2; transition:  opacity 1s;}
  .press-image.loaded { transition: transform 5s cubic-bezier(0.5,0,0,1); }
  .press:hover .press-logo { animation-name: pulse; animation-timing-function: ease-in-out; animation-duration: 0.5s; animation-fill-mode: both; }
  
  /* ==========================================================================
     Layout : Images
   ========================================================================== */
  .layout-images { grid-gap:66px; }
  .layout-images .span-2 { grid-column: span 2; }
  .layout-images .span-1 { grid-column: span 1; }
  .layout-images .is-portrait { grid-row: span 2; }
  .layout-images img, .layout-images .image { height: 100%; object-fit: cover; }
  
  /* ==========================================================================
     Layout : Video
   ========================================================================== */
  .layout-video .video-container { background: none; position: relative; }
  .layout-video iframe { position: absolute; top:0; left: 0; width: 100%; height: 100%; }
  .layout-video + .layout-images { margin-top:-94px; }
  
  /* ==========================================================================
     Layout : Call to action
   ========================================================================== */
  .layout-cta { text-align: center; display: flex; padding-top:var(--padding);  padding-bottom:var(--padding); justify-content: center; }
  .layout-cta a { margin-top:-5px; }
  .mb + .layout-cta { margin-top: var(--negative-mb); }
  
  /* ==========================================================================
     Layout : News
   ========================================================================== */
  .featured-news { grid-template-columns: 39.955686853766617% auto; grid-gap:54px; margin: 0 0 30px 0; }
  .featured-news time { margin-bottom: 14px; display: block; }
  .featured-news-image, .featured-news-image .image { height: 100%; }
  .featured-news-image img { height: 100%; object-fit: cover; }
  .featured-news-text p:last-of-type { margin-bottom: 0; }
  .news-slider { position: relative; }
  .news { cursor: pointer; }
  .news span { display: block; }
  .news .image { margin-bottom: 20px; }
  .news .text { display: none; }
  .news:hover .has-tint:after { opacity: 1; }
  
  /* ==========================================================================
     Layout : Accordion
   ========================================================================== */
  .layout-accordion { position: relative; display: flex;  align-items: flex-start; }
  .accordion-section { display: flex; flex-direction: column; justify-content: center; }
  .accordion-links { max-width: 575px; min-width: 575px; top:215px; position: sticky; right:0; margin-left: 6.770833333333333vw; margin-top: 48px; margin-bottom: 0; }
  .accordion-link { margin-bottom: 30px; cursor: pointer; }
  .accordion-link.active { color: #000; }
  .accordion-link:last-of-type { margin-bottom: 0; }
  .accordion-sections { width: 100%; margin-top: 48px; } 
  .accordion-section { height: auto; }
  .accordion-section:last-of-type { margin-bottom: 0; }
  .accordion-section .inner { margin: auto; }
  .accordion-section .button-underline { margin-right: auto; }
  .accordion-press { grid-gap:15px;}
  .accordion-press .press-image { margin-bottom: 0; background: #000; }
  .accordion-press .press-image .press-logo { padding: 24px; }
  .accordion-stats h4 { position: absolute; top:50%; transform:translate3d(0,-50%,0); left: 0; right: 0; margin: -7px auto auto auto; text-align: center; z-index: 2; }
  .accordion-stats h4 span { display: block; }
  .accordion-stats .stat-image { margin-bottom: 15px; z-index: 0; }
  .accordion-images .is-portrait { grid-row: span 2; }
  .accordion-images .swiper-wrapper { display: grid; grid-gap:20px; grid-template-columns: repeat(2, 1fr); }
  .accordion-images-pagination { display: none; }
  .accordion-spacer { position: absolute; top: -120px; bottom: 200px; width: 1px; left: 0; }
  .accordion-section-text { margin:45px 0 0 0; }
  
  /* Mobile */
  .accordion-section-title { display: none; }
  
  /* ==========================================================================
     Layout : Expertise
   ========================================================================== */
  .layout-expertise { position: relative; margin-bottom: var(--negative-padding) !important; margin-top: var(--negative-padding); }
  .layout-expertise .pin-spacer { height: 0; }
  .layout-expertise .pin-spacer, .layout-expertise .expertise-sticky { width: 100vw !important; max-width:100% !important;}
  .expertise-titles { padding-top: calc(32.563025210084035vh); padding-bottom: calc(32.563025210084035vh); position: relative; z-index: 1; pointer-events: none; margin-top:calc(-100vh + 80px); }
  .expertise-titles h2 { position: absolute; top: 88px; left: 0; right: 0; text-align: center; }
  .expertise-title { height: 34.873949579831933vh; display: flex; }
  .expertise-title h3 {  max-width: 750px; line-height: 1.2; min-height: 126px; margin: auto 0; }
  .expertise-title:last-of-type { margin-bottom: 0; }
  .expertise-title-inner { display: inline-block; opacity: 0.2; transition: opacity 0.6s cubic-bezier(.77,0,.175,1); }
  .expertise-subtitle-inner { font-weight: normal; opacity: 0; transition: opacity 0.6s cubic-bezier(.77,0,.175,1); }
  .expertise-title.active .expertise-title-inner { transform: translateY(0); opacity: 1; }
  .expertise-title.active .expertise-subtitle-inner { opacity: 0.7; }
  
  .expertise-images {  position: absolute; top:0; left: 0; right: 0; height: 100vh; z-index: 0; }
  .expertise-image { opacity: 0; visibility: hidden; position: absolute; top:0; transition: opacity 0.6s ease; height: 100vh; left: 0; right: 0; }
  .expertise-image.active { opacity: 1; visibility: visible; }
  .expertise-image img { height: 100%; width: 100%; object-fit: cover; }
  
  .expertise-link { position: absolute; left: 0; right: 0; display: flex; bottom:100px; z-index: 1; }
  .expertise-link a { opacity: 1; margin-left: auto; }
  .expertise-sticky { height: calc(100vh - 80px);}
  
  
  /* ==========================================================================
     Layout : Columns
   ========================================================================== */
  .layout-columns { display: flex; text-align: center; flex-direction: row;}
  .column { max-width: 350px; margin: 0 auto; }
  .column h2 { margin-bottom: 20px; }
  
  /* ==========================================================================
     Layout : Slider
   ========================================================================== */
  .layout-slider { padding-top:var(--padding); padding-bottom:var(--padding); overflow: hidden; }
  .layout-slider:nth-of-type(even) { background: var(--cream); }
  .layout-slider .swiper { height: 100%; overflow: visible; }
  .layout-slider .swiper-slide { height: auto; }
  .layout-slider .swiper-slide-next .container {  transform: translateX(-70px); margin-left: 0; z-index: 1; opacity: 0.2; }
  .layout-slider .container { position: relative;  box-sizing: border-box; height: 100%; }
  .layout-slider article { padding: 26px 80px 2px 0; box-sizing: border-box; }
  .section-background > .layout-slider:last-of-type { margin-bottom: var(--negative-padding); padding-bottom:var(--padding); }
  
  /* Image */
  .slider-image-container { position: relative; }
  .slider-image-container h2 { position: absolute; top:50%; transform: translate3d(0,-50%,0); left:68px; }
  
  /* Images */
  .slider-images { grid-gap:20px; }
  .slider-image.span-2-col { grid-column: span 2; }
  .slider-image.span-2-row { grid-row: span 2; }
  .slider-image img, .slider-image-container img { height: 100%; object-fit: cover; }
  
  /* Navigation */
  .slider-navigation-previous,
  .slider-navigation-next { position: absolute; bottom: 0; height: 57px; z-index: 1; top:0; margin: auto;  display: flex; transition: opacity 0.3s cubic-bezier(.77,0,.175,1), color 0.3s cubic-bezier(0.5,0,0,1);  color:#CCCCCC;}
  .slider-navigation-previous { right:calc( 50% + 34.53125vw); left: 70px; }
  .slider-navigation-next.swiper-button-disabled,
  .slider-navigation-previous.swiper-button-disabled { opacity: 0; }
  .slider-navigation-next { left:calc( 50% + 34.53125vw); right: 70px; }
  .slider-navigation-next svg,
  .slider-navigation-previous svg { width: 33px; height: 57px; outline:none; cursor: pointer; margin: auto; fill:currentcolor; }
  .slider-navigation-next:hover, .slider-navigation-previous:hover { color:#000; }
  
  /* ==========================================================================
     Layout : Timeline
   ========================================================================== */
  .layout-timeline { position: relative; z-index: 0; }
  .timeline-section { grid-gap:200px; }
  .timeline-section.last .timeline-images { margin-bottom: 0; }
  .timeline-section.last .timeline-text { position:relative; z-index: 2; }
  .timeline-image { width: 68.904593639575972%; margin: auto; position: relative; }
  .timeline-image.is-left { margin-left: 0; }
  .timeline-image.is-right { margin-right: 0; }
  .timeline-image.layer-1 { z-index: 1; }
  .timeline-image.layer-2 { z-index: 2; }
  .timeline-image.layer-3 { z-index: 3; }
  .timeline-image.is-portrait { width: 50.088809946714032%; }
  .timeline-image.is-landscape { width: 83.481349911190053%; }
  .timeline-image.is-landscape-small { width: 60.035523978685613%; }
  .timeline-image img { width:100%; height: auto; }
  .timeline-text { max-width: 520px; margin-left: 20px; position: relative; margin-top:160px; }
  .timeline-text h4 { margin-bottom: 3px; }
  .timeline-text h3 { margin-bottom: 20px; }
  .timeline-text-line { transform: scaleX(0); transform-origin:'left center';}
  .timeline-text-line, .timeline-image-line { position: absolute; top:28px; left: -120px; height: 3px;  background: #F1ECEA; width: 100px; }
  .timeline-image-line { left: 100%; top:50%; margin-top:-1.5px; transform: scaleX(0); transform-origin:'right center'; }
  .timeline-mask { height: calc(119px + var(--padding)); background: #FFF;  position: absolute; bottom: var(--negative-padding); left: 0; right: 0; }
  .timeline-line { position: fixed; left: 0; right: 0; width: 6px; background: #F1ECEA; top:0; height:50vh; margin: 0 auto; z-index: 0; visibility: hidden; } 
  .has-line-visible .timeline-line { visibility: visible; }
  
  /* ==========================================================================
     Layout : Projects
   ========================================================================== */
  .card-project { position: relative; }
  .card-project.is-landscape { grid-column: span 2; }
  .card-project-overlay { position: absolute; top:0; bottom: 0; left: 0; right: 0; display: flex; align-items: center; justify-content: center; text-align: center; flex-direction: column; padding: 16px; opacity: 0; visibility: hidden; transition: opacity 0.3s cubic-bezier(.77,0,.175,1), visibility 0.3s cubic-bezier(.77,0,.175,1); pointer-events: none; background: rgba(0, 0, 0, 0.15); }
  .card-project h3 { margin-bottom: 4px; overflow-wrap: break-word; -webkit-hyphens: auto; hyphens: auto; }
  .card-project h4 { margin-bottom: 10px; }
  .card-project p { max-width: 410px; width: 100%; margin: 0 auto; }
  .card-project img { height: 100%; object-fit: cover; }
  .card-project:hover .card-project-overlay { opacity: 1; visibility: visible; }
  
  /* CTA */
  .projects-link { grid-column: 1/-1; margin-top: 44px; text-align: center; }
  
  /* Mobile Specific projects */
  .layout-projects .is-mobile { display: none; }
  
  
  /* Filtered */
  .filterable { margin: -15px; }
  .filterable .card-project, .grid-spacer { width: 33.33%; border: 15px solid transparent; }
  .filterable .card-project.is-landscape { width: 66.66%; }
  .filterable .card-project.is-landscape-large { width: 100%; }
  .filterable .card-project-image { width: 100%; display: block; height: 28.072916666666667vw; overflow: hidden; }
  .filterable .card-project-image img { height: 100%; object-fit: cover; }
  
  /* Submenu  : Close up gap */
  .has-submenu + .layout-projects { margin-top: -84px; }
  
  @media only screen and (min-width : 1101px ) and (max-width:1919px) {
    .filterable .card-project-image .image { padding-top:0 !important; height: 100%; }
  }
  
  @media only screen and (min-width: 1101px) and (max-width : 1550px) {
    .filterable .card-project-image { height: 32.806804374240583vw }
  }
  
  /* ==========================================================================
     Page : Project
   ========================================================================== */
  .project-container { position: relative; }
  .button-back { width: 32px; height: 56px; color:#CCCCCC; position: fixed; right:6.5625vw; bottom:70px; transform: rotate(180deg); opacity: 0; transition: opacity 0.3s cubic-bezier(.77,0,.175,1), color 0.3s cubic-bezier(0.5,0,0,1); }
  .button-back.is-unstuck { position: absolute; }
  .button-back.is-visible { opacity: 1; }
  .button-back:hover { color: #000; }
  
  /* ==========================================================================
     Footer
   ========================================================================== */
  .footer { text-align: center; padding: 80px 0 0 0; height: 100vh; display: flex; position: relative; z-index: 1;  }
  .footer div { max-width: 1000px; width: 100%; margin: auto; padding: 20px 48px; transform: translateY(-40px); }
  .footer a { margin-top: 40px; font-weight: 400; }
  .footer-event { position: absolute; bottom:0; width: 1px; height: 90px;}
  .footer-button { opacity:0; }
  .footer-button:after { transform: scaleX(0) translate3d(0,0,0); transform-origin: bottom left; bottom: 0; }
  .footer-button:hover:after { transform: scaleX(0) translate3d(0,0,0); }
  .footer-button.is-visible:after { transform: scaleX(1) translate3d(0,0,0); }
  .footer-button.is-visible:hover:after { transform: scaleX(1) translate3d(0,6px,0); }
  
  /* Contact */
  .footer-contact { padding: 28px 37px; display: flex; flex-direction: row; justify-content: center; position: relative; }
  .footer-contact a { display: inline-flex; flex-direction: column; align-items: center; }
  .footer-contact a:after { content: attr(data-text); height: 0;  visibility: hidden;  overflow: hidden; user-select: none; pointer-events: none; font-weight: bold; }
  .footer-contact a:hover { color: #000; font-weight: bold; }
  .footer-address { margin-right: 7.34375vw; font-weight: normal; margin: auto 7.34375vw auto 0; }
  .footer-social { margin: auto 0 auto auto; }
  .footer-social a { margin-left: 25px; }
  .footer-phone { margin: auto 0 auto 0; }
  .page-contact { background: var(--light-grey); }
  
  
  /* ==========================================================================
     Mobile
   ========================================================================== */
  @media only screen and (min-width : 1920px ) {
    
    /* Project Index */
    .filterable .card-project-image { height: 538px; }
    
    /* Expertise */
    .slider-navigation-previous { right: calc( 50% + 663px); }
    .slider-navigation-next { left: calc( 50% + 663px); }
    
  }
  
  @media only screen and (max-width : 1680px ) {
    /* Hero, removed forced line breaks */
    .hero-title br { display: none; }
  }
  
  
  @media only screen and (max-width : 1550px ) {
      
      /* 75% Reduction */
      :root {
        --mb : 120px;
        --negative-mb : -120px;
      }
      
      /* Typography - is more like 85%, matches tablet */
      .f-h1 { /* font-size: 37.5px; */ font-size: 42.5px; }
      .f-125 { /* font-size: 94px; */ font-size:106px; }
      .f-60 { /* font-size: 45px; */ font-size: 51px; }
      .f-50 { /* font-size: 38px; */ font-size: 45px; }
      .f-45 { /* font-size: 34px; */ font-size:38px; }
      .f-40 { /* font-size: 30px; */ font-size: 35px; } 
      .f-35 { /* font-size: 26px; */ font-size: 30px; }
      .f-30 { /* font-size: 22px; */ font-size: 25px; }
      .f-26 { /* font-size: 20px; */ font-size: 22px; } 
      .f-24 { /* font-size: 18px; */ font-size: 20px; }
      .f-20 { /* font-size: 15px; */ font-size: 18px; }
      .f-18 { font-size: 14px; }
      .f-16 { font-size: 12px; }
      body { /* font-size: 15px; */ font-size:18px; }
      
      /* Structure */
      /* body { padding-top: 70px; } */
      .container { width:79.0625%; } 
      .has-underline:after { height: 11px; bottom: -1px; }
      .has-underline.is-visible:hover:after { height: 32px; }
      
      /* Header */
      /* .header-menu-link:after { bottom: -2px; height: 8px; }
      .header { height: 70px; padding: 0 29px 0 29px; }
      .header-logo { width: 110px; height: 20px;}
      .header-menu { top:70px; } */
      /* .submenu { top:70px; font-size: 16px; }
      body.has-border:after { top:70px; } */
      
      /* Accordion */
      .accordion-links { max-width: 510px; min-width: 510px; }
      
      /* Text */
      .layout-text article div { min-width: 0; }
      
      /* Slider */
      .slider-image-container h2 { left: 51px; }
      .slider-navigation-previous { left: 52px; right: calc( 50% + 39.53125vw); }
      .slider-navigation-next { right: 52px; left: calc( 50% + 39.53125vw); }
      .slider-navigation-next svg, .slider-navigation-previous svg { width: 25px; height: 43px; }
      .layout-slider .swiper-slide-next .container { transform: translateX(-52px); }
      
      /* Slideshow */
      .slideshow-button svg { width: 25px; height: 43px; } 
      .slideshow-button-prev { left: -75px; }
      .slideshow-button-next { right: -75px; }
      
      /* Video */
      .layout-video + .layout-images { margin-top:-54px; }
      
      /* Expertise */
      .expertise-sticky { height: calc(100vh - 70px); }
      
      /* Project */
      .button-back { right: 4.2vw; width: 25px; height: 43px; }
      
      /* Footer */
      .footer div { max-width:750px; }
      .footer-title { margin-bottom: 24px; }
  }
  
  @media only screen and (min-width:1101px) and (max-width : 1240px ) {
      /* Text & Image */
      .has-text-left { grid-template-columns: auto 50%; }
      .has-text-right { grid-template-columns: 50% auto; }
      .layout-text_image.is-single-image .image,
      .layout-text_image.is-slideshow .image { padding-top:0 !important; height:100%; }
      .layout-text_image.is-slideshow .swiper { height:100%; }
  }
  
  @media only screen and ( max-width : 1200px ) {
    
    /* Footer : Contact */
    .footer-contact { flex-direction: column;  }
    .footer-address { margin-bottom: 0; }
    .footer-phone { margin-top: 10px; }
    .footer-social { margin-top: -15px; position: absolute; right: 36px; } 
  
    /* Menu */
    /* .header-menu { position: fixed; top:70px; left: 0; bottom: 0; right: 0; background: rgba(255, 255, 255, 0.95); transform: translateY(-120%); transition: transform 0.6s cubic-bezier(0.5,0,0,1); display: flex; flex-direction: column; justify-content: space-around; padding: 15% 20px; z-index: 1; }
    .button-menu { width: 44px; height: 44px; display: block; position: relative; margin-left: auto; z-index: 3; }
    .button-menu:before, .button-menu:after { content:''; height: 3px; width: 28px; background: #CCCCCC; left: 0; right: 0; margin: auto; position: absolute; transition: transform 0.3s cubic-bezier(.77,0,.175,1); }
    .button-menu:before { top:14px; }
    .button-menu:after { bottom: 14px; }
    .header-menu-link { margin: auto; }
    .show-menu .header-menu { transform: translateY(0%); }
    .show-menu .button-menu:after { transform: rotate(-45deg) translateX(4.5px) translateY(-4.5px); }
    .show-menu .button-menu:before { transform: rotate(45deg) translateX(4.5px) translateY(4.5px); }
    .show-menu .header { background: background: rgba(255, 255, 255, 0.95); } */
    
    /* Awards */
    .awards { font-size:24px; }
  
    /* Footer */
    .layout-hero.is-contact { height: calc(100vh - 213px); }
    .footer-contact { font-size: 16px; padding: 18px 37px; position: fixed; bottom: 0; left: 0; right: 0; z-index: 1; flex-direction: column; text-align: center; }
    .footer-address { margin: auto auto 20px auto; }
    .footer-social { position: static; margin: auto; }
    .footer-phone { margin: auto auto 20px auto; }
    
    /* Contact */
    /* Remove scroll dueto browser chrome */
    .page-contact { padding: 0; height: -webkit-fill-available; }
    .page-contact .hero-image { padding-top:70px; padding-bottom:133px; position: fixed; top:0; bottom:0; }
    .page-contact .hero-links { top: 70px; bottom: 133px; transform: none; height: auto; }
    .page-contact .hero-links div { justify-content: center; display: flex; flex-direction: column; }
    .layout-hero.is-contact { height: -webkit-fill-available; max-height: 100vh;  }
  }
  
  @media only screen and (max-width : 1100px) {
    
    :root {
      --mb : 90px;
      --negative-mb : -90px;
      --padding: 90px;
    }
  
    /* Typography */
    .f-125 { font-size: 70px; }
    .f-60 { font-size: 45px; }
    .f-50 { font-size: 45px; }
    .f-40 { font-size: 35px; }
    .f-26 { font-size: 22px; }
    .f-24 { font-size: 20px; }
    .f-20 { font-size: 18px; }
    body { font-size: 18px; }
    
    /* Structure */
    .container { width: 100%; padding-left: 175px; padding-right: 175px; }
    .section-background { padding: 90px 0; }
    
    /* Hero */
    .layout-hero { height: 100.571428571428571vw; }
    .has-tablet-video .hero-video-tablet { display: block; }
    .has-tablet-video .hero-video-desktop { display: none; }
  
    /* Footer */
    .footer { font-size: 40px; }
    .hero-links { display: flex; flex-direction: column; justify-content: space-evenly; height: 100%; }
    
    /* Text & Image : Stacked */
    .is-tablet-stacked { display: block;}
    .is-tablet-stacked .text_image-title { display: block; margin-bottom: 40px; }
    .is-tablet-stacked .text_image-text h2 { display: none; }
    .is-tablet-stacked .text_image-media { margin-bottom: 42px; }
    .text_image-stats { margin-top: 22px; }
    .text_image-stats .stat { font-size: 18px; }
    
    /* Text & Image : Centred */
    .is-tablet-centred { display: block; text-align: center; }
    .is-tablet-centred .text_image-title { display: block; margin-bottom: 40px; }
    .is-tablet-centred .text_image-text h2 { display: none; }
    .is-tablet-centred .text_image-media { margin-bottom: 42px; overflow: hidden; }
  
    /* Text & Image : Portrait */
    .is-tablet-portrait { grid-gap:32px; }
    .is-tablet-portrait .image { padding-top: 125.418060200668896% !important; }
    .is-tablet-portrait.has-text-right { grid-template-columns: 44.362017804154303% auto; }
    .is-tablet-portrait.has-text-left { grid-template-columns: auto 44.362017804154303%; }
    .is-tablet-portrait .text_image-text h2 { font-size: 35px; }
    .is-tablet-portrait .text_image-text .button-underline { margin-top:18px; }
    
    /* Text & Image : Offset */
    .layout-text_image.is-offset { grid-gap:32px; }
    .layout-text_image.is-offset .text_image-text { max-width: 499px; }
    .layout-text_image.is-offset .image { padding-top: 59.047619047619048% !important; }
    .layout-text_image.is-offset .text_image-titles h3 { font-size: 28px; }
      
    /* Awards */
    .layout-awards { grid-template-columns: repeat(1, 1fr); grid-gap:40px; }
    .awards-title  { display: block; }
    .awards-text { grid-column: 1; grid-row: 3; }
    .awards-text h2 { display: none; }
    .awards { grid-column: 1; grid-row: 2; }
    
    /* Testimonials */
    .layout-testimonials cite { max-width: 302px; display: block; width: 100%; margin: auto; }
    .slideshow-button svg { width: 16px; height: 29px; }
    .slideshow-button-next { right: -58px; }
    .slideshow-button-prev { left: -58px; }
    
    /* Accordion */
    .layout-accordion { text-align: center; }
    .accordion-links { display: none; }
    .accordion-sections { margin-top:0; }
    .accordion-section { padding-bottom: 88px; }
    .accordion-section-title { display:block; margin-bottom: 42px; }
    .accordion-section-text { margin: 42px 0 46px 0; font-size: 18px; }
  
    /* News */
    .layout-news { margin-top:0; }
    .featured-news { display: none; }
    .news .text { display: block; margin-top: 18px; }
    .news .text p:last-of-type { margin-bottom: 0; }
    .news-slider .text  { font-size: 18px; }
    
    /* Text */
    .layout-text { padding-top:var(--padding); padding-bottom:var(--padding);  }
    .layout-text article { font-size: 22px; }
    .layout-text article div { max-width: none; }
    .layout-text.is-project { padding: 44px 0;}
    .layout-text.is-project h2 { margin-bottom: 44px; } 
  
    /* Press */
    .layout-press article { font-size: 18px; margin: auto auto 48px auto; }
    .layout-press .swiper-slide { padding-bottom: 28px; }
    .press .image { margin-bottom: 11px; }
    
    /* Images */
    .layout-images { grid-gap:30px; }
    
    /* Video */
    .layout-video + .layout-images { margin-top:-60px; }
    
    /* Expertise */
    .expertise-sticky { height: calc(100vh - 70px); }
    .expertise-titles h3 { font-size: 40px; }
  
    /* Timeline */
    .timeline-section { grid-gap:88px; }
    .timeline-text h4 { font-size: 24px; margin-bottom: -4px; }
    .timeline-text h3 { margin-bottom: 27px; }
    .timeline-text-line, .timeline-image-line { height: 2px; width: 30px;}
    .timeline-text-line { left: -44px; top:15px; }
    .timeline-image-line { width:44px; }
    .timeline-line { width: 3px; }
    .timeline-text { margin-left: 0; margin-top: 30px; }
  
    /* Slider */
    .layout-slider .swiper { margin-bottom: 0; }
    .layout-slider .swiper-slide-next .container { transform: translateX(-98px); }
    .slider-navigation-previous, .slider-navigation-next { width: 64px; margin: auto 0; }
    .slider-navigation-previous svg, .slider-navigation-next svg { width: 16px; height: 29px; }
    .slider-navigation-previous { right: auto; left: 16px; }
    .slider-navigation-next { left: auto; right: 16px; }
    .slider-image-container h2 { max-width: 226px; left: 40px; }
    .slider-image-container .image { padding-top: 60.534124629080119% !important; }
    .slider-image.is-landscape .image { padding-top: 120.987654320987654% !important; }
    .slider-image.is-landscape.span-2-col .image { padding-top: 59.63855421686747% !important; }
    .slider-image.is-landscape.span-2-row .image { padding-top: 123.493975903614458% !important; }
    
    /* Columns */
    .layout-columns { flex-direction: column; }
    .column { margin-bottom: 80px; }
    .column:last-child { margin-bottom: 0; }
    .column h2 { margin-bottom: 44px; }
    
    /* Projects */
    .card-project p { display: none; } 
    .card-project h3 { font-size: 26px;padding: 0 16px; margin-bottom: 0; }
    .card-project h4 { margin: 12px 0 0 0; font-size: 16px; }
    .card-project.is-loaded:hover .card-project-overlay, .touchevents .card-project-overlay { opacity:1; visibility:visible; }
    .filterable { margin: -8px; }
    .filterable .card-project { border-width: 8px; }
    .filterable .card-project-image { height: auto; }
    .not-filterable .card-project-overlay { display: none; }
    
    /* Project */
    .button-back { right: 32px; width: 16px; height: 29px; }
    
  }
  
  @media only screen and (min-width : 769px) {
    /* Layout : Projects */
    /* Fix image height on tablet */
    .layout-projects.not-filterable .is-portrait .image { padding-top:0 !important; height: 100%; }
  }
  
  @media only screen and (max-width : 834px) {
    /* Reduce Container */
    .container { padding-left:80px; padding-right:80px; width: 100%; }
  }
  
  @media only screen and (max-width : 768px) {
    
    
    :root {
      --mb : 64px;
      --negative-mb : -64px;
      --padding: 70px;
    }
  
    /* Structure */
    body { padding-top:61px; font-size: 16px; }
    .f-125 { font-size: 60px; }
    .f-60 { font-size: 30px; }
    .f-50 { font-size: 35px; }
    .f-45 { font-size: 35px; }
    .f-40 { font-size: 30px; }
    .f-35 { font-size: 26px; }
    .f-30 { font-size: 26px; }
    .f-26 { font-size: 18px; }
    .f-24 { font-size: 16px; }
    .f-20 { font-size: 16px; }
    p { margin-bottom: 30px; }
    
    .has-underline:after { height: 10px; }
    .has-underline.is-visible:hover:after { height: 34px; }
    .section-background { padding: 62px 0; }
    .slideshow-button { display: inline-flex; position: static; margin-top: 10px; }
    .slideshow-button svg { width: 16px; height: 29px; }
    .m-delay-1 { transition-delay: 0.2s; }
    .m-delay-2 { transition-delay: 0.4s; }
    .m-delay-3 { transition-delay: 0.6s; }
    .has-fade-up { opacity: 0; transform: translate3d(0,20px,0); }
      
    /* Header */
    /* .header { height: 61px; padding: 0 29px 0 29px; } */
    /* .header-logo { width: 110px; height: 20px;} */
    body.has-border:after { top:61px; }
  
    /* Menu */
    /* .header-menu { top:61px; } */
    
    /* Submenu */
    .submenu { font-size: 14px; position: sticky; top:61px; transform: translateY(0); margin:10px 0 50px 0; padding: 0 30px; }
    .submenu + .section-background { padding-top:0; }
  
  
    /* Layout : Hero */
    .layout-hero { height: 137.692307692307692vw; }
    .hero-links { display: flex; flex-direction: column; justify-content: space-around; align-items: center; height: 70%; }
    .hero-links h2 { font-size: 30px; margin-bottom: 10px; }
    .hero-image { height: 100%; }
    .has-mobile-video .hero-video-mobile { display: block; }
    .has-mobile-video .hero-video-desktop, .has-mobile-video .hero-video-tablet { display: none; }
  
  
    /* Layout : Projects : Index */
    .filterable { margin: 0; }
    .filterable .card-project { margin-bottom: 30px;}
    .filterable .card-project:last-of-type { margin-bottom: 0; }
    .filterable .card-project.is-landscape { width: 100%; }
    .filterable .card-project .image { padding-top: 61.659192825112% !important; }
    .filterable .card-project-image { height: auto; }
    .filterable .card-project,
    .filterable .card-project.is-landscape,
    .grid-spacer { border: 0; width: 100%; }
    
    /* Layout : Projects : Homepage */
    .layout-projects.not-filterable { grid-template-columns: repeat(2, 1fr); grid-gap:18px; }
    .layout-projects .is-desktop { display: none; }
    .layout-projects .is-mobile { display: block; }
    .card-project.is-mobile.is-portrait .image { padding-top: 128.205128205128205% !important; } 
    .card-project.is-mobile.is-landscape .image { padding-top: 61.818181818181818% !important; }
    .card-project img { height: 100%; object-fit: cover; }
    .card-project h3  { font-size: 26px; }
    
    /* Layout : Project */
    .button-back { display: none; }
    
    /* Layout : Video */
    .layout-video + .layout-images { margin-top: -31px; }
    
    /* Layout : Text */
    .layout-text { padding-top:var(--padding); padding-bottom:var(--padding);  }
    .layout-text article { font-size: 18px; }
    .layout-text h2 { font-size: 35px; margin-bottom: 34px; }
    .layout-text.is-project { padding: 70px 0;}
  
    /* Layout : Text & Image */
    .layout-text_image,
    .is-tablet-portrait.has-text-right,
    .is-tablet-portrait.has-text-left { text-align: center; grid-template-columns: repeat(1, 1fr); display: grid; grid-gap:32px; }
    .text_image-text { grid-row: 2; margin-left: auto; margin-right: auto; }
    .text_image-text .button-underline { margin: 24px auto 0 auto; }
    .text_image-text p { width: 100%; }
    .text_image-media { grid-row: 3; }
    .has-text-left .text_image-media,
    .has-text-right .text_image-text { grid-column: 1; }
    
    /* Text & Image : Stacked */
    .is-tablet-stacked .text_image-title,  
    .is-tablet-stacked .text_image-media { margin-bottom: 0; }
    .is-tablet-stacked .text_image-text { max-width:none;}
  
    /* Text & Image : Portrait */
    .is-tablet-portrait .image { padding-top:59.090909090909091% !important; }
    .is-tablet-portrait .text_image-title { display: block; }
    .is-tablet-portrait .text_image-text { grid-row: 3; }
    .is-tablet-portrait .text_image-text h2 { display: none; }
    .is-tablet-portrait .text_image-media { grid-row: 2; }
    
    /* Text & Image : Stats */
    .text_image-stats { margin-left: auto; margin-right: auto; }
    .text_image-stats .stat { min-width: 0; padding-right: 4px; }
    .text_image-stats li { justify-content: center; }
    
    /* Text & Image : Offset */
    .layout-text_image.is-offset.has-text-left { text-align: left; }
    .layout-text_image.is-offset.has-text-right { text-align: right; }
    .layout-text_image.is-offset.has-text-right .text_image-titles { grid-column: 1; }
    .layout-text_image.is-offset .text_image-media { grid-row:1; grid-column: 1; }
    .layout-text_image.is-offset .text_image-titles { grid-row: 2; }
    .layout-text_image.is-offset .text_image-titles h3 { font-size: 24px; }
    .layout-text_image.is-offset .text_image-text {grid-row: 3; max-width: 75%; margin:0; }
    .layout-text_image.is-offset .text_image-text .button-underline { min-width: 0; margin-left: 0; margin-right: 0; }
    .layout-text_image.is-offset .text_image-text p { margin-bottom: 4px; }
  
    /* Text & Image : Slideshow */
    .is-slideshow .text_image-title { margin-bottom: 0; }
    .is-slideshow .text_image-media { grid-row: 2; margin-bottom: 0; }
    .is-slideshow .text_image-text { grid-row: 3; }
    
    /* Layout : Press */
    .layout-press { text-align: center; }
    .layout-press .swiper { font-size: 24px; }
    .press .image { margin-bottom: 30px; }
    
    /* Layout : Expertise */
    .expertise-titles { padding-top: calc(32.563025210084035vh - 30px); }
    .expertise-titles h2 { top:58px; }
    .expertise-sticky { height: 100vh - 61px); }
    .expertise-title h3 { font-size: 30px; }
    .expertise-link { bottom:42px; }
    .expertise-link a { margin-right: auto; padding: 0 36px; }
    
    /* Layout : Columns */
    .column { margin-bottom: 70px; }
    .column h2 { margin-bottom: 36px; }
    
    /* Layout : Images */
    .layout-images { grid-template-columns: repeat(1, 1fr); grid-gap:33px; }
    .layout-images .span-2, .layout-images .span-3 { grid-column: auto; }
    
    /* Layout : Testimonials */
    .layout-testimonials p { font-size: 24px; }
    .layout-testimonials h2 { margin-bottom: 28px; }
    .layout-testimonials p { margin-bottom: 30px; }
    
    /* Layout : Awards */
    .layout-awards { grid-template-columns: repeat(1, 1fr); text-align: center; grid-gap:32px; }
    .awards-text { grid-column: 1; grid-row: 2; }
    .awards { grid-row: auto; font-size: 18px; }
    
    /* Layout : News */
    .layout-news { text-align: center; margin-top: 0; }
    .featured-news { display:none; }
    .news-slider { padding: 0 16px; }
    .news-slider .swiper { font-size: 24px; }
    .news-slider .text { display: block; margin-top: 10px; font-size: 18px; padding-bottom: 4px; }
    .news-slider .title, .news-slider .date { font-size: 24px; }
  
    /* Layout : Projects */
    .layout-projects .button-arrow  { text-align: left; margin-top:0; }
    
    /* Layout : Timeline */
    .timeline-section { grid-template-columns: repeat(1, 1fr); padding-left: 40px; grid-gap:30px; }
    .timeline-text { grid-row:1; z-index: 1; }
    .timeline-line { left: 29px; right:auto; }
    .timeline-text-line { left: -40px; top:46px; }
    .timeline-image-line { display: none; }
    .timeline-text h3 { font-size: 35px; }
    
    /* Layout : Slider */
    .slider-navigation-next, .slider-navigation-previous { top:auto; bottom: 0; height: 29px; width: 16px;  }
    .slider-navigation-next { right: 30px; }
    .slider-navigation-previous { left: auto; right:66px; }
    .layout-slider article { padding-top:32px; }
    .layout-slider .swiper-slide-next .container { transform: none; opacity: 1; }
    .slider-image-container h2 { font-size: 30px; left: 16px; }
    .slider-image-container .image { padding-top:73.333333333333333% !important;}
    .slider-images { grid-template-columns: repeat(2, 1fr); grid-gap: 8px; grid-row-gap: 8px; }
    .slider-image.is-mobile-hidden { display: none; }
    .slider-image.is-landscape.span-2-col .image { padding-top:35.454545454545455% !important; }
    .slider-image.is-landscape .image { padding-top:72.5% !important; }
    
    /* Layout : CTA */
    .layout-cta .button-arrow { margin-top: 0; }
    
    /* Layout : Accordion */
    .accordion-sections { margin-top: 0; }
    .accordion-section-title { margin-bottom: 38px; }
    .accordion-stats h4 { margin-top: -4px; }
    .accordion-stats h4 span { font-size: 12px; }
    .accordion-section { padding-bottom: 70px; }
    .accordion-section-text { margin: 24px 0; font-size: 16px; }
    
    /* Footer */
    .footer { padding-top:61px; font-size: 30px; }
    .footer div { max-width: none; transform: translateY(-30px); }
    
    /* Contact */
    /* Remove scroll dueto browser chrome */
    .page-contact .hero-image { padding-top:61px;  }
    .page-contact .hero-links { top: 61px;  }
    
  }
  
  
  @media only screen and (max-width : 600px) {
    
    /* Reduce Container */
    .container { padding-left:30px; padding-right:30px; width: 100%; }
    
    /* Submenu */
    .submenu.is-mobile-hidden { display: none; }
    .submenu.is-mobile-hidden + section { margin-top:70px; }
    
    /* Text & Image */
    .layout-text_image.is-offset .text_image-text .button-underline { margin-left: auto; margin-right: auto; }
    .layout-text_image.is-offset .text_image-text { max-width: none; }
    .layout-text_image.is-offset.has-text-right { text-align: left; }
    .layout-text_image.is-offset.has-text-right .text_image-titles  { text-align: left; }
    .layout-text_image.is-offset.has-text-right .text_image-text .button-underline { margin-right: auto; }
  
    /* Slider */
    .layout-slider .swiper { padding-bottom: 72px; margin-bottom: -36px; }
    .layout-slider article { padding-right: 0; }
      
    /* Footer */
    .footer-social a { margin: 0 10px; }
    .footer-social a:last-of-type { display: none; }
    .footer-contact { padding-left: 10px; padding-right: 10px; }
  
  }
  
  @media only screen and (max-width : 500px) {
    /* Layout : Awards */
    .awards .swiper-slide { flex-direction: column; text-align: center; }
    .awards h4 { margin: -10px 0 0 0; } 
  }
  
  @media only screen and (max-width : 410px) {
    /* Footer : CTA */
    .footer-button { display: block; padding: 0; }
  }
  
  @media only screen and (max-width : 700px) {
    /* Submenu : Knock onto two lines */
    .submenu { line-height: 14px; padding: 14px 30px; flex-wrap: wrap; }
    .submenu-inner { flex-wrap: wrap; max-width: 80%; }
    .submenu a { margin: 0 8px; height: 28px; line-height: 28px; }
  }