html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

html,
body {
  height: 100%; }

body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased; }

ol,
ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word; }

input,
button,
textarea,
select {
  font: inherit; }

button,
input[type="submit"],
summary {
  cursor: pointer; }

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%; }

input,
textarea,
button {
  border-radius: 0;
  border: 0;
  background: none; }

details summary::marker {
  content: ""; }

details summary::-webkit-details-marker {
  display: none; }

.grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-auto-rows: auto;
  width: 100%; }

.span-6-md {
  grid-column: span 12; }
  @media (min-width: 850px) {
    .span-6-md {
      grid-column: span 6; } }
.span-6 {
  grid-column: span 6; }

.span-12 {
  grid-column: span 12; }

.span-6-end {
  grid-column: span 12; }
  @media (min-width: 850px) {
    .span-6-end {
      grid-column: 7/13; } }
.row-gap-15 {
  grid-row-gap: 15px; }

.row-gap-35 {
  grid-row-gap: 35px; }

.row-gap-50 {
  grid-row-gap: 25px; }
  @media (min-width: 850px) {
    .row-gap-50 {
      grid-row-gap: 50px; } }
.row-gap-135 {
  grid-row-gap: 135px; }

@media (min-width: 850px) {
  .span-12-md {
    grid-column: span 12; } }

.children-span-4 > div {
  grid-column: span 12; }
  @media (min-width: 850px) {
    .children-span-4 > div {
      grid-column: span 4; } }
.sr-only {
  position: absolute !important;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0; }

.flex {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%; }

.flex-between {
  display: flex;
  display: -webkit-flex;
  display: -ms-flexbox;
  align-items: center;
  justify-content: space-between;
  width: 100%; }

.align-center {
  display: flex;
  display: -webkit-flex;
  display: -ms-flexbox;
  align-items: center;
  justify-content: flex-start; }

.flex-vertical-between {
  display: flex;
  display: -webkit-flex;
  display: -ms-flexbox;
  justify-content: space-between;
  flex-direction: column;
  height: 100%; }

:root {
  --body: "Suisse Intl";
  --works: 'Suisse Works';
  --h1: 160px;
  --h2: 60px;
  --h3: 24px;
  --body-xl: 38px;
  --body-lg: 28px;
  --body-md: 24px;
  --body-sm: 16px;
  --body-xs: 14px;
  --p: 12px;
  --black: #121212;
  --white: #F3F3EE;
  --cream: #F3F3EE;
  --beige: #AAA29A;
  --brown: #5B4D3F;
  --concrete: #898989;
  --gutter: 24px;
  --top-space: 220px;
  --headerHeight: 103px;
  --space-xl: 220px;
  --space-lg: 120px;
  --space-md: 105px;
  --space-sm: 85px;
  --space-xs: 50px;
  --sec: 0.5s;
  --timing: ease; }
  @media (max-width: 850px) {
    :root {
      --h1: 38px;
      --h2: 38px;
      --h3: 14px;
      --body-xl: 24px;
      --body-md: 14px;
      --body-sm: 14px;
      --headerHeight: 90px;
      --top-space: 155px;
      --space-xl: 85px;
      --space-lg: 65px;
      --space-md: 50px;
      --space-sm: 40px; } }
*,
*:before,
*:after {
  box-sizing: border-box;
  margin: 0;
  padding: 0; }

*:focus {
  outline: none; }

html {
  font-size: 12px;
  font-weight: normal;
  font-style: normal;
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  html.beige {
    background-color: var(--beige); }
    html.beige body {
      background-color: var(--beige); }
  html.cream {
    background-color: var(--cream); }
    html.cream body {
      background-color: var(--cream); }

html,
body {
  font-family: var(--body);
  background-color: var(--cream); }

body {
  line-height: 1;
  overflow-x: hidden;
  -ms-overflow-style: none;
  scrollbar-width: none; }
  body.panel-open {
    overflow: hidden; }
  body::-webkit-scrollbar {
    display: none;
    -webkit-appearance: none; }

a {
  text-decoration: none;
  color: currentColor; }

h1, .h1 {
  font-size: var(--h1);
  font-family: var(--works);
  letter-spacing: -0.05em; }

h2, .h2 {
  font-size: var(--h2);
  letter-spacing: -0.025em; }

h3, .h3 {
  font-size: var(--h3); }

p, .p {
  font-size: var(--p);
  line-height: 1.2; }

button {
  color: inherit;
  font-size: inherit; }

.mobile-only {
  display: block; }
  @media (min-width: 850px) {
    .mobile-only {
      display: none; } }
.desktop-only {
  display: none; }
  @media (min-width: 850px) {
    .desktop-only {
      display: block; } }
.tablet-up-only {
  display: none; }
  @media (min-width: 1100px) {
    .tablet-up-only {
      display: block; } }
.fit-content {
  display: block;
  width: fit-content;
  line-height: 1.2; }

.space-xl {
  margin-bottom: var(--space-xl); }

.space-lg {
  margin-bottom: var(--space-lg); }

.space-md {
  margin-bottom: var(--space-md); }

.space-sm {
  margin-bottom: var(--space-sm); }

.space-xs {
  margin-bottom: var(--space-xs); }

.padd-xs {
  padding-bottom: var(--space-xs); }

.pb-15 {
  padding-bottom: 15px; }

.mb-15 {
  margin-bottom: 15px; }

.mb-25 {
  margin-bottom: 25px; }

.gutter {
  padding: 0 var(--gutter); }

.kt-h3 p {
  font-size: var(--h3); }

.body-xl {
  font-size: var(--body-xl); }

.body-md {
  font-size: var(--body-md); }

.body-sm {
  font-size: var(--body-sm); }

.body-xs {
  font-size: var(--body-xs); }

.kt-xs > p {
  font-size: var(--body-xs); }

.kt-sm > p {
  font-size: var(--body-sm); }

.kt-lg {
  width: 100%;
  max-width: 580px; }
  .kt-lg p {
    font-size: var(--body-xl); }
    @media (min-width: 850px) {
      .kt-lg p {
        font-size: var(--body-lg); } }
.kt-md {
  width: 100%;
  max-width: 680px; }
  .kt-md.w-560 {
    max-width: 560px; }
  .kt-md p {
    font-size: var(--body-md); }
    .kt-md p:not(:first-of-type)::before {
      content: "";
      padding-left: 20px; }
      @media (min-width: 850px) {
        .kt-md p:not(:first-of-type)::before {
          padding-left: 40px; } }
  .kt-md.p-space > p:not(:last-of-type) {
    margin-bottom: 25px; }

.page-title-lg {
  margin-bottom: 40px; }
  @media (min-width: 850px) {
    .page-title-lg {
      margin-bottom: 90px; } }
.page-title-md {
  margin-bottom: 35px; }
  @media (min-width: 850px) {
    .page-title-md {
      margin-bottom: 60px; } }
.cream-bg {
  background-color: var(--cream); }

.black-bg {
  background-color: var(--black); }

.beige-bg {
  background-color: var(--beige); }

.brown-bg {
  background-color: var(--brown); }

.text-white {
  color: var(--white); }

.works {
  font-family: var(--works); }

.landscape-slim .aspectholder {
  height: 0;
  position: relative;
  padding-top: 62.5%; }
  @media (min-width: 850px) {
    .landscape-slim .aspectholder {
      padding-top: 46.5%; } }
  .landscape-slim .aspectholder img {
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    object-position: center;
    height: 100%;
    width: 100%; }

.landscape .aspectholder {
  height: 0;
  position: relative;
  padding-top: 62.5%; }

.portrait .aspectholder {
  height: 0;
  padding-bottom: 110%;
  position: relative; }

.image-max-w {
  width: 100%; }
  @media (min-width: 850px) {
    .image-max-w {
      padding-right: var(--gutter); } }
  @media (min-width: 1100px) {
    .image-max-w {
      max-width: 575px; } }
.opacity-50 {
  opacity: 0.5; }

.cursor-point {
  cursor: pointer; }

.border-bottom-black {
  border-bottom: 1px solid var(--black); }

.hover-opacity {
  transition: opacity var(--sec) var(--timing); }
  @media (min-width: 850px) {
    .hover-opacity:hover {
      opacity: 0.5; } }
img, video {
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
  object-position: center;
  height: 100%;
  width: 100%; }

.word {
  display: inline-block;
  overflow: hidden; }
  .word > p {
    position: relative;
    display: block;
    transition: transform 0.3s var(--timing);
    transform: translateY(-100%); }
  .word.active > p {
    transform: translateY(0%); }

.transition-in {
  transition: opacity 0.4s var(--timing);
  opacity: 0; }
  .transition-in.visible {
    opacity: 1; }

.hover-underline {
  position: relative; }
  .hover-underline::before {
    content: "";
    width: 0px;
    height: 1px;
    background-color: var(--black);
    position: absolute;
    bottom: -1px;
    left: 0;
    transition: width var(--sec) var(--timing); }
  @media (min-width: 850px) {
    .hover-underline:hover::before {
      width: 100%; } }
.arrow-link-hover .arrow-wrap {
  overflow: hidden;
  margin-left: 4px;
  display: block; }
  @media (min-width: 850px) {
    .arrow-link-hover .arrow-wrap {
      margin-left: 8px; } }
.arrow-link-hover svg {
  transform: translateX(-4px);
  transition: transform var(--sec) var(--timing); }
  @media (max-width: 850px) {
    .arrow-link-hover svg {
      width: 22px; } }
  @media (min-width: 850px) {
    .arrow-link-hover svg {
      transform: translateX(-7px); } }
@media (min-width: 850px) {
  .arrow-link-hover:hover svg {
    transform: translateX(0px); } }

.fit-content {
  width: fit-content;
  display: block; }

.z-forward {
  position: relative;
  z-index: 2; }

.logo-animation {
  display: flex; }
  .logo-animation > span {
    display: block;
    overflow: hidden;
    transition: width var(--sec) var(--timing); }
  .logo-animation svg {
    height: 34px;
    min-height: 34px; }
  .logo-animation .lloyd {
    width: 27px; }
    .logo-animation .lloyd svg {
      width: 152px;
      min-width: 152px; }
  .logo-animation .hartley {
    width: 34px; }
    .logo-animation .hartley svg {
      width: 220px;
      min-width: 220px; }
  @media (min-width: 850px) {
    .logo-animation:hover .lloyd {
      width: 172px; }
    .logo-animation:hover .hartley {
      width: 220px; } }
.home__page .read-more {
  margin-top: 25px;
  font-size: 14px; }
  @media (min-width: 850px) {
    .home__page .read-more {
      font-size: 24px; } }
.home__page .home__hero-section {
  position: relative;
  z-index: 2; }
  .home__page .home__hero-section .slide {
    width: 100vw; }
    .home__page .home__hero-section .slide .aspectholder {
      position: relative;
      height: 0;
      padding-top: var(--vh); }

.home__page .home__hero-section .home__hero-media {
  height: var(--vh);
  background-color: var(--beige); }
  .home__page .home__hero-section .home__hero-media .aspectholder {
    position: relative;
    height: 0;
    padding-top: var(--vh); }

.home__page .home__hero-section .marquee-wrapper {
  position: relative; }
  .home__page .home__hero-section .marquee-wrapper .animate-list-wrapper {
    pointer-events: none;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 6;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center; }
    @media (min-width: 850px) {
      .home__page .home__hero-section .marquee-wrapper .animate-list-wrapper {
        flex-direction: row; } }
    .home__page .home__hero-section .marquee-wrapper .animate-list-wrapper .animate-list-inner {
      position: relative;
      height: 32px; }
      @media (max-width: 850px) {
        .home__page .home__hero-section .marquee-wrapper .animate-list-wrapper .animate-list-inner {
          width: 100%;
          text-align: center; } }
    .home__page .home__hero-section .marquee-wrapper .animate-list-wrapper .animate-list-item {
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      top: 0;
      opacity: 0;
      transition: opacity 1s var(--timing);
      color: var(--white);
      font-size: 24px; }
      @media (min-width: 850px) {
        .home__page .home__hero-section .marquee-wrapper .animate-list-wrapper .animate-list-item {
          font-size: 30px;
          left: 0;
          transform: translateX(0%); } }
      .home__page .home__hero-section .marquee-wrapper .animate-list-wrapper .animate-list-item.show {
        opacity: 1; }
      .home__page .home__hero-section .marquee-wrapper .animate-list-wrapper .animate-list-item span {
        white-space: nowrap;
        font-family: 'The Future';
        letter-spacing: -0.04em;
        display: inline-block; }
        @media (min-width: 850px) {
          .home__page .home__hero-section .marquee-wrapper .animate-list-wrapper .animate-list-item span {
            transform: translateY(3px); } }
  .home__page .home__hero-section .marquee-wrapper svg {
    height: 24px;
    width: 308px; }
    @media (min-width: 850px) {
      .home__page .home__hero-section .marquee-wrapper svg {
        width: 308px;
        height: 30px;
        margin-right: 12px; } }
    .home__page .home__hero-section .marquee-wrapper svg path {
      fill: var(--white); }

.home__page .all-projects-link {
  width: 100%;
  display: flex;
  display: -webkit-flex;
  display: -ms-flexbox;
  align-items: center;
  justify-content: center; }
  .home__page .all-projects-link a {
    display: flex;
    align-items: center; }
  .home__page .all-projects-link .title {
    font-size: var(--h3); }

.home__page .values__section {
  padding: var(--space-lg) 0 var(--space-xl); }
  .home__page .values__section .values__section-inner {
    width: 100%;
    max-width: 1600px;
    margin: 0 auto; }
  .home__page .values__section .text-bottom {
    padding-top: 280px; }
    @media (min-width: 850px) {
      .home__page .values__section .text-bottom {
        padding-top: 400px; } }
  .home__page .values__section .text-wrap {
    max-width: 537px;
    position: relative;
    z-index: 6; }
  .home__page .values__section .values__list-item {
    position: relative; }
    @media (min-width: 850px) {
      .home__page .values__section .values__list-item .value-image .aspectholder {
        transform: translateY(-25%); } }
    @media (min-width: 1100px) {
      .home__page .values__section .values__list-item .value-image .aspectholder {
        transform: translateY(-40%); } }
    @media (min-width: 1400px) {
      .home__page .values__section .values__list-item .value-image .aspectholder {
        transform: translateY(-65%); } }
    .home__page .values__section .values__list-item:not(:first-of-type) {
      padding-top: 190px; }
      @media (min-width: 850px) {
        .home__page .values__section .values__list-item:not(:first-of-type) {
          padding-top: 310px; } }
    .home__page .values__section .values__list-item:first-of-type {
      padding-top: 190px; }
      @media (min-width: 850px) {
        .home__page .values__section .values__list-item:first-of-type {
          padding-top: 355px; } }
    .home__page .values__section .values__list-item .value-single {
      text-align: center;
      position: relative;
      z-index: 6;
      font-size: var(--h2); }
      @media (min-width: 850px) {
        .home__page .values__section .values__list-item .value-single {
          font-size: 85px; } }
  .home__page .values__section .value-image {
    position: absolute;
    top: 0px;
    z-index: 2; }
    .home__page .values__section .value-image .aspectholder {
      position: relative;
      height: 0; }
    .home__page .values__section .value-image.left {
      left: 0; }
    .home__page .values__section .value-image.centre-left {
      left: 15%; }
    .home__page .values__section .value-image.centre-right {
      right: 15%; }
    .home__page .values__section .value-image.right {
      right: 0; }
    .home__page .values__section .value-image.landscape-aspect {
      width: 254px; }
      @media (min-width: 850px) {
        .home__page .values__section .value-image.landscape-aspect {
          width: 654px; } }
      .home__page .values__section .value-image.landscape-aspect .aspectholder {
        padding-top: 62.5%; }
    .home__page .values__section .value-image.portrait-tall-aspect {
      width: 220px; }
      @media (min-width: 850px) {
        .home__page .values__section .value-image.portrait-tall-aspect {
          width: 460px; } }
      .home__page .values__section .value-image.portrait-tall-aspect .aspectholder {
        padding-top: 145%; }
    .home__page .values__section .value-image.square-aspect {
      width: 233px; }
      @media (min-width: 850px) {
        .home__page .values__section .value-image.square-aspect {
          width: 422px; } }
      .home__page .values__section .value-image.square-aspect .aspectholder {
        padding-top: 100%; }
    .home__page .values__section .value-image.portrait-aspect {
      width: 240px; }
      @media (min-width: 850px) {
        .home__page .values__section .value-image.portrait-aspect {
          width: 420px; } }
      .home__page .values__section .value-image.portrait-aspect .aspectholder {
        padding-top: 115%; }
    .home__page .values__section .value-image.portrait-short-aspect {
      width: 222px; }
      @media (min-width: 850px) {
        .home__page .values__section .value-image.portrait-short-aspect {
          width: 466px; } }
      .home__page .values__section .value-image.portrait-short-aspect .aspectholder {
        padding-top: 115%; }

.home__page .studio__articles-slider {
  padding: var(--space-lg) 0 var(--space-xl); }
  .home__page .studio__articles-slider h3 {
    margin-bottom: var(--space-sm); }
  .home__page .studio__articles-slider .date {
    margin-bottom: 8px; }
  .home__page .studio__articles-slider .slide {
    padding-right: var(--gutter); }
    .home__page .studio__articles-slider .slide .aspectholder {
      position: relative;
      height: 0;
      margin-bottom: 10px; }
    .home__page .studio__articles-slider .slide.landscape-aspect {
      width: 254px; }
      @media (min-width: 850px) {
        .home__page .studio__articles-slider .slide.landscape-aspect {
          width: 654px; } }
      .home__page .studio__articles-slider .slide.landscape-aspect .aspectholder {
        padding-top: 62.5%; }
    .home__page .studio__articles-slider .slide.portrait-tall-aspect {
      width: 220px; }
      @media (min-width: 850px) {
        .home__page .studio__articles-slider .slide.portrait-tall-aspect {
          width: 460px; } }
      .home__page .studio__articles-slider .slide.portrait-tall-aspect .aspectholder {
        padding-top: 145%; }
    .home__page .studio__articles-slider .slide.square-aspect {
      width: 233px; }
      @media (min-width: 850px) {
        .home__page .studio__articles-slider .slide.square-aspect {
          width: 422px; } }
      .home__page .studio__articles-slider .slide.square-aspect .aspectholder {
        padding-top: 100%; }
    .home__page .studio__articles-slider .slide.portrait-aspect {
      width: 240px; }
      @media (min-width: 850px) {
        .home__page .studio__articles-slider .slide.portrait-aspect {
          width: 420px; } }
      .home__page .studio__articles-slider .slide.portrait-aspect .aspectholder {
        padding-top: 115%; }
    .home__page .studio__articles-slider .slide.portrait-short-aspect {
      width: 222px; }
      @media (min-width: 850px) {
        .home__page .studio__articles-slider .slide.portrait-short-aspect {
          width: 466px; } }
      .home__page .studio__articles-slider .slide.portrait-short-aspect .aspectholder {
        padding-top: 115%; }

.video-highlights-section {
  background-color: var(--beige); }
