﻿/*
    Slow migrating thead css from "master.css" stop here.
    So easier to maintain going forward.
*/
/*Colours*/
/*Breakpoints*/
a {
  color: #ff6100;
}
a:focus,
a :hover {
  text-decoration: none;
}
@media only screen and (min-width: 767px) {
  .accordion-block h3,
  .columns-intro h3,
  .story-columns h3 {
    font-size: 32px;
    margin-bottom: 8px;
  }
}
.accordion-block {
  margin: 6vw auto;
  font-family: 'Sohne Leicht', sans-serif;
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 30px;
}
.accordion-header {
  font-family: 'Haptik Regular', sans-serif;
  font-size: 54px;
  line-height: 54px;
  color: #ff6100;
}
.accordion {
  height: 1px;
  width: 1px;
  opacity: 0;
}
.accordion:checked + label:after {
  transform: rotate(-180deg);
}
.accordion:checked ~ div {
  max-height: 2000px;
  transition: max-height 0.5s ease-in;
}
.accordion + label {
  cursor: pointer;
  width: 100%;
  display: block;
  position: relative;
  font-family: 'Sohne Mager', sans-serif;
  font-size: 36px;
  line-height: 42px;
  -webkit-font-smoothing: antialiased;
  color: #1e1e1e;
  margin-bottom: 15px;
}
.accordion + label:after {
  content: ' ';
  background-image: url('/creative/img/arrow.svg');
  position: absolute;
  right: 20px;
  width: 37px;
  height: 20px;
  background-size: cover;
  top: 10px;
}
.accordion + label span {
  width: 80%;
  display: block;
}
.accordion ~ div {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.45s ease-out;
}
.accordion ~ div p {
  font-size: 18px;
  line-height: 24px;
}
@media only screen and (min-width: 767px) {
  .accordion + label span {
    width: 95%;
  }
  .accordion ~ div p {
    font-size: 24px;
    line-height: 30px;
  }
}
.btn {
  background: #ff6100;
  color: #000;
  padding: 24px 0;
  text-align: center;
  width: 80%;
  max-width: 360px;
  display: block;
  font-family: 'Sohne Leicht', sans-serif;
  font-weight: normal;
  font-style: normal;
  font-size: 30px;
  line-height: 24px;
  cursor: pointer;
  border: none;
  outline: none;
}
.btn.secondary-colour {
  background: #fff;
  color: #000;
}
.btn.tertiary-colour {
  background: #1e1e1e;
  color: #fff;
}
.image-banner {
  position: relative;
  z-index: 5;
  margin-bottom: 0;
}
.image-banner:after {
  width: 100%;
  height: 80vh;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.2);
}
.image-banner img {
  height: 80vh;
  object-fit: cover;
}
.image-banner img.desktop {
  display: none;
}
.image-banner img.mobile {
  display: block;
}
.image-banner .image-banner-wrap {
  height: 75vh;
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
}
.image-banner .image-banner-wrap .heading-outer {
  position: absolute;
  top: 60%;
  left: 0;
  -moz-transform: translate(0%, -50%);
  -ms-transform: translate(0%, -50%);
  -webkit-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
  z-index: 100;
  width: 100vw;
}
.image-banner .image-banner-wrap h1 {
  font-family: 'Haptik Regular', sans-serif;
  font-style: normal;
  width: 85%;
  font-size: 48px;
  line-height: 48px;
  letter-spacing: 0px;
  letter-spacing: -2px;
  -webkit-font-smoothing: antialiased;
}
.image-banner .image-banner-wrap h2 {
  font-family: 'Sohne Leicht', sans-serif;
  font-weight: normal;
  font-style: normal;
  font-size: 22px;
  line-height: 26px;
  -webkit-font-smoothing: antialiased;
  color: #000;
}
.banner-btns {
  display: flex;
  flex-direction: column;
  margin-top: 2vh;
}
.banner-btns .btn:last-child {
  margin: 10px 0;
}
.image-banner--content {
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 2000px;
  color: #ff6100;
}
.image-banner--content.secondary-colour {
  color: #fff;
}
.image-banner--content.secondary-colour h2 {
  color: inherit;
}
.image-banner--content.tertiary-colour {
  color: #000;
}
.image-banner--content.tertiary-colour h2 {
  color: inherit;
}
@media only screen and (min-width: 767px) {
  .banner-btns {
    flex-direction: row;
    margin-top: 5vh;
  }
  .banner-btns .btn:last-child:not(:first-child) {
    margin: 0 30px;
  }
  .image-banner {
    height: 106vh;
    margin-bottom: 10vh;
  }
  .image-banner:after {
    height: 100%;
  }
  .image-banner img {
    height: 100%;
  }
  .image-banner img.mobile {
    display: none;
  }
  .image-banner img.desktop {
    display: block;
  }
  .image-banner .image-banner-wrap {
    height: 106vh;
    /*.heading-outer {
                top: 70%;
            }*/
  }
  .image-banner .image-banner-wrap h1 {
    width: 100%;
    font-size: 114px;
    line-height: 114px;
  }
  .image-banner .image-banner-wrap h2 {
    font-size: 36px;
    line-height: 42px;
  }
}
@media only screen and (min-width: 1440px) {
  .image-banner .image-banner-wrap {
    /*.heading-outer {
                top: 60%;
            }*/
  }
  .image-banner .image-banner-wrap h1 {
    line-height: 140px;
  }
}
@media only screen and (min-width: 2000px) {
  .image-banner {
    height: 90vh;
  }
  .image-banner .image-banner-wrap h1 {
    font-size: 132px;
    line-height: 160px;
    letter-spacing: -2px;
    width: 94%;
  }
}