:root {
  --ink: #16201f;
  --muted: #65706c;
  --paper: #f6f3ee;
  --surface: #ffffff;
  --terracotta: #b8573f;
  --steel: #496f78;
  --moss: #6f7f4f;
  --primary: #fd5402;
  --secondary: #35308d;
  --line: rgba(22, 32, 31, 0.14);
  --shadow: 0 18px 42px rgba(22, 32, 31, 0.14);
  --header-height: 88px;
  --spacer: 1.25rem;
  --grid-gutter-x: 1.5rem;
  --grid-gutter-y: 0;
  --container: min(1120px, calc(100vw - (var(--spacer) * 2)));
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
}

body.is-menu-open {
  overflow: hidden;
}

img {
  display: block;
  max-width: 100%;
}

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

button {
  font: inherit;
}

.eyebrow {
  margin: 0 0 12px;
  color: var(--terracotta);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

h1,
h2,
h3,
p {
  margin-top: 0;
}

h1,
h2 {
  line-height: 1.02;
}

h1 {
  max-width: 9ch;
  margin-bottom: 22px;
  font-size: clamp(3.25rem, 8vw, 7.8rem);
}

h2 {
  margin-bottom: 18px;
  font-size: clamp(2.1rem, 4.5vw, 4.7rem);
}

h3 {
  margin-bottom: 12px;
  font-size: 1.25rem;
}

@font-face {
  font-family: "wide-bond";
  src: url("../fonts/wide-bond.eot?erbnni");
  src: url("../fonts/wide-bond.eot?erbnni#iefix") format("embedded-opentype"), url("../fonts/wide-bond.ttf?erbnni") format("truetype"), url("../fonts/wide-bond.woff?erbnni") format("woff"), url("../fonts/wide-bond.svg?erbnni#wide-bond") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
[class^=icon-],
[class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "wide-bond" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-alarm-clock-check:before {
  content: "\e917";
}

.icon-arrow-half-left:before {
  content: "\e900";
}

.icon-arrow-half-right:before {
  content: "\e901";
}

.icon-arrow-right:before {
  content: "\e902";
}

.icon-award:before {
  content: "\e903";
}

.icon-building-2:before {
  content: "\e904";
}

.icon-certificate:before {
  content: "\e905";
}

.icon-chevron-down:before {
  content: "\e906";
}

.icon-chevron-left:before {
  content: "\e907";
}

.icon-chevron-right:before {
  content: "\e908";
}

.icon-chevron-up:before {
  content: "\e909";
}

.icon-house:before {
  content: "\e90a";
}

.icon-image:before {
  content: "\e90b";
}

.icon-mail:before {
  content: "\e90c";
}

.icon-map-pin:before {
  content: "\e90d";
}

.icon-medal:before {
  content: "\e90e";
}

.icon-move-left:before {
  content: "\e90f";
}

.icon-move-right:before {
  content: "\e91a";
}

.icon-phone:before {
  content: "\e910";
}

.icon-printer:before {
  content: "\e911";
}

.icon-refresh-ccw:before {
  content: "\e912";
}

.icon-road:before {
  content: "\e913";
}

.icon-star:before {
  content: "\e914";
}

.icon-trophy:before {
  content: "\e915";
}

.icon-tv:before {
  content: "\e916";
}

.icon-warehouse:before {
  content: "\e918";
}

.icon-x:before {
  content: "\e919";
}

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.container {
  --gutter: 1.25rem;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.25rem;
  padding-left: 1.25rem;
}
@media (min-width: 576px) {
  .container {
    --container: 540px;
    --remain-space: calc(((100vw - 540px) / 2) + var(--gutter));
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container {
    --container: 720px;
    --remain-space: calc(((100vw - 720px) / 2) + var(--gutter));
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container {
    --container: 90%;
    --remain-space: calc(((100vw - 90%) / 2) + var(--gutter));
    max-width: 90%;
  }
}
@media (min-width: 1200px) {
  .container {
    --container: 1140px;
    --remain-space: calc(((100vw - 1140px) / 2) + var(--gutter));
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container {
    --container: 1360px;
    --remain-space: calc(((100vw - 1360px) / 2) + var(--gutter));
    max-width: 1360px;
  }
}

.container-fluid {
  --gutter: 1.25rem;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.25rem;
  padding-left: 1.25rem;
  max-width: none;
}

.container-sm {
  --gutter: 1.25rem;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.25rem;
  padding-left: 1.25rem;
}

@media (min-width: 576px) {
  .container-sm {
    max-width: 540px;
  }
}
.container-md {
  --gutter: 1.25rem;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.25rem;
  padding-left: 1.25rem;
}

@media (min-width: 768px) {
  .container-md {
    max-width: 720px;
  }
}
.container-lg {
  --gutter: 1.25rem;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.25rem;
  padding-left: 1.25rem;
}

@media (min-width: 992px) {
  .container-lg {
    max-width: 90%;
  }
}
.container-xl {
  --gutter: 1.25rem;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.25rem;
  padding-left: 1.25rem;
}

@media (min-width: 1200px) {
  .container-xl {
    max-width: 1140px;
  }
}
.container-xxl {
  --gutter: 1.25rem;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.25rem;
  padding-left: 1.25rem;
}

@media (min-width: 1400px) {
  .container-xxl {
    max-width: 1360px;
  }
}
.row {
  --grid-gutter-x: 1.5rem;
  --grid-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--grid-gutter-y));
  margin-right: calc(-0.5 * var(--grid-gutter-x));
  margin-left: calc(-0.5 * var(--grid-gutter-x));
}

.g-0,
.gx-0 {
  --grid-gutter-x: 0;
}

.g-0,
.gy-0 {
  --grid-gutter-y: 0;
}

.g-2,
.gx-2 {
  --grid-gutter-x: 0.75rem;
}

.g-2,
.gy-2 {
  --grid-gutter-y: 0.75rem;
}

.g-3,
.gx-3 {
  --grid-gutter-x: 1.5rem;
}

.g-3,
.gy-3 {
  --grid-gutter-y: 1.5rem;
}

.g-4,
.gx-4 {
  --grid-gutter-x: 2rem;
}

.g-4,
.gy-4 {
  --grid-gutter-y: 2rem;
}

.site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 30;
}
.inner-page .site-header {
  background-color: white;
}

@media (max-width: 991.98px) {
  .site-header {
    padding: 1.25rem 0;
    background-color: white;
    transition: padding 0.28s ease;
  }
}
@media (max-width: 991.98px) {
  .site-header.is-condensed {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
  }
}
.site-header .container {
  justify-content: space-between;
}
@media (min-width: 992px) {
  .site-header .container {
    display: grid;
    grid-template-columns: auto 1fr;
  }
  body:not(.inner-page) .site-header .container {
    padding: 0;
  }
}
@media (min-width: 1200px) {
  .site-header .container {
    grid-template-columns: 21.5625rem 1fr;
  }
}
@media (max-width: 991.98px) {
  .site-header .container {
    display: flex;
    align-items: center;
  }
}

.brand {
  display: block;
  height: 2rem;
  background-image: url("/assets/images/logo-with-name.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 212/32;
}
.brand-container {
  position: relative;
  display: flex;
  align-items: center;
  z-index: 32;
}
@media (min-width: 992px) {
  body:not(.inner-page) .brand-container {
    padding: 0 5rem 0 2.5rem;
    background-color: white;
  }
}
@media (min-width: 1200px) {
  body:not(.inner-page) .brand-container {
    padding: 0 2.5rem;
  }
}

.site-nav {
  display: flex;
  align-items: center;
  z-index: 31;
}
@media (min-width: 992px) {
  .site-nav {
    padding: 0.375rem 1.25rem;
    flex-direction: row;
    justify-content: flex-end;
    backdrop-filter: blur(0.5rem);
  }
  body:not(.inner-page) .site-nav {
    background-color: rgba(53, 48, 141, 0.8);
  }
}
@media (max-width: 991.98px) {
  .site-nav {
    position: fixed;
    inset: 0;
    flex-direction: column;
    justify-content: center;
    gap: 1rem;
    background: linear-gradient(to bottom, white 50%, rgba(255, 255, 255, 0.75) 100%);
    backdrop-filter: blur(0.25rem);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-18px);
    transition: opacity 0.32s ease, transform 0.32s ease;
    z-index: 31;
  }
}
.site-header.is-open .site-nav {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.site-nav a,
.site-nav .nav-submenu-toggle {
  padding: 1rem 1.25rem;
  color: #1e1e1e;
  font-size: 0.875rem;
  line-height: 1.4285714286;
}
@media (min-width: 992px) {
  body:not(.inner-page) .site-nav a,
  body:not(.inner-page) .site-nav .nav-submenu-toggle {
    color: white;
  }
}
@media (hover: hover) {
  .site-nav a:hover,
  .site-nav .nav-submenu-toggle:hover {
    color: var(--secondary);
  }
}

.nav-item {
  position: relative;
  width: 100%;
}
@media (min-width: 992px) {
  .nav-item {
    width: auto;
  }
}
@media (max-width: 991.98px) {
  .nav-item {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}

.nav-submenu-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0;
  border: 0;
  color: inherit;
  background: transparent;
  cursor: pointer;
  font-size: clamp(1.55rem, 7vw, 3rem);
  line-height: 1.1;
}
@media (min-width: 992px) {
  .nav-submenu-toggle {
    font-size: 0.92rem;
    line-height: inherit;
  }
}
@media (max-width: 991.98px) {
  .nav-submenu-toggle::after {
    content: "\e906";
    font-family: "wide-bond";
    font-size: 1em;
    line-height: 1;
    transition: transform 0.2s ease;
  }
  .nav-submenu-toggle[aria-expanded=true]::after {
    transform: rotate(180deg);
  }
}

.nav-submenu {
  position: static;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-height: 0;
  min-width: 0;
  text-align: center;
  border: 0;
  background: transparent;
  box-shadow: none;
  opacity: 1;
  overflow: hidden;
  pointer-events: auto;
  transform: none;
  transition: max-height 0.28s ease, padding 0.28s ease;
}
@media (min-width: 992px) {
  .nav-submenu {
    position: absolute;
    top: 100%;
    left: 50%;
    max-height: none;
    min-width: 7.5rem;
    padding: 1.5rem 1rem 1rem;
    background-color: rgba(255, 255, 255, 0.9);
    opacity: 0;
    overflow: visible;
    pointer-events: none;
    box-shadow: 0 0 1.25rem rgba(0, 0, 0, 0.4);
    border-radius: 0.25rem;
    transform: translate(-50%, 8px);
    transition: opacity 0.24s ease, transform 0.24s ease;
  }
}
@media (max-width: 991.98px) {
  .nav-item.is-open .nav-submenu {
    max-height: 12rem;
    padding-top: 0.75rem;
    opacity: 1;
    pointer-events: auto;
  }
}
@media (min-width: 992px) {
  .nav-item:hover .nav-submenu {
    max-height: none;
    padding-top: 1.5rem;
    opacity: 1;
    pointer-events: auto;
    transform: translate(-50%, 0);
  }
}
.nav-submenu a {
  display: block;
  padding: 0 0 0.5rem;
  font-size: 0.875rem;
  white-space: nowrap;
}
@media (min-width: 992px) {
  .nav-submenu a {
    border-bottom: 1px solid transparent;
  }
  body .site-nav .nav-submenu a {
    color: #59585c;
  }
}
@media (min-width: 992px) and (hover: hover) {
  body .site-nav .nav-submenu a:hover {
    color: #35308d;
    border-color: #35308d;
  }
}

.menu-toggle {
  position: relative;
  display: block;
  width: 2rem;
  height: 2rem;
  padding: 0;
  color: #1e1e1e;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 0;
  cursor: pointer;
  z-index: 32;
}
@media (min-width: 992px) {
  .menu-toggle {
    display: none;
  }
}
.menu-toggle span {
  position: absolute;
  left: 6px;
  width: 20px;
  height: 2px;
  background: currentColor;
  transition: transform 0.32s ease, opacity 0.24s ease, top 0.32s ease;
}
.menu-toggle span:nth-child(1) {
  top: 9px;
}
.site-header.is-open .menu-toggle span:nth-child(1) {
  top: 15px;
  transform: rotate(45deg);
}

.menu-toggle span:nth-child(2) {
  top: 15px;
}
.site-header.is-open .menu-toggle span:nth-child(2) {
  opacity: 0;
}

.menu-toggle span:nth-child(3) {
  top: 21px;
}
.site-header.is-open .menu-toggle span:nth-child(3) {
  top: 15px;
  transform: rotate(-45deg);
}

.site-footer {
  padding: 2.5rem 0;
  color: var(--secondary);
  background: linear-gradient(180deg, #f3f3f3 0%, #fff 100%);
}
.site-footer__main {
  display: grid;
  gap: 2.5rem;
}
@media (min-width: 992px) {
  .site-footer__main {
    grid-template-columns: 1fr 9rem auto;
  }
}
@media (min-width: 1200px) {
  .site-footer__main {
    grid-template-columns: 39.25rem 1fr auto;
  }
}
.site-footer__brand {
  margin-top: auto;
  margin-bottom: auto;
}
.site-footer__brand p {
  margin: 1.5rem 0 0;
  color: #1e1e1e;
  font-size: 0.875rem;
  line-height: 1.6285714286;
}
@media (min-width: 992px) {
  .site-footer__brand p {
    max-width: 25rem;
  }
}
@media (min-width: 1200px) {
  .site-footer__brand p {
    max-width: 28rem;
  }
}
.site-footer__logo {
  display: block;
  height: 2.5rem;
  background-image: url("/assets/images/logo-with-name-primary.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 212/32;
}
.site-footer__nav, .site-footer__contact {
  display: grid;
  align-content: start;
  gap: 2.5rem;
}
.site-footer__nav h2, .site-footer__contact h2 {
  margin: 0;
  color: var(--secondary);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5555555556;
}
.site-footer__nav ul, .site-footer__contact ul {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 992px) {
  .site-footer__nav ul a, .site-footer__contact ul a {
    padding: 0 0 0 0.5rem;
  }
}
.site-footer__nav a,
.site-footer__nav span, .site-footer__contact a,
.site-footer__contact span {
  color: #1e1e1e;
}
@media (hover: hover) {
  .site-footer__nav a:hover, .site-footer__contact a:hover {
    color: var(--primary);
  }
}
.site-footer__nav [class*=icon-], .site-footer__contact [class*=icon-] {
  color: var(--primary);
  font-size: 1rem;
}
.site-footer__contact address {
  display: grid;
  gap: 12px;
  margin: 0;
  font-style: normal;
}
.site-footer__contact address div {
  display: grid;
  grid-template-columns: 1rem 1fr;
  align-items: center;
  gap: 0.5rem;
}
.site-footer__bottom {
  margin-top: 2.5rem;
  padding-top: 2.5rem;
  border-top: 1px solid rgba(53, 48, 141, 0.16);
}
.site-footer__bottom p {
  margin: 0;
  color: #1e1e1e;
  font-size: 0.75rem;
  line-height: 1.5;
}

@media (min-width: 992px) {
  .inner-page main {
    padding-top: 4rem;
  }
}

@media (max-width: 991.98px) {
  main {
    padding-top: 4.5rem;
  }
}

a,
button {
  transition: color 0.3s, background-color 0.3s, border-color 0.3s;
}

.button {
  display: inline-flex;
  align-items: center;
  min-height: 48px;
  padding: 0 22px;
  color: #fff;
  background: var(--terracotta);
  font-weight: 800;
}
@media (hover: hover) {
  .button:hover {
    background: #9f4936;
  }
}

.section-actions {
  display: flex;
  justify-content: center;
  margin-top: 2.5rem;
}

.link-button {
  --link-button-color: #59585c;
  --link-button-color-hover: rgb(76.3916666667, 75.5333333333, 78.9666666667);
  --link-button-on-color: #fff;
  --link-button-text-color: var(--link-button-color);
  --link-button-bg: transparent;
  --link-button-hover-color: var(--link-button-on-color);
  --link-button-hover-bg: var(--link-button-color);
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  padding: 1rem 2.5rem;
  color: var(--link-button-text-color);
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.05em;
  background-color: var(--link-button-bg);
  border: 1px solid var(--link-button-color);
  overflow: hidden;
}
.link-button:not(.link-button--sm), .link-button.link-button--md {
  padding: 0.5rem 1.25rem;
}
@media (min-width: 992px) {
  .link-button:not(.link-button--sm), .link-button.link-button--md {
    padding: 1rem 2.5rem;
  }
}
.link-button.link-button--sm {
  padding: 0.375rem 1.125rem;
}
@media (min-width: 992px) {
  .link-button.link-button--sm {
    padding: 0.5rem 1.5rem;
  }
}
.link-button span,
.link-button i {
  position: relative;
  z-index: 1;
}
.link-button i {
  font-size: 1rem;
}
.link-button::before {
  content: "";
  position: absolute;
  inset: 0;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.32s ease;
}
@media (hover: hover) {
  .link-button:hover {
    color: var(--link-button-hover-color);
  }
  .link-button:hover::before {
    background-color: var(--link-button-hover-bg);
    transform: scaleX(1);
  }
}
.link-button--outlined {
  --link-button-text-color: var(--link-button-color);
  --link-button-bg: transparent;
  --link-button-hover-color: var(--link-button-on-color);
  --link-button-hover-bg: var(--link-button-color);
}
.link-button--filled {
  --link-button-text-color: var(--link-button-on-color);
  --link-button-bg: var(--link-button-color);
  --link-button-hover-color: var(--link-button-on-color);
  --link-button-hover-bg: var(--link-button-color-hover);
}
.link-button--gray {
  --link-button-color: #59585c;
  --link-button-color-hover: rgb(76.3916666667, 75.5333333333, 78.9666666667);
}
.link-button--primary {
  --link-button-color: #fd5402;
  --link-button-color-hover: rgb(227.7, 75.6, 1.8);
}
.link-button--secondary {
  --link-button-color: #35308d;
  --link-button-color-hover: rgb(45.8492063492, 41.5238095238, 121.9761904762);
}
.link-button--white {
  --link-button-color: #fff;
  --link-button-color-hover: rgb(242.25, 242.25, 242.25);
  --link-button-on-color: #59585c;
}

.back-to-top {
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  display: grid;
  place-items: center;
  width: 3.75rem;
  height: 3.75rem;
  color: #fff;
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: bold;
  background: #35308d;
  border-width: 0;
  border-radius: 50%;
  box-shadow: -0.5rem 0 2.5rem rgba(0, 0, 0, 0.1);
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transform: translateY(12px);
  transition: opacity 0.24s ease, scale 0.24s ease, transform 0.24s ease, background 0.24s ease;
  z-index: 25;
}
@media (min-width: 992px) {
  .back-to-top {
    width: 5.25rem;
    height: 5.25rem;
    font-size: 1rem;
  }
}
@media (hover: hover) {
  .back-to-top:hover {
    background: rgb(45.8492063492, 41.5238095238, 121.9761904762);
    scale: 0.94;
  }
}
.back-to-top.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}
.back-to-top.is-locked {
  position: absolute;
  bottom: auto;
}

.cookie-banner {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(0.25rem);
  border-top: 1px solid #eee;
  transform: translateY(100%);
  transition: opacity 0.28s ease, transform 0.28s ease, visibility 0.28s ease;
  visibility: hidden;
  opacity: 0;
  z-index: 29;
}
.cookie-banner.is-visible {
  transform: translateY(0);
  visibility: visible;
  opacity: 1;
}
.cookie-banner__inner {
  display: grid;
  gap: 1.25rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .cookie-banner__inner {
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 2.5rem;
  }
}
.cookie-banner__content {
  display: grid;
  gap: 0.25rem;
}
.cookie-banner__title, .cookie-banner__text {
  margin: 0;
  line-height: 1.25;
}
.cookie-banner__title {
  font-size: 1rem;
  font-weight: bold;
}
.cookie-banner__text {
  font-size: 0.875rem;
}
.cookie-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.cookie-banner__actions .link-button {
  touch-action: manipulation;
}

.glightbox-clean {
  --lightbox-width: min(56rem, calc(100vw - 2rem));
  --lightbox-control-size: 2.75rem;
}
@media (min-width: 768px) {
  .glightbox-clean {
    --lightbox-width: min(62.5rem, calc(100vw - 4rem));
    --lightbox-control-size: 3rem;
  }
}
.glightbox-clean .ginner-container {
  position: relative;
  width: var(--lightbox-width);
  max-width: var(--lightbox-width);
  height: auto;
  margin: auto;
}
.glightbox-clean .gslide-inner-content {
  width: var(--lightbox-width);
}
.glightbox-clean .gslide-inline {
  width: var(--lightbox-width);
  max-width: var(--lightbox-width);
  max-height: calc(100vh - 2rem);
  background: transparent;
  overflow: visible;
}
@media (min-width: 768px) {
  .glightbox-clean .gslide-inline {
    max-height: calc(100vh - 4rem);
  }
}
.glightbox-clean .ginlined-content {
  padding: 0;
  overflow: visible;
}
.glightbox-clean .gslide-media,
.glightbox-clean .gslide-image {
  width: var(--lightbox-width);
  max-width: var(--lightbox-width);
}
.gdesc-open .glightbox-clean .gslide-media, .glightbox-clean .gslide-image {
  opacity: 1;
}

.glightbox-clean .gslide-media {
  box-shadow: 0 0 2.5rem rgba(0, 0, 0, 0.4);
}
@media (min-width: 992px) {
  .glightbox-clean .gslide-media {
    box-shadow: 0 0 5rem rgba(0, 0, 0, 0.4);
  }
}
.glightbox-clean .gslide-image {
  position: relative;
  display: grid;
  place-items: center;
  aspect-ratio: 340/266;
  padding: 1.25rem 1.25rem 0;
}
@media (min-width: 992px) {
  .glightbox-clean .gslide-image {
    padding: 2.5rem 2.5rem 0;
  }
}
.glightbox-clean .gslide-image img {
  position: absolute;
  top: 2.5rem;
  left: 1.25rem;
  right: 1.25rem;
  bottom: 0;
  width: calc(100% - 2.5rem);
  height: calc(100% - 2.5rem);
  object-fit: contain;
}
@media (min-width: 992px) {
  .glightbox-clean .gslide-image img {
    top: 2.5rem;
    left: 2.5rem;
    right: 2.5rem;
    width: calc(100% - 5rem);
    height: calc(100% - 2.5rem);
  }
}
.glightbox-clean .gslide-description {
  width: var(--lightbox-width);
  max-width: var(--lightbox-width) !important;
  margin: 0;
}
.glightbox-mobile .glightbox-clean .gslide-description {
  position: static;
  padding: 0;
  background: white;
}

.glightbox-clean .gdesc-inner {
  padding: 1rem 1.25rem 6rem;
}
@media (min-width: 992px) {
  .glightbox-clean .gdesc-inner {
    padding: 1rem 2.5rem 6.75rem;
  }
}
.glightbox-clean .gslide-title {
  margin: 0;
  color: #35308d;
  font-size: 1.5rem;
  font-weight: bold;
}
.glightbox-mobile .glightbox-clean .gslide-title {
  color: #35308d;
  font-size: 1.25rem;
}

.glightbox-clean .gslide-desc {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-top: 1rem;
  color: #59585c;
  font-family: "Outfit", "Cinzel", serif;
  font-size: 1rem;
}
.glightbox-mobile .glightbox-clean .gslide-desc {
  color: #59585c;
}

.glightbox-clean .gslide-desc p {
  margin: 0;
}
.glightbox-clean .gslide-desc time {
  color: #fd5402;
}
.glightbox-mobile .glightbox-clean .gslide-desc time {
  color: #fd5402;
}

.glightbox-mobile .glightbox-clean .gslide-desc .desc-more {
  color: #59585c;
  font-weight: normal;
  text-decoration: underline;
  text-underline-offset: 0.125rem;
}

.glightbox-clean .award-lightbox {
  width: var(--lightbox-width);
  background: white;
}
.glightbox-clean .award-lightbox__media {
  position: relative;
  display: grid;
  place-items: center;
  width: 100%;
  margin: 0;
  aspect-ratio: 340/266;
  padding: 2.5rem 1.25rem 0;
}
@media (min-width: 992px) {
  .glightbox-clean .award-lightbox__media {
    padding: 2.5rem 2.5rem 0;
  }
}
.glightbox-clean .award-lightbox__media img {
  position: absolute;
  top: 2.5rem;
  left: 1.25rem;
  right: 1.25rem;
  bottom: 0;
  width: calc(100% - 2.5rem);
  height: calc(100% - 2.5rem);
  object-fit: contain;
}
@media (min-width: 992px) {
  .glightbox-clean .award-lightbox__media img {
    left: 2.5rem;
    right: 2.5rem;
    width: calc(100% - 5rem);
  }
}
.glightbox-clean .award-lightbox__body {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1rem 1.25rem 6rem;
}
@media (min-width: 992px) {
  .glightbox-clean .award-lightbox__body {
    padding: 1rem 2.5rem 6.75rem;
  }
}
.glightbox-clean .award-lightbox__body h3 {
  margin: 0;
  color: #35308d;
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.35;
}
@media (min-width: 768px) {
  .glightbox-clean .award-lightbox__body h3 {
    font-size: 1.5rem;
  }
}
.glightbox-clean .award-lightbox__body p {
  margin: 0;
  color: #59585c;
  font-family: "Outfit", "Cinzel", serif;
  font-size: 1rem;
  line-height: 1.5;
}
.glightbox-clean .award-lightbox__body time {
  color: #fd5402;
  font-family: "Outfit", "Cinzel", serif;
  font-size: 1rem;
}
.glightbox-clean .gclose,
.glightbox-clean .gprev,
.glightbox-clean .gnext {
  position: absolute;
  width: var(--lightbox-control-size);
  height: var(--lightbox-control-size);
  border-radius: 0;
  z-index: 5;
}
.glightbox-clean .gclose::before,
.glightbox-clean .gprev::before,
.glightbox-clean .gnext::before {
  display: block;
  font-family: "wide-bond";
  line-height: 1;
}
.glightbox-clean .gclose svg,
.glightbox-clean .gprev svg,
.glightbox-clean .gnext svg {
  display: none;
}
.glightbox-clean .gclose {
  --lightbox-control-size: 1.5rem;
  top: 0.5rem;
  right: 0.5rem;
  background-color: transparent;
}
@media (min-width: 992px) {
  .glightbox-clean .gclose {
    top: 1rem;
    right: 1rem;
  }
}
.glightbox-clean .gclose::before {
  content: "\e919";
  font-size: 1.5rem;
}
@media (hover: hover) {
  .glightbox-clean .gclose:hover {
    color: #35308d;
    background-color: transparent;
  }
}
.glightbox-clean .gprev,
.glightbox-clean .gnext {
  --lightbox-control-size: 3rem;
  top: auto;
  bottom: 0;
  color: white;
  transform: translateY(-50%);
}
.glightbox-clean .gprev::before,
.glightbox-clean .gnext::before {
  content: "\e900";
  font-size: 1.125rem;
}
.glightbox-clean .gprev {
  left: auto;
  right: 4.75rem;
  background-color: #35308d;
}
@media (min-width: 992px) {
  .glightbox-clean .gprev {
    right: 6rem;
  }
}
.glightbox-clean .gprev::before {
  content: "\e900";
}
@media (hover: hover) {
  .glightbox-clean .gprev:hover {
    background-color: rgb(45.8492063492, 41.5238095238, 121.9761904762);
  }
}
.glightbox-clean .gnext {
  right: 1.25rem;
  background-color: #fd5402;
}
@media (min-width: 992px) {
  .glightbox-clean .gnext {
    right: 2.5rem;
  }
}
.glightbox-clean .gnext::before {
  content: "\e901";
}
@media (hover: hover) {
  .glightbox-clean .gnext:hover {
    background-color: rgb(227.7, 75.6, 1.8);
  }
}

.goverlay {
  background-color: rgba(255, 255, 255, 0.8) !important;
}

.site-header {
  opacity: 1;
  transition: padding 0.28s ease, opacity 0.48s ease;
}

main {
  opacity: 1;
  transition: opacity 0.48s ease;
}

.site-footer {
  opacity: 1;
  transition: opacity 0.48s ease;
}

body.is-loading .site-header {
  opacity: 0;
}
body.is-loading main {
  opacity: 0;
}
body.is-loading .site-footer {
  opacity: 0;
}
body.is-loading .back-to-top {
  opacity: 0;
}

body.is-leaving .site-header {
  opacity: 0;
}
body.is-leaving main {
  opacity: 0;
}
body.is-leaving .site-footer {
  opacity: 0;
}
body.is-leaving .back-to-top {
  opacity: 0;
}
body.is-leaving .page-loader {
  opacity: 1;
  animation: none;
  filter: blur(0);
  pointer-events: auto;
  transform: scale(1);
  visibility: visible;
}
body.is-leaving .page-loader__inner {
  opacity: 0;
  animation: none;
}

.page-loader {
  position: fixed;
  inset: 0;
  display: grid;
  place-items: center;
  background-color: white;
  opacity: 1;
  visibility: visible;
  transform: scale(1);
  filter: blur(0);
  transition: opacity 0.42s ease, visibility 0.42s ease;
  z-index: 100;
}
.page-loader__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.25rem;
}
.has-visited .page-loader__inner {
  opacity: 0;
}

.page-loader__mark {
  width: 2rem;
  background-image: url("/assets/images/logo.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 1/1;
  opacity: 0;
  transform: translate3d(0, -0.75rem, 0);
  animation: pageLoaderFadeDown 1.05s 0.2s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
.page-loader__text {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
}
.page-loader__text--mandarin {
  color: #1e1e1e;
  font-size: 1rem;
  line-height: 1;
  opacity: 0;
  transform: translate3d(0, -0.75rem, 0);
  animation: pageLoaderFadeDown 0.96s 0.62s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
.page-loader__text--english {
  color: #1e1e1e;
  font-size: 0.625rem;
  line-height: 1;
  opacity: 0;
  transform: translate3d(0, 0.75rem, 0);
  animation: pageLoaderFadeUp 0.96s 0.62s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
.page-loader__text--slogan {
  color: #59585c;
  font-size: 0.875rem;
  line-height: 1.6285714286;
  opacity: 0;
  transform: translate3d(0, 0.75rem, 0);
  animation: pageLoaderFadeUp 0.92s 1.28s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

body.is-loaded .page-loader {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}

body.is-intro-loading.is-loaded .page-loader {
  animation: pageLoaderBlurOut 1.08s cubic-bezier(0.83, 0, 0.17, 1) forwards;
}

@keyframes pageLoaderFadeDown {
  from {
    opacity: 0;
    transform: translate3d(0, -0.75rem, 0);
    filter: blur(0.5rem);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    filter: blur(0);
  }
}
@keyframes pageLoaderFadeUp {
  from {
    opacity: 0;
    transform: translate3d(0, 0.75rem, 0);
    filter: blur(0.5rem);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    filter: blur(0);
  }
}
@keyframes pageLoaderBlurOut {
  0% {
    opacity: 1;
    transform: scale(1);
    filter: blur(0);
    visibility: visible;
  }
  100% {
    opacity: 0;
    transform: scale(1.018);
    filter: blur(0.875rem);
    visibility: hidden;
  }
}
.section-header {
  display: grid;
  justify-items: center;
  gap: 0.5rem;
  margin-bottom: 2.5rem;
  text-align: center;
}
.section-header::before {
  content: "";
  display: block;
  width: 4rem;
  height: 0.0625rem;
  margin-bottom: 0.75rem;
  background-color: #fd5402;
}
.section-header .section-header__logo {
  width: 1.75rem;
  aspect-ratio: 1/1;
}
.section-header h1,
.section-header h2 {
  margin: 0;
  font-size: 1.5rem;
  line-height: 1;
}
@media (min-width: 992px) {
  .section-header h1,
  .section-header h2 {
    font-size: 2rem;
  }
}
.work-item-section .section-header h1,
.work-item-section .section-header h2 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 0;
}

.section-header h1 [class*=icon-],
.section-header h2 [class*=icon-] {
  color: #59585c;
}
.section-header h1 .highlight,
.section-header h2 .highlight {
  color: #fd5402;
}
.section-header--secondary h1,
.section-header--secondary h2 {
  color: #35308d;
}
.section-header p {
  margin: 1rem 0 0;
  color: #59585c;
  font-family: "Cinzel", serif;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  letter-spacing: 0.3em;
  text-transform: uppercase;
}
@media (min-width: 992px) {
  .section-header {
    margin-bottom: 5rem;
  }
  .section-header::before {
    margin-bottom: 2rem;
  }
  .section-header .section-header__logo {
    width: 2.5rem;
  }
}

.section-header--with-logo::before {
  display: none;
}
.section-header--with-logo h1::before,
.section-header--with-logo h2::before {
  content: "";
  display: block;
  width: 4rem;
  height: 0.0625rem;
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
  background-color: #fd5402;
}
@media (min-width: 992px) {
  .section-header--with-logo h1::before,
  .section-header--with-logo h2::before {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
  }
}

.section-header--start {
  justify-items: start;
  text-align: left;
}
.section-header--start::before {
  margin-right: 0;
  margin-left: 0;
}

.section-header--r--start {
  justify-items: start;
  text-align: left;
}
.section-header--r--start::before {
  margin-right: 0;
  margin-left: 0;
}

.section-header--center {
  justify-items: center;
  text-align: center;
}
.section-header--center::before,
.section-header--center h1::before,
.section-header--center h2::before {
  margin-right: auto;
  margin-left: auto;
}

.breadcrumb ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.625rem;
  padding: 0;
  margin: 0;
  list-style: none;
}
.breadcrumb li {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  color: #59585c;
  font-size: 0.875rem;
  line-height: 1.6285714286;
}
.breadcrumb li:not(:last-child)::after {
  content: "\e908";
  font-family: "wide-bond";
  color: #59585c;
  font-size: 1rem;
  line-height: 1;
}
.breadcrumb li:last-child {
  color: #35308d;
}
.breadcrumb a {
  color: #59585c;
}
@media (hover: hover) {
  .breadcrumb a:hover {
    text-decoration: underline;
    text-underline-offset: 0.25rem;
  }
}

.hero,
.hero__slider,
.hero__slide {
  height: calc(100svh - 4.5rem);
}
@media (min-width: 992px) {
  .hero,
  .hero__slider,
  .hero__slide {
    height: 100svh;
  }
}

.hero {
  position: relative;
  overflow: hidden;
  color: white;
  background: var(--ink);
}

.hero__background {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: white;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0.9) 100%), url("..//images/hero-background.jpg") center/cover no-repeat;
}

.hero__slider {
  position: relative;
  z-index: 1;
}

.hero__slide {
  display: grid !important;
  grid-template-columns: 1fr;
  align-content: center;
  align-items: center;
  gap: 28px;
}
@media (min-width: 992px) {
  .hero__slide {
    grid-template-columns: 705fr 470fr;
    align-content: stretch;
    padding: 0 1.75rem;
    gap: 3rem;
  }
}
@media (min-width: 1200px) {
  .hero__slide {
    gap: 5rem;
  }
}

.hero__content {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media (min-width: 992px) {
  .hero__content {
    gap: 2.5rem;
  }
}
.hero__content .hr {
  content: "";
  display: block;
  width: 5rem;
  height: 0.125rem;
  margin-bottom: 1.25rem;
  background-color: #fd5402;
}
@media (min-width: 992px) {
  .hero__content .hr {
    height: 0.25rem;
    margin-bottom: 2.5rem;
  }
}
.hero__content h1,
.hero__content h2 {
  margin: 0;
  color: #35308d;
  font-size: 2rem;
  line-height: 1.5;
  letter-spacing: 0.0533333333em;
}
@media (min-width: 992px) {
  .hero__content h1,
  .hero__content h2 {
    font-size: 3rem;
  }
}
.hero__content p {
  margin: 0;
  color: #1e1e1e;
  white-space: pre-line;
}
.hero__content p.eyebrow {
  font-family: "Cinzel", serif;
  font-size: 1.125rem;
  font-weight: normal;
  line-height: 1.6;
  letter-spacing: 0.36em;
}
@media (min-width: 992px) {
  .hero__content p.eyebrow {
    font-size: 1.25rem;
  }
}
.hero__content p:not(.eyebrow) {
  font-size: 1rem;
  line-height: 1.6277777778;
}
@media (min-width: 992px) {
  .hero__content p:not(.eyebrow) {
    font-size: 1.125rem;
  }
}

.hero__slide:not(.is-animated) .hero__content > *,
.hero__slide:not(.is-animated) .hero__media {
  opacity: 0;
}

.hero__media {
  justify-self: start;
  width: 100%;
  margin: 0;
  overflow: hidden;
}
@media (min-width: 992px) {
  .hero__media {
    justify-self: end;
    order: -1;
  }
}
.hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero__arrows {
  position: absolute;
  display: flex;
  gap: 0.5rem;
  bottom: 1.5rem;
  right: 1.5rem;
  z-index: 2;
}
@media (min-width: 992px) {
  .hero__arrows {
    bottom: 0;
    right: 0;
  }
}

.hero__arrow {
  display: grid;
  place-items: center;
  width: 3rem;
  color: white;
  aspect-ratio: 1/1;
  border-radius: 0;
  border: 0 transparent;
  cursor: pointer;
  transition: color 0.3s, background-color 0.3s, border-color 0.3s, transform 0.3s;
}
@media (min-width: 992px) {
  .hero__arrow {
    width: 3.75rem;
  }
}
.hero__arrow--prev {
  background-color: #35308d;
}
@media (hover: hover) {
  .hero__arrow--prev:hover {
    background-color: rgb(45.8492063492, 41.5238095238, 121.9761904762);
  }
}
.hero__arrow--next {
  background-color: #fd5402;
}
@media (hover: hover) {
  .hero__arrow--next:hover {
    background-color: rgb(227.7, 75.6, 1.8);
  }
}
.hero__arrow [class*=icon-] {
  font-size: 1.5rem;
}

.brand-philosophy {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media (min-width: 992px) {
  .brand-philosophy {
    padding-top: 7.5rem;
    padding-bottom: 7.5rem;
  }
}

.brand-philosophy__grid {
  display: grid;
  gap: 1rem;
}
@media (min-width: 768px) {
  .brand-philosophy__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1200px) {
  .brand-philosophy__grid {
    grid-template-columns: 20.375rem 1fr 20.375rem;
    gap: 2.5rem 2rem;
  }
}

.brand-philosophy-card {
  position: relative;
  display: flex;
  height: 20.375rem;
  color: #35308d;
  background-color: #f3f3f3;
  isolation: isolate;
  overflow: hidden;
}
.brand-philosophy-card:last-child {
  background-color: #f4e3db;
}
.brand-philosophy-card::before, .brand-philosophy-card::after {
  position: absolute;
  inset: 0;
  content: "";
  transition: opacity 0.36s ease, transform 0.48s ease;
}
.brand-philosophy-card::before {
  z-index: -2;
  background: var(--card-bg, none) center/cover no-repeat;
}
.brand-philosophy-card::after {
  z-index: -1;
  background: rgba(53, 48, 141, 0.9);
  opacity: 0;
}
.brand-philosophy-card:hover, .brand-philosophy-card:focus-within {
  color: #fff;
}
.brand-philosophy-card:hover::after, .brand-philosophy-card:focus-within::after {
  opacity: 1;
}
.brand-philosophy-card:hover [class*=icon-],
.brand-philosophy-card:hover h3,
.brand-philosophy-card:hover .brand-philosophy-card__description, .brand-philosophy-card:focus-within [class*=icon-],
.brand-philosophy-card:focus-within h3,
.brand-philosophy-card:focus-within .brand-philosophy-card__description {
  color: currentColor;
}
.brand-philosophy-card:hover .brand-philosophy-card__description, .brand-philosophy-card:focus-within .brand-philosophy-card__description {
  opacity: 1;
  transform: translateY(0);
}

.brand-philosophy-card--image {
  color: #fff;
}
.brand-philosophy-card--image::before {
  background: var(--card-bg) center/cover no-repeat;
  transform: scale(1.01);
}
.brand-philosophy-card--image .brand-philosophy-card__inner {
  opacity: 0;
  transform: translateY(1rem);
  transition: opacity 0.32s ease, transform 0.32s ease;
}
.brand-philosophy-card--image .brand-philosophy-card__description {
  opacity: 0;
  transform: translateY(1rem);
}
.brand-philosophy-card--image:hover::before, .brand-philosophy-card--image:focus-within::before {
  transform: scale(1.06);
}
.brand-philosophy-card--image:hover .brand-philosophy-card__inner, .brand-philosophy-card--image:focus-within .brand-philosophy-card__inner {
  opacity: 1;
  transform: translateY(0);
}

.brand-philosophy-card__inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  flex: 1 0 0;
  padding: 1.5rem;
}
.brand-philosophy-card__inner [class*=icon-] {
  color: #fd5402;
  font-size: 3rem;
}
.brand-philosophy-card__inner h3 {
  margin: 0;
  color: #35308d;
  font-size: 1.25rem;
  line-height: 1.6;
}

.brand-philosophy-card__en {
  margin: 0;
  color: #59585c;
  font-family: "Outfit", sans-serif;
  font-size: 0.625rem;
  letter-spacing: 1.6;
  letter-spacing: 0.24em;
  text-transform: uppercase;
}
.brand-philosophy-card--image .brand-philosophy-card__en, .brand-philosophy-card:hover .brand-philosophy-card__en, .brand-philosophy-card:focus-within .brand-philosophy-card__en {
  color: currentColor;
}

.brand-philosophy-card__description {
  color: #1e1e1e;
  font-size: 0.875rem;
  line-height: 1.6285714286;
  transition: opacity 0.32s ease, transform 0.32s ease;
}

.our-services {
  position: relative;
  padding-top: 5rem;
  padding-bottom: 5rem;
  overflow: hidden;
  isolation: isolate;
}
@media (min-width: 992px) {
  .our-services {
    padding-top: 7.5rem;
    padding-bottom: 7.5rem;
  }
}
.our-services__background {
  position: absolute;
  inset: -10% 0;
  z-index: -2;
  background: url("/assets/images/home-service-bg.jpg") top center/cover no-repeat;
  will-change: transform;
  opacity: 0.5;
}

.our-services__grid {
  display: grid;
  gap: 1.25rem;
}
@media (min-width: 768px) {
  .our-services__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 992px) {
  .our-services__grid {
    gap: 2.5rem;
    padding: 2.5rem;
    background-color: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(0.25rem);
  }
}
@media (min-width: 1200px) {
  .our-services__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.our-service-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 1.5rem;
  padding: 1.5rem;
  background-color: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(0.25rem);
  transition: background-color 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
}
.our-service-card [class*=icon-] {
  display: inline-grid;
  margin-bottom: auto;
  place-items: center;
  color: #fd5402;
  font-size: 2rem;
}
.our-service-card h3 {
  margin: 0;
  color: #35308d;
  font-size: 1.5rem;
  letter-spacing: 1.3333333333;
}
.our-service-card .hr {
  display: block;
  width: 1.25rem;
  height: 0.0625rem;
  background-color: #fd5402;
}
@media (min-width: 992px) {
  .our-service-card .hr {
    width: 3rem;
  }
}

.our-service-card__en {
  margin: 0;
  color: #59585c;
  font-family: "Outfit", sans-serif;
  font-size: 0.75rem;
  letter-spacing: 1.3333333333;
  letter-spacing: 0.24em;
  text-transform: uppercase;
}

.our-service-card__description {
  margin: 0;
  color: #1e1e1e;
  font-size: 0.875rem;
  line-height: 1.6285714286;
}

.featured-projects:not(.work-list) {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background: #f3f3f3;
}
@media (min-width: 992px) {
  .featured-projects:not(.work-list) {
    padding-top: 7.5rem;
    padding-bottom: 7.5rem;
  }
}

.featured-projects__grid {
  display: grid;
  gap: 2rem;
}
@media (min-width: 768px) {
  .featured-projects__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1200px) {
  .featured-projects__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2.5rem;
  }
}

.featured-project-card {
  color: black;
}
.featured-project-card figure {
  position: relative;
  margin: 0;
  aspect-ratio: 400/348;
  overflow: hidden;
}
.featured-project-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.48s ease;
}
.featured-project-card span {
  position: absolute;
  top: 1.5rem;
  right: 0;
  display: flex;
  align-items: center;
  padding: 0.75rem 1rem;
  color: black;
  background-color: rgba(255, 255, 255, 0.9);
  font-size: 0.75rem;
  letter-spacing: 0.02em;
}
.featured-project-card h3 {
  margin: 0;
  padding: 1rem 0;
  color: currentColor;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.25;
}
@media (hover: hover) {
  .featured-project-card:hover {
    color: #35308d;
  }
  .featured-project-card:hover img {
    transform: scale(1.06);
  }
}

.about {
  position: relative;
  padding-top: 5rem;
  padding-bottom: 5rem;
  overflow: hidden;
  isolation: isolate;
}
@media (min-width: 992px) {
  .about {
    padding-top: 7.5rem;
    padding-bottom: 7.5rem;
  }
}
.about .container {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
}
@media (min-width: 992px) {
  .about .container {
    justify-content: flex-start;
  }
}

.about__background {
  position: absolute;
  inset: -10% 0;
  z-index: -2;
  background: url("../images/home-about.jpg") center/cover no-repeat;
  will-change: transform;
}

.about__panel {
  width: 100%;
  max-width: 48rem;
  padding: 2.5rem;
  margin-left: auto;
  margin-right: auto;
  background-color: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(0.125rem);
}
.about__panel .section-header {
  margin-bottom: 1rem;
}
@media (min-width: 992px) {
  .about__panel .section-header {
    margin-bottom: 1.75rem;
  }
}

.about__content {
  display: grid;
  gap: 1.25rem;
}
@media (min-width: 992px) {
  .about__content {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
.about__content p {
  margin: 0;
  color: #59585c;
  font-size: 1rem;
  line-height: 1.875;
}
.about__content p em {
  color: #35308d;
  font-style: normal;
}

.awards {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background: #fff;
}
@media (min-width: 992px) {
  .awards {
    padding-top: 7.5rem;
    padding-bottom: 7.5rem;
  }
}

.awards__grid {
  display: grid;
  grid-auto-rows: 1fr;
  gap: 2rem 1.25rem;
}
@media (min-width: 768px) {
  .awards__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1200px) {
  .awards__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2.5rem 2rem;
  }
}

.award-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 1.25rem;
  background: #f3f3f3;
  cursor: zoom-in;
}
.award-card[hidden] {
  display: none;
}
@media (min-width: 992px) {
  .award-card {
    padding: 2.5rem 2.25rem;
  }
}
.award-card figure {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 0;
  aspect-ratio: 340/266;
  overflow: hidden;
}
.award-card img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  transition: transform 0.36s ease;
}
.award-card:hover img {
  transform: scale(1.04);
}

.award-body {
  display: flex;
  flex-direction: column;
  flex: 1 0 0;
  gap: 0.5rem;
  margin-top: 1rem;
}
.award-body h3 {
  margin: 0;
  color: #35308d;
  font-size: 1rem;
  line-height: 1.25;
}
.award-body time {
  display: block;
  margin-top: auto;
  color: #fd5402;
  font-family: "Outfit", "Cinzel", serif;
  font-size: 0.875rem;
  letter-spacing: 0.08em;
}
.award-body .award-card__en {
  margin: 0;
  font-family: "Outfit", "Cinzel", serif;
  font-size: 0.875rem;
  line-height: 1.4285714286;
}

.inner-default-section {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
.inner-default-section .breadcrumb {
  margin-bottom: 1.875rem;
}
@media (min-width: 992px) {
  .inner-default-section .breadcrumb {
    margin-bottom: 3.125rem;
  }
}
.inner-default-section .section-header {
  margin-bottom: 2.5rem;
}

.simple-hero {
  position: relative;
  padding: 2.5rem 0;
  overflow: hidden;
  isolation: isolate;
}
@media (min-width: 992px) {
  .simple-hero {
    padding: 2.5rem 0;
  }
}
.simple-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: #35308d;
  opacity: 0.95;
  pointer-events: none;
}
.simple-hero__background {
  position: absolute;
  inset: -10% 0;
  z-index: -2;
  background: url("../images/hero-obj-1.jpg") center/cover no-repeat;
  will-change: transform;
}
.simple-hero__content {
  position: relative;
  display: flex;
  flex-direction: column;
  color: white;
  z-index: 1;
}
.simple-hero__content::before {
  content: "";
  display: block;
  width: 5rem;
  height: 0.0625rem;
  margin-bottom: 1rem;
  background-color: #fd5402;
}
.simple-hero .heading {
  margin: 0;
  font-size: 2rem;
  font-weight: bold;
  line-height: 2.25;
}
.simple-hero__eyebrow {
  margin: 0;
  font-family: "Cinzel", serif;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 2.2857142857;
  letter-spacing: 0.5142857143em;
}
.simple-hero__slogan {
  margin: 1rem 0 0;
  font-size: 1.125rem;
  font-weight: bold;
  line-height: 1.6277777778;
}

.about-section {
  background-color: #fff;
}
.about-section .section-header {
  margin-bottom: 2rem;
}
@media (min-width: 992px) {
  .about-section .section-header {
    margin-bottom: 2.5rem;
  }
}

.about-history {
  display: grid;
  gap: 0;
  margin-bottom: 4rem;
  box-shadow: 0 0 2.5rem rgba(0, 0, 0, 0.2);
}
@media (min-width: 992px) {
  .about-history {
    grid-template-columns: minmax(18rem, 0.48fr) minmax(0, 1fr);
    align-items: stretch;
    margin-bottom: 5.5rem;
  }
}

.about-history__media {
  min-height: 18rem;
  margin: 0;
  overflow: hidden;
  background-color: #eef1f3;
}
@media (min-width: 992px) {
  .about-history__media {
    min-height: 29rem;
  }
}
.about-history__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.about-history__panel {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1.5rem;
  background-color: #fff;
}
@media (min-width: 992px) {
  .about-history__panel {
    padding: 2.5rem;
  }
}
.about-history__panel h2 {
  margin: 0 0 2.5rem;
  color: #35308d;
  font-size: 1.25rem;
  line-height: 1.15;
}
@media (min-width: 992px) {
  .about-history__panel h2 {
    font-size: 1.5rem;
  }
}

.about-section__content {
  display: grid;
  gap: 1rem;
}
.about-section__content p {
  margin: 0;
  color: #202020;
  font-size: 1rem;
  line-height: 1.5;
}
.about-section__content em {
  color: #fd5402;
  font-style: normal;
}

.about-message__header {
  margin-top: 0;
}

.about-message {
  position: relative;
  display: grid;
  background-color: #fff;
  box-shadow: 0 1.25rem 2.5rem rgba(21, 31, 46, 0.1);
}
@media (min-width: 992px) {
  .about-message {
    grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.38fr);
    min-height: 21rem;
  }
}
.about-message .about-section__content {
  max-width: 43.75rem;
}

.about-message__body {
  position: relative;
  z-index: 1;
  padding: 2rem;
}
@media (min-width: 992px) {
  .about-message__body {
    padding: 3rem 4rem;
  }
}
.about-message__body h2 {
  margin: 0 0 1.75rem;
  color: #35308d;
  font-size: 1.25rem;
  line-height: 1.35;
}
@media (min-width: 992px) {
  .about-message__body h2 {
    font-size: 1.5rem;
  }
}

.about-message__portrait {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  margin: 0;
  padding: 0 1rem;
}
@media (max-width: 991.98px) {
  .about-message__portrait {
    padding-top: 1rem;
    background: linear-gradient(to bottom, #ffffff 0%, #e5e5e5 100%);
  }
}
@media (min-width: 992px) {
  .about-message__portrait {
    position: absolute;
    bottom: 0;
    right: 0;
  }
}
.about-message__portrait img {
  display: block;
  aspect-ratio: 395/427;
  object-fit: cover;
  object-position: top center;
}
@media (min-width: 992px) {
  .about-message__portrait img {
    width: 24.6875rem;
  }
}

.contact-layout {
  display: grid;
  gap: 2.5rem;
}
@media (min-width: 992px) {
  .contact-layout {
    grid-template-columns: minmax(0, 1fr) minmax(28rem, 0.95fr);
    align-items: stretch;
    gap: 4rem;
  }
}

.contact-layout__content {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
@media (min-width: 992px) {
  .contact-layout__content {
    gap: 5rem;
  }
}

.contact-info h1 {
  max-width: none;
  margin: 0 0 2.5rem;
  color: #35308d;
  font-size: 1.25rem;
  line-height: 1.15;
}
@media (min-width: 992px) {
  .contact-info h1 {
    font-size: 1.5rem;
  }
}
.contact-info p {
  margin: 0 0 1.5rem;
  color: #59585c;
  font-size: 1rem;
  line-height: 1.5;
}

.contact-list {
  display: grid;
  gap: 1rem;
  margin: 0;
  padding-left: 1.125rem;
  font-style: normal;
}

.contact-list__item {
  display: grid;
  grid-template-columns: 1rem 3.25rem 1fr;
  align-items: center;
  gap: 1rem;
  color: #202020;
  font-size: 1rem;
  line-height: 1.25;
}
.contact-list__item i {
  color: #fd5402;
  font-size: 1rem;
  line-height: 1;
}
.contact-list__item a {
  color: inherit;
  text-decoration: none;
  word-break: break-word;
}
@media (hover: hover) {
  .contact-list__item a:hover {
    color: #fd5402;
  }
}

.contact-list__label {
  color: #222;
  font-weight: 500;
}

.contact-career {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2.5rem;
}
.contact-career h2 {
  margin: 0;
  color: #35308d;
  font-size: 1.25rem;
  line-height: 1.15;
}
@media (min-width: 992px) {
  .contact-career h2 {
    font-size: 1.5rem;
  }
}
.contact-career p {
  margin: 0;
  color: #1e1e1e;
  font-size: 1rem;
  line-height: 1.5;
}

.contact-career__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 8.625rem;
  min-height: 3.375rem;
  padding: 0.75rem 2rem;
  color: #fd5402;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
  border: 1px solid #fd5402;
}
@media (hover: hover) {
  .contact-career__button:hover {
    color: #fff;
    background-color: #fd5402;
  }
}

.contact-map {
  min-height: 22rem;
  overflow: hidden;
  background-color: #eef1f3;
}
@media (min-width: 992px) {
  .contact-map {
    min-height: 31rem;
  }
}
.contact-map iframe {
  display: block;
  width: 100%;
  height: 100%;
  min-height: inherit;
  border: 0;
}

.work-list {
  background-image: url(../images/work-repeat-bg.jpg);
  overflow: hidden;
}

.work-list__grid.is-filtering {
  pointer-events: none;
}

.work-list__card[hidden] {
  display: none;
}
.work-list__grid.is-filtering .work-list__card {
  will-change: transform, opacity;
}

.work-tab-btns {
  margin-bottom: 2.5rem;
}
@media (min-width: 992px) {
  .work-tab-btns {
    width: 100%;
    margin-bottom: 4rem;
    overflow: hidden;
  }
  .work-tab-btns + .work-item-hero {
    margin-top: -1.5rem;
  }
}
.work-tab-btns .work-tab-btns__slider {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.work-item-hero {
  --overlap: 7.5rem;
  --content-min: 21.875rem;
  --content-padding-left: 5rem;
  --content-padding-right: max(var(--spacer), calc((100vw - 1360px) / 2 + var(--spacer)));
  --container-inline-start: var(--spacer);
  position: relative;
  left: 50%;
  display: grid;
  align-items: center;
  grid-template-columns: minmax(0, 64vw) minmax(calc(var(--content-min) + var(--content-padding-left) + var(--content-padding-right)), 1fr);
  width: 100vw;
  margin-left: -50vw;
}
@media (max-width: 991.98px) {
  .work-item-hero {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}
@media (min-width: 992px) {
  .work-item-hero {
    --container-inline-start: calc(5vw + var(--spacer));
  }
}
@media (min-width: 1200px) {
  .work-item-hero {
    --container-inline-start: calc((100vw - 1140px) / 2 + var(--spacer));
  }
}
@media (min-width: 1400px) {
  .work-item-hero {
    --container-inline-start: calc((100vw - 1360px) / 2 + var(--spacer));
  }
}

.work-item-hero__slider-wrap {
  position: relative;
  box-sizing: border-box;
  margin-right: calc(var(--overlap) * -1);
}
@media (max-width: 991.98px) {
  .work-item-hero__slider-wrap {
    margin-right: 0;
  }
}
@media (min-width: 992px) {
  .work-item-hero__slider-wrap {
    height: 100%;
  }
}

.work-item-hero.is-media-live .work-item-hero__slider-wrap {
  margin-right: 0;
  max-width: 100vw;
}
@media (min-width: 992px) {
  .work-item-hero.is-media-live .work-item-hero__slider-wrap {
    padding-left: var(--container-inline-start);
    padding-right: 3.75rem;
  }
}
@media (max-width: 991.98px) {
  .work-item-hero.is-media-live .work-item-hero__slider {
    width: auto;
  }
}

@media (max-width: 991.98px) {
  .work-item-hero__slider {
    width: 100vw;
  }
}
.work-item-hero__slider.slick-dotted.slick-slider {
  margin-bottom: 0;
}
@media (min-width: 992px) {
  .work-item-hero__slider.slick-dotted.slick-slider {
    height: 100%;
  }
}
@media (min-width: 992px) {
  .work-item-hero__slider .slick-track,
  .work-item-hero__slider .slick-list {
    height: 100%;
  }
}
.work-item-hero__slider .slick-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  bottom: 1.5rem;
  z-index: 2;
}
.work-item-hero__slider .slick-dots li {
  width: auto;
  height: auto;
  margin: 0;
}
.work-item-hero__slider .slick-dots li button {
  width: auto;
  height: auto;
  padding: 0;
}
.work-item-hero__slider .slick-dots li button:before {
  display: none;
}
.work-item-hero__slider .slick-dots li button:after {
  content: "";
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background-color: #e9e9e9;
  border: 0.125rem solid white;
}
@media (min-width: 992px) {
  .work-item-hero__slider .slick-dots li button:after {
    width: 0.75rem;
    height: 0.75rem;
  }
}
.work-item-hero__slider .slick-dots li.slick-active button:after {
  background-color: #35308d;
  border-color: #e9e9e9;
}

.work-item-hero__panel {
  height: 100%;
}
.work-item-hero__panel#work-media-live {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
}
.work-item-hero__panel[hidden] {
  display: none !important;
}

.work-item-hero__slide {
  margin: 0;
}
@media (min-width: 992px) {
  .work-item-hero__slide {
    height: 100%;
  }
}
#work-media-images .work-item-hero__slide {
  aspect-ratio: 96/72;
}

.work-item-hero__slide img {
  height: 100%;
  object-fit: contain;
}
@media (min-width: 992px) {
  .work-item-hero__slide img {
    width: 100%;
  }
}
@media (max-width: 991.98px) {
  .work-item-hero__slide img {
    width: 100vw;
  }
}
.work-item-hero__slide--video {
  display: flex !important;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
}

.work-item-hero__video-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
}
.work-item-hero__video-frame iframe {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

.work-item-hero__video-cover {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  color: white;
  background-color: rgba(0, 0, 0, 0.88);
  cursor: pointer;
  transition: opacity 0.3s, visibility 0.3s;
}
.work-item-hero__video-cover span {
  display: block;
  width: 0;
  height: 0;
  margin-left: 0.375rem;
  border-top: 1.125rem solid transparent;
  border-bottom: 1.125rem solid transparent;
  border-left: 1.875rem solid currentColor;
}
@media (min-width: 992px) {
  .work-item-hero__video-cover span {
    margin-left: 0.5rem;
    border-top-width: 1.5rem;
    border-bottom-width: 1.5rem;
    border-left-width: 2.5rem;
  }
}

.work-item-hero__slide--video.is-playing .work-item-hero__video-cover {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.work-item-hero__video-copy {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin: 0;
}
.work-item-hero__video-copy h3,
.work-item-hero__video-copy p {
  margin: 0;
}
.work-item-hero__video-copy h3 {
  color: #35308d;
  font-size: 1.125rem;
  line-height: 1.15;
}
@media (min-width: 992px) {
  .work-item-hero__video-copy h3 {
    font-size: 1.5rem;
  }
}
.work-item-hero__video-copy p {
  font-size: 0.875rem;
  line-height: 1.5;
}
@media (min-width: 992px) {
  .work-item-hero__video-copy p {
    font-size: 1rem;
  }
}

.work-item-hero__video-copy-wrap {
  display: grid;
  grid-template-columns: 1.5rem minmax(0, 1fr) 1.5rem;
  align-items: center;
  gap: 2.5rem;
  margin-top: 1rem;
}
@media (max-width: 991.98px) {
  .work-item-hero__video-copy-wrap {
    padding-left: var(--remain-space);
    padding-right: var(--remain-space);
  }
}
@media (min-width: 1200px) {
  .work-item-hero__video-copy-wrap {
    gap: 5.625rem;
  }
}

.work-item-hero__video-copy-slider {
  min-width: 0;
  text-align: center;
}
.work-item-hero__video-copy-slider.slick-slider {
  margin-bottom: 0;
}

.work-item-hero__video-copy-slide {
  min-width: 0;
}

.work-item-hero__video__arrow {
  display: grid;
  place-items: center;
  width: 1.5rem;
  padding: 0;
  aspect-ratio: 1/1;
  background-color: transparent;
  border-radius: 0;
  border: 0 transparent;
  cursor: pointer;
  transition: color 0.3s, border-color 0.3s, transform 0.3s;
}
.work-item-hero__video__arrow--prev {
  color: #35308d;
}
@media (hover: hover) {
  .work-item-hero__video__arrow--prev:hover {
    color: rgb(45.8492063492, 41.5238095238, 121.9761904762);
  }
}
.work-item-hero__video__arrow--next {
  color: #fd5402;
}
@media (hover: hover) {
  .work-item-hero__video__arrow--next:hover {
    color: rgb(227.7, 75.6, 1.8);
  }
}
.work-item-hero__video__arrow [class*=icon-] {
  font-size: 1.5rem;
}

.work-item-hero__arrow {
  display: grid;
  place-items: center;
  width: 3rem;
  color: white;
  aspect-ratio: 1/1;
  border-radius: 0;
  border: 0 transparent;
  cursor: pointer;
  transition: color 0.3s, background-color 0.3s, border-color 0.3s, transform 0.3s;
}
@media (min-width: 992px) {
  .work-item-hero__arrow {
    width: 3.75rem;
  }
}
.work-item-hero__arrow--prev {
  background-color: #35308d;
}
@media (hover: hover) {
  .work-item-hero__arrow--prev:hover {
    background-color: rgb(45.8492063492, 41.5238095238, 121.9761904762);
  }
}
.work-item-hero__arrow--next {
  background-color: #fd5402;
}
@media (hover: hover) {
  .work-item-hero__arrow--next:hover {
    background-color: rgb(227.7, 75.6, 1.8);
  }
}
.work-item-hero__arrow [class*=icon-] {
  font-size: 1.5rem;
}

.work-item-hero__controls {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
@media (min-width: 992px) {
  .work-item-hero__controls {
    position: absolute;
    right: 0;
    bottom: 0;
  }
}
@media (max-width: 991.98px) {
  .work-item-hero__controls {
    justify-content: flex-end;
    margin-top: 5rem;
  }
}
.work-item-hero__controls .work-item-hero__arrows {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.work-item-hero__controls .work-item-hero__arrow {
  display: grid;
  place-items: center;
  width: 3rem;
  color: white;
  aspect-ratio: 1/1;
  border-radius: 0;
  border: 0 transparent;
  cursor: pointer;
  transition: color 0.3s, background-color 0.3s, border-color 0.3s, transform 0.3s;
}
@media (min-width: 992px) {
  .work-item-hero__controls .work-item-hero__arrow {
    width: 3.75rem;
  }
}
.work-item-hero__controls .work-item-hero__arrow--prev {
  background-color: #35308d;
}
@media (hover: hover) {
  .work-item-hero__controls .work-item-hero__arrow--prev:hover {
    background-color: rgb(45.8492063492, 41.5238095238, 121.9761904762);
  }
}
.work-item-hero__controls .work-item-hero__arrow--next {
  background-color: #fd5402;
}
@media (hover: hover) {
  .work-item-hero__controls .work-item-hero__arrow--next:hover {
    background-color: rgb(227.7, 75.6, 1.8);
  }
}
.work-item-hero__controls .work-item-hero__arrow [class*=icon-] {
  font-size: 1.5rem;
}

.work-item-hero__content {
  position: relative;
  padding: 2.5rem 1.25rem 0;
  color: var(--ink);
  z-index: 1;
}
@media (min-width: 992px) {
  .work-item-hero__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 8.5rem var(--content-padding-right) 8.5rem var(--content-padding-left);
    background-color: rgba(255, 255, 255, 0.95);
    box-shadow: -0.5rem 0 2.5rem rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(0.125rem);
  }
}
.work-item-hero__content-wrap {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 2.5rem;
  min-height: 0;
}
.work-item-hero__content-wrap::before {
  flex: 0 0 auto;
  content: "";
  display: block;
  width: 5rem;
  height: 0.0625rem;
  background-color: #fd5402;
}
.work-item-hero__content h1 {
  margin: 0;
  max-width: none;
  color: #35308d;
  font-size: 1.25rem;
  line-height: 1.125;
}
@media (min-width: 992px) {
  .work-item-hero__content h1 {
    font-size: 1.5rem;
  }
}

.work-item-hero__features {
  display: grid;
  gap: 1rem;
  margin: 0;
}
.work-item-hero__features div {
  display: grid;
  grid-template-columns: 4.75rem 1fr;
  gap: 0.25rem;
}
.work-item-hero__features dt,
.work-item-hero__features dd {
  margin: 0;
  font-size: 1rem;
  line-height: 1.25;
}
.work-item-hero__features dt {
  display: flex;
  gap: 0.25rem;
  width: 100%;
}
.work-item-hero__features dt::after {
  content: "/";
  display: block;
  width: 0.5rem;
  margin-left: auto;
  text-align: center;
}

.work-item-hero__awards {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.work-item-hero__awards li {
  display: flex;
  gap: 0.625rem;
  padding: 0.5rem 1rem;
  color: #fd5402;
  background-color: white;
  border: 1px solid #fd5402;
  border-radius: 3rem;
}
.work-item-hero__awards [class*=icon-] {
  font-size: 1.5rem;
}

.work-item-section {
  overflow: hidden;
}
