@charset "UTF-8";
*,
*::before,
*::after {
  box-sizing: inherit;
  background-repeat: no-repeat;
}

html {
  font-size: 62.5%;
  box-sizing: border-box;
  -moz-tab-size: 4;
  tab-size: 4;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  word-break: break-word;
  scroll-behavior: smooth;
}

body {
  margin: 0;
  padding: 0;
  border: 0;
  -webkit-tap-highlight-color: transparent;
  line-height: 1.5;
}

main {
  display: block;
}

nav ol,
nav ul {
  list-style: none;
}

a {
  text-decoration: none;
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  text-decoration: none;
}

b,
strong {
  font-weight: bolder;
}

sub,
sup {
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

img {
  border-style: none;
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -ms-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
}

img,
embed,
iframe,
object,
video {
  max-width: 100%;
  height: auto;
}

ol,
ul {
  list-style: none;
}

svg:not(:root) {
  overflow: hidden;
}

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

audio,
video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

table {
  border-collapse: collapse;
}

button,
input,
optgroup,
select,
textarea {
  margin: 0;
  outline: none;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
select {
  outline: none;
  overflow: visible;
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  outline: none;
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  outline: none;
  border-style: none;
  padding: 0;
}

input {
  overflow: visible;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  display: inline-block;
  vertical-align: baseline;
}

textarea {
  margin: 0;
  resize: vertical;
  overflow: auto;
}

select {
  text-transform: none;
}

[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

::-webkit-input-placeholder {
  opacity: 0.54;
}

details {
  display: block;
}

dialog {
  border: solid;
  display: block;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  position: absolute;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

dialog:not([open]) {
  display: none;
}

canvas {
  display: inline-block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}

[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled=true],
[disabled] {
  cursor: not-allowed;
}

[aria-hidden=false][hidden]:not(:focus) {
  clip: rect(0, 0, 0, 0);
  display: inherit;
  position: absolute;
}

@font-face {
  font-family: "elephantregular";
  src: url("../_font/elephant-webfont.woff") format("woff"), url("../_font/elephant-webfont.woff2") format("woff2"), url("../_font/elephant-webfont.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
::-moz-selection {
  text-shadow: none;
  background-color: #133E69;
  color: #fff;
}

::selection {
  background-color: #133E69;
  color: #fff;
}

@media only screen and (max-width: 75em) {
  html {
    font-size: 60%;
  }
}
@media only screen and (max-width: 60em) {
  html {
    font-size: 58%;
  }
}
@media only screen and (max-width: 48em) {
  html {
    font-size: 53%;
  }
}
@media only screen and (max-width: 37.5em) {
  html {
    font-size: 47%;
  }
}
@media only screen and (max-width: 30em) {
  html {
    font-size: 42%;
  }
}

.cta-button {
  display: inline-block;
  margin-top: 1em;
  padding: 1.5em 4em;
  background: #D4AF37;
  color: #133E69;
  font-size: 1.6em;
  font-weight: bold;
  border-radius: 5em;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 0.5em 1.5em rgba(212, 175, 55, 0.5);
}
.cta-button:hover {
  background: #133E69;
  color: #fff;
  transform: translateY(-0.3em);
  box-shadow: 0 0.8em 2em rgba(19, 62, 105, 0.3);
}

.loader-background {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 442;
  transition: all 0.3s ease;
}

.loading-container {
  position: fixed;
  width: 10em;
  height: 10em;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 443;
  transition: all 0.3s ease;
}

.square-container {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 10em;
  height: 10em;
}

.parent {
  position: absolute;
}

.childs {
  width: 100%;
  height: 100%;
  border: 0.2em solid #133E69;
  border-radius: 0.4em;
  transform: rotate(45deg);
}

.last {
  background-color: #133E69;
}

/*parent-14*/
.child-14 {
  height: 1.7em;
  width: 1.7em;
  animation: move-14 3s infinite alternate;
  -webkit-animation: move-14 3s infinite alternate;
}

@-webkit-keyframes move-14 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  90% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
@keyframes move-14 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  90% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
/*parent-13*/
.child-13 {
  height: 3em;
  width: 3em;
  animation: move-13 3s infinite alternate;
  -webkit-animation: move-13 3s infinite alternate;
}

@-webkit-keyframes move-13 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  85% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
@keyframes move-13 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  85% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
/*parent-12*/
.child-12 {
  height: 4em;
  width: 4em;
  animation: move-12 3s infinite alternate;
  -webkit-animation: move-12 3s infinite alternate;
}

@-webkit-keyframes move-12 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  80% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
@keyframes move-12 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  80% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
/*parent-11*/
.child-11 {
  height: 5em;
  width: 5em;
  animation: move-11 3s infinite alternate;
  -webkit-animation: move-11 3s infinite alternate;
}

@-webkit-keyframes move-11 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  75% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
@keyframes move-11 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  75% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
/*parent-10*/
.child-10 {
  height: 6em;
  width: 6em;
  animation: move-10 3s infinite alternate;
  -webkit-animation: move-10 3s infinite alternate;
}

@-webkit-keyframes move-10 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  70% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
@keyframes move-10 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  70% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
/*parent-9*/
.child-9 {
  height: 7em;
  width: 7em;
  animation: move-9 3s infinite alternate;
  -webkit-animation: move-9 3s infinite alternate;
}

@-webkit-keyframes move-9 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  65% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
@keyframes move-9 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  65% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
/*parent-8*/
.child-8 {
  height: 8em;
  width: 8em;
  animation: move-8 3s infinite alternate;
  -webkit-animation: move-8 3s infinite alternate;
}

@-webkit-keyframes move-8 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  60% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
@keyframes move-8 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  60% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
/*parent-7*/
.child-7 {
  height: 9em;
  width: 9em;
  animation: move-7 3s infinite alternate;
  -webkit-animation: move-7 3s infinite alternate;
}

@-webkit-keyframes move-7 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  55% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
@keyframes move-7 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  55% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
/*parent-6*/
.child-6 {
  height: 10em;
  width: 10em;
  animation: move-6 3s infinite alternate;
  -webkit-animation: move-6 3s infinite alternate;
}

@-webkit-keyframes move-6 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  50% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
@keyframes move-6 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  50% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
/*parent-5*/
.child-5 {
  height: 11em;
  width: 11em;
  animation: move-5 3s infinite alternate;
  -webkit-animation: move-5 3s infinite alternate;
}

@-webkit-keyframes move-5 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  45% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
@keyframes move-5 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  45% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
/*parent-4*/
.child-4 {
  height: 12em;
  width: 12em;
  animation: move-4 3s infinite alternate;
  -webkit-animation: move-4 3s infinite alternate;
}

@-webkit-keyframes move-4 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  40% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
@keyframes move-4 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  40% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
/*parent-3*/
.child-3 {
  height: 13em;
  width: 13em;
  animation: move-3 3s infinite alternate;
  -webkit-animation: move-3 3s infinite alternate;
}

@-webkit-keyframes move-3 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  35% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
@keyframes move-3 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  35% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
/*parent-2*/
.child-2 {
  height: 14em;
  width: 14em;
  animation: move-2 3s infinite alternate;
  -webkit-animation: move-2 3s infinite alternate;
}

@-webkit-keyframes move-2 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  30% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
@keyframes move-2 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  30% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
/*parent-1*/
.child-1 {
  height: 15em;
  width: 15em;
  animation: move-1 3s infinite alternate;
  -webkit-animation: move-1 3s infinite alternate;
}

@-webkit-keyframes move-1 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  25% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
@keyframes move-1 {
  0% {
    transform: rotate3d(0, 1, 0, -90deg);
  }
  25% {
    transform: rotate3d(0, 1, 0, 0deg);
  }
}
/* Hide main content by default */
.main-content {
  display: none;
  transition: all 0.3s ease;
}

/* Class to show content after loading */
.main-content--loaded {
  display: block;
  transition: all 0.3s ease;
}

/* Prevent scrolling during loading */
.no-scroll {
  overflow: hidden;
  transition: all 0.3s ease;
}

#top_bar {
  width: 100%;
  height: 2.2em;
  background-color: #133E69;
}

.header {
  position: sticky;
  top: 0;
  background-color: #fff;
  box-shadow: 0 0.2em 1em rgba(0, 0, 0, 0.1);
  z-index: 400;
  transition: all 0.3s ease;
  padding: 1.1em 0 1.5em 0;
}
.header::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.4em;
  background: #D4AF37;
}
.header.scrolled {
  font-size: 0.7em;
  padding: 0.8em 0 1.4em 0;
  box-shadow: 0 1em 2em rgba(212, 175, 55, 0.35);
}
.header.scrolled::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.4em;
  background: #133E69;
}
.header-container {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 2em;
}
@media only screen and (max-width: 37.5em) {
  .header-container {
    grid-template-columns: auto minmax(auto, 1fr) auto;
    gap: 1em;
  }
}
.header-logo {
  width: min(15em, 100%);
  justify-self: center;
}
.header-logo svg {
  fill: #133E69;
  width: 100%;
  height: auto;
  max-height: 5em;
  transition: fill 0.3s ease;
}
.header-logo svg:hover {
  fill: #D4AF37;
  transition: fill 0.3s ease;
}
@media only screen and (max-width: 37.5em) {
  .header-logo {
    grid-column: 2;
    width: min(12em, 100%);
  }
}
.header-menu {
  display: grid;
  grid-auto-flow: column;
  gap: 2em;
  justify-self: center;
}
@media only screen and (max-width: 64em) {
  .header-menu {
    display: none;
  }
}
.header .menu-item {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: clamp(1.4rem, 1.6vw, 1.8rem);
  color: #133E69;
  text-decoration: none;
  padding: 0.5em 0.5em 0.2em 0.5em;
  position: relative;
  transition: color 0.3s ease;
}
.header .menu-item::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%) scaleX(0);
  width: 80%;
  height: 0.12em;
  background: #D4AF37;
  transition: transform 0.3s ease;
}
.header .menu-item:hover {
  color: #D4AF37;
}
.header .menu-item:hover::after {
  transform: translateX(-50%) scaleX(1);
}
.header-search {
  justify-self: end;
}
.header-search .search-button {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0.5em;
  transition: all 0.3s ease;
}
.header-search .search-button svg {
  width: 2.4em;
  height: 2.4em;
  transition: all 0.3s ease;
}
.header-search .search-button:hover svg {
  fill: #226db7;
  transform: scale(1.1);
}
.header .mobile_menu-toggle {
  display: none;
  grid-column: 1;
  width: 3.5em;
  height: 3.5em;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.5em;
  padding: 0.5em;
  background: transparent;
  border: none;
  cursor: pointer;
  z-index: 410;
}
.header .mobile_menu-toggle .toggle-line {
  display: block;
  width: 100%;
  height: 0.3em;
  background: #133E69;
  transition: all 0.3s ease;
}
@media only screen and (max-width: 37.5em) {
  .header .mobile_menu-toggle {
    display: flex;
    grid-column: 1;
  }
}
@media only screen and (max-width: 64em) {
  .header-menu {
    gap: 1em;
  }
}
@media only screen and (max-width: 48em) {
  .header {
    padding: 1em 0 1.4em 0;
  }
  .header.scrolled {
    padding: 0.8em 0 1.5em 0;
  }
}
@media only screen and (max-width: 37.5em) {
  .header-menu {
    display: none;
  }
}

.mobile_menu-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(255, 255, 255, 0.75);
  backdrop-filter: blur(0.7em);
  z-index: 380;
  display: grid;
  place-items: center;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}
.mobile_menu-overlay.active {
  opacity: 1;
  visibility: visible;
}

.mobile_menu-nav {
  display: grid;
  gap: 2em;
  padding: 2em;
  width: 100%;
  max-width: 40em;
  text-align: center;
}

.mobile_menu-item {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: clamp(2rem, 4vw, 2.4rem);
  color: #133E69;
  text-decoration: none;
  padding: 0.5em;
  transition: color 0.3s ease;
  position: relative;
}
.mobile_menu-item::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%) scaleX(0);
  width: max-content;
  height: 0.1em;
  background: #D4AF37;
  transition: transform 0.3s ease;
}
.mobile_menu-item:hover {
  color: #D4AF37;
}
.mobile_menu-item:hover::after {
  transform: translateX(-50%) scaleX(1);
}

body.mobile_menu-open {
  overflow: hidden;
}
body.mobile_menu-open .mobile_menu-toggle .toggle-line:nth-child(1) {
  transform: translateY(0.8em) rotate(45deg);
}
body.mobile_menu-open .mobile_menu-toggle .toggle-line:nth-child(2) {
  opacity: 0;
}
body.mobile_menu-open .mobile_menu-toggle .toggle-line:nth-child(3) {
  transform: translateY(-0.8em) rotate(-45deg);
}

#active_menu-header {
  color: #fff;
  background-color: #133E69;
  pointer-events: none;
}

.footer {
  background: linear-gradient(135deg, #133E69 0%, #226db7 100%);
  color: #fff;
  position: relative;
}
.footer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0.4em;
  background: #D4AF37;
}
.footer-container {
  width: 140em;
  margin: 0 auto;
  padding: 0 2em;
}
@media only screen and (max-width: 90em) {
  .footer-container {
    width: 100%;
    max-width: 120em;
  }
}
.footer-columns {
  display: grid;
  grid-template-columns: repeat(2, auto);
  gap: 4em;
  padding-bottom: 4em;
  place-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}
@media only screen and (max-width: 62em) {
  .footer-columns {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 48em) {
  .footer-columns {
    grid-template-columns: 1fr;
    place-items: start;
  }
}
.footer-menu {
  display: grid;
  grid-template-columns: repeat(3, auto);
  column-gap: 7em;
}
@media only screen and (max-width: 48em) {
  .footer-menu {
    grid-template-columns: 1fr;
  }
}
.footer #footer-col-contact {
  display: grid;
  grid-template-columns: 1fr;
  align-content: start;
  gap: 3em;
}
.footer .footer-office {
  display: grid;
  gap: 1em;
}
.footer .office-title {
  font-size: 1.8em;
  font-weight: 600;
  color: #226db7;
}
.footer .office-details-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 1.5em;
}
.footer .office-details-list li {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1.2em;
  align-items: start;
}
.footer .office-details-list li span,
.footer .office-details-list li a {
  font-size: 1.5em;
  color: rgba(255, 255, 255, 0.8);
  line-height: 1.6;
  text-decoration: none;
  transition: color 0.3s ease;
}
.footer .office-details-list li span:hover,
.footer .office-details-list li a:hover {
  color: #226db7;
}
.footer .office-details-list .office-detail-icons {
  display: grid;
  grid-template-rows: auto auto;
  gap: 1em;
  align-items: center;
  justify-items: center;
}
.footer .office-details-list .icon-wrapper {
  width: 1.8em;
  height: 1.8em;
}
.footer .office-details-list .icon-wrapper svg {
  width: 100%;
  height: 100%;
  fill: #226db7;
}
.footer-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.2em;
  margin-bottom: 1em;
  color: #fff;
}
.footer-links {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 1.2em;
}
.footer-links li a {
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
  font-size: 1.6em;
  transition: color 0.3s ease;
}
.footer-links li a:hover {
  color: #226db7;
}
.footer-bottom {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  padding: 1.5em 0;
  gap: 3em;
}
@media only screen and (max-width: 48em) {
  .footer-bottom {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
    gap: 2.5em;
  }
}
.footer .footer-logo {
  width: 8em;
}
.footer .footer-logo svg {
  fill: #fff;
  width: 100%;
  height: auto;
  max-height: 5em;
  transition: fill 0.3s ease;
}
.footer .footer-logo svg:hover {
  fill: #D4AF37;
  transition: fill 0.3s ease;
}
@media only screen and (max-width: 48em) {
  .footer .footer-logo {
    order: 2;
    margin-top: 1em;
  }
}
.footer .footer-copyright {
  font-size: 1.4em;
  color: rgba(255, 255, 255, 0.6);
  place-self: center center;
}
@media only screen and (max-width: 48em) {
  .footer .footer-copyright {
    justify-self: center;
    order: 3;
  }
}
.footer .footer-social {
  display: grid;
  grid-auto-flow: column;
  gap: 1.5em;
}
.footer .footer-social a {
  display: grid;
  place-items: center;
  width: 4em;
  height: 4em;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  transition: all 0.3s ease;
}
.footer .footer-social a:hover {
  background: #D4AF37;
  fill: #133E69;
  transform: translateY(-0.3em);
}
.footer .footer-social a svg {
  width: 2em;
  height: 2em;
  fill: #133E69;
  transition: all 0.3s ease;
}

.error-page-container {
  width: 100%;
  height: 100vh;
  display: grid;
  grid-template-rows: auto 1fr auto;
  background: #f8fafc;
  color: #133E69;
  padding: 2em;
  box-sizing: border-box;
}

.error-main {
  width: 100%;
  display: grid;
  place-items: center;
}
.error-main .error-content-svg {
  width: 100%;
  max-width: 55em;
  box-sizing: border-box;
  opacity: 0;
  transform: translateY(20px);
  animation: fadeInUp 0.8s 0.2s ease-out forwards;
}
@media only screen and (max-width: 48em) {
  .error-main {
    max-width: 40em;
    place-self: center;
  }
}

.error-footer {
  width: 100%;
  padding: 2em 0;
}
.error-footer .error-footer-content {
  width: min(100em, 95%);
  margin: 0 auto;
  display: grid;
  justify-items: center;
  gap: 2.5em;
  text-align: center;
  opacity: 0;
  transform: translateY(20px);
  animation: fadeInUp 0.8s 0.4s ease-out forwards;
}
.error-footer .error-message {
  font-size: 1.8em;
  color: #666;
  line-height: 1.6;
  max-width: 60em;
  margin-top: 2em;
}
.error-footer .error-home-button {
  display: inline-block;
  padding: 1.2em 3.5em;
  background: #226db7;
  color: #fff;
  font-size: 1.6em;
  font-weight: bold;
  border-radius: 5em;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 0.5em 1.5em rgba(34, 109, 183, 0.3);
  margin-top: 3em;
}
.error-footer .error-home-button:hover {
  background: #133E69;
  transform: translateY(-0.3em);
  box-shadow: 0 0.8em 2em rgba(19, 62, 105, 0.4);
}
.error-footer .error-nav {
  display: grid;
  grid-auto-flow: column;
  gap: 3em;
  margin-top: 2em;
}
@media only screen and (max-width: 37.5em) {
  .error-footer .error-nav {
    grid-auto-flow: row;
    gap: 1.5em;
  }
}
.error-footer .error-nav a {
  font-size: 1.5em;
  color: #133E69;
  font-weight: 600;
  text-decoration: none;
  position: relative;
  padding-bottom: 0.5em;
  transition: all 0.3s ease;
}
.error-footer .error-nav a:hover {
  color: #D4AF37;
}
.error-footer .error-nav a::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 2px;
  background: #D4AF37;
  transition: width 0.3s ease;
}
.error-footer .error-nav a:hover::after {
  width: 100%;
}

@keyframes fadeInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.redirect-timer {
  margin-top: 1.5em;
  font-size: 1.6em;
  color: #D4AF37;
  opacity: 0;
  transition: opacity 0.5s ease;
  display: grid;
  place-self: center center;
}

.redirect-timer.visible {
  opacity: 1;
}

.main {
  width: 100%;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: repeat(9, max-content);
}
.main-slide {
  width: 100%;
  height: 80vh;
  min-height: 60em;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 48em) {
  .main-slide {
    height: 70vh;
    min-height: 50em;
  }
}
@media only screen and (max-width: 30em) {
  .main-slide {
    height: 65vh;
    min-height: 45em;
  }
}
.main-slide .slide-slider {
  width: 100%;
  height: 100%;
  position: relative;
}
.main-slide .slide-item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 1s ease;
  z-index: 1;
}
.main-slide .slide-item.active {
  opacity: 1;
  z-index: 2;
}
.main-slide .slide-image {
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.main-slide .slide-image::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(34, 109, 183, 0.4);
}
.main-slide .slide-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.main-slide .slide-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-width: 120em;
  padding: 0 5em;
  text-align: center;
  color: #fff;
  z-index: 3;
}
@media only screen and (max-width: 48em) {
  .main-slide .slide-content {
    padding: 0 3em;
  }
}
@media only screen and (max-width: 30em) {
  .main-slide .slide-content {
    padding: 0 2em;
  }
}
.main-slide .slide-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5.5em;
  margin-bottom: 1em;
  line-height: 1.2;
  text-shadow: 0 0.2em 0.4em rgba(0, 0, 0, 0.3);
  opacity: 0;
  transform: translateY(2em);
  transition: all 0.8s ease 0.2s;
}
.main-slide .slide-text {
  font-size: 2.2em;
  max-width: 80em;
  margin: 0 auto 3em;
  opacity: 0;
  transform: translateY(2em);
  transition: all 0.8s ease 0.4s;
  text-shadow: 0 0.1em 0.2em rgba(0, 0, 0, 0.3);
}
@media only screen and (max-width: 48em) {
  .main-slide .slide-text {
    margin-bottom: 2em;
  }
}
.main-slide .slide-button {
  display: inline-block;
  padding: 1.2em 3em;
  background: #226db7;
  color: #fff;
  font-size: 1.6em;
  text-decoration: none;
  border-radius: 5em;
  opacity: 0;
  transform: translateY(2em);
  transition: transform 0.8s ease;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.2);
}
.main-slide .slide-button:hover {
  background: #133E69;
  transform: translateY(-0.3em) scale(1.05);
  box-shadow: 0 0.8em 2em rgba(0, 0, 0, 0.3);
}
@media only screen and (max-width: 48em) {
  .main-slide .slide-button {
    padding: 1em 2.5em;
  }
}
.main-slide .active .slide-title,
.main-slide .active .slide-text,
.main-slide .active .slide-button {
  opacity: 1;
  transform: translateY(0);
}
.main-slide .slide-nav {
  position: absolute;
  bottom: 5em;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 2em;
  z-index: 10;
}
@media only screen and (max-width: 48em) {
  .main-slide .slide-nav {
    bottom: 3em;
  }
}
.main-slide .nav-prev,
.main-slide .nav-next {
  width: 5em;
  height: 5em;
  border-radius: 50%;
  background: rgba(19, 62, 105, 0.2);
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
  backdrop-filter: blur(0.5em);
}
.main-slide .nav-prev:hover,
.main-slide .nav-next:hover {
  background: rgba(212, 175, 55, 0.3);
  transform: scale(1.1);
}
.main-slide .nav-prev:hover svg,
.main-slide .nav-next:hover svg {
  fill: #226db7;
}
.main-slide .nav-prev svg,
.main-slide .nav-next svg {
  width: 2em;
  height: 2em;
  fill: #fff;
  transition: all 0.3s ease;
}
@media only screen and (max-width: 48em) {
  .main-slide .nav-prev,
  .main-slide .nav-next {
    width: 4em;
    height: 4em;
  }
}
.main-slide .nav-dots {
  display: flex;
  gap: 1em;
}
.main-slide .nav-dots .dot {
  width: 1.2em;
  height: 1.2em;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  cursor: pointer;
  transition: all 0.3s ease;
}
.main-slide .nav-dots .dot.active {
  background: #226db7;
  transform: scale(1.2);
}
.main-projects {
  padding: 10em 0;
  background-color: #f8fafc;
  position: relative;
}
.main-projects::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0.4em;
  background: #D4AF37;
}
.main-projects .projects-container {
  width: 140em;
  margin: 0 auto;
  padding: 0 2em;
}
@media only screen and (max-width: 90em) {
  .main-projects .projects-container {
    width: 100%;
    max-width: 120em;
  }
}
.main-projects .projects-header {
  text-align: center;
  margin-bottom: 6em;
}
.main-projects .projects-header .projects-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4.8em;
  color: #133E69;
  margin-bottom: 0.5em;
  line-height: 1.2;
}
.main-projects .projects-header .projects-title span {
  color: #D4AF37;
  position: relative;
}
.main-projects .projects-header .projects-title span::before {
  content: "";
  position: absolute;
  bottom: 0.1em;
  left: 0;
  width: 100%;
  height: 0.3em;
  background: rgba(34, 109, 183, 0.2);
  z-index: -1;
}
.main-projects .projects-header .projects-subtitle {
  font-size: 2em;
  color: #555;
  max-width: 80em;
  margin: 0 auto;
}
.main-projects .projects-filter {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.5em;
  margin-bottom: 5em;
}
@media only screen and (max-width: 37.5em) {
  .main-projects .projects-filter {
    gap: 1em;
  }
}
.main-projects .filter-button {
  padding: 1em 2.5em;
  background: transparent;
  border: 0.2em solid rgba(19, 62, 105, 0.2);
  border-radius: 5em;
  font-size: 1.6em;
  color: #133E69;
  cursor: pointer;
  transition: all 0.3s ease;
}
.main-projects .filter-button:hover, .main-projects .filter-button.active {
  background: #226db7;
  color: #fff;
  border-color: #226db7;
  transform: translateY(-0.3em);
}
@media only screen and (max-width: 37.5em) {
  .main-projects .filter-button {
    padding: 0.8em 1.8em;
  }
}
.main-projects .projects-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(40em, 1fr));
  gap: 4em;
  margin-bottom: 6em;
}
@media only screen and (max-width: 64em) {
  .main-projects .projects-grid {
    grid-template-columns: repeat(auto-fill, minmax(35em, 1fr));
  }
}
@media only screen and (max-width: 48em) {
  .main-projects .projects-grid {
    grid-template-columns: 1fr;
  }
}
.main-projects .project-card {
  display: block;
  background: #fff;
  border-radius: 1em;
  overflow: hidden;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.05);
  transition: all 0.4s ease;
  display: none;
}
.main-projects .project-card:hover {
  transform: translateY(-1em);
  box-shadow: 0 1.5em 3em rgba(0, 0, 0, 0.1);
}
.main-projects .project-card:hover .project-image img {
  transform: scale(1.1);
}
.main-projects .project-card:hover .project-overlay {
  opacity: 1;
}
.main-projects .project-card.animate-in {
  animation: fadeInUp 0.6s ease forwards;
}
.main-projects .project-image {
  height: 30em;
  overflow: hidden;
  position: relative;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.main-projects .project-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
@media only screen and (max-width: 37.5em) {
  .main-projects .project-image {
    height: 25em;
  }
}
.main-projects .project-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0.7) 100%);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 2em;
  opacity: 0;
  transition: opacity 0.4s ease;
}
.main-projects .project-overlay span {
  color: #fff;
  font-size: 1.4em;
  text-shadow: 0 0.1em 0.3em rgba(0, 0, 0, 0.3);
}
.main-projects .project-overlay span.project-year {
  font-weight: bold;
  margin-bottom: 0.5em;
}
.main-projects .project-content {
  display: grid;
  padding: 3em;
  height: 35em;
}
@media only screen and (max-width: 37.5em) {
  .main-projects .project-content {
    padding: 2em;
  }
}
.main-projects .project-name {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.4em;
  color: #133E69;
  margin-bottom: 1em;
  line-height: 1.3;
}
.main-projects .project-desc {
  font-size: 1.6em;
  color: #555;
  line-height: 1.6;
  margin-bottom: 2em;
  align-self: start;
}
.main-projects .project-link {
  display: inline-block;
  font-size: 1.6em;
  width: max-content;
  color: #D4AF37;
  text-decoration: none;
  position: relative;
  bottom: 0;
  align-self: end;
}
.main-projects .project-link::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.05em;
  background: #D4AF37;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.3s ease;
}
.main-projects .project-link:hover::after {
  transform: scaleX(1);
  transform-origin: left;
}
.main-projects .projects-more {
  text-align: center;
}
.main-projects .more-button {
  display: inline-block;
  padding: 1.5em 4em;
  background: #133E69;
  color: #fff;
  font-size: 1.6em;
  border-radius: 5em;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 0.5em 1.5em rgba(19, 62, 105, 0.2);
}
.main-projects .more-button:hover {
  background: #226db7;
  transform: translateY(-0.3em);
  box-shadow: 0 0.8em 2em rgba(34, 109, 183, 0.3);
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(2em);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.main-counter {
  position: relative;
  padding: 10em 0;
  color: #fff;
  overflow: hidden;
}
.main-counter .counter-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), url("/_resources/_img/_backgrounds/construction-site.jpg") center/cover no-repeat;
  z-index: -1;
}
.main-counter .counter-container {
  width: 140em;
  margin: 0 auto;
  padding: 0 2em;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 3em;
  text-align: center;
}
@media only screen and (max-width: 90em) {
  .main-counter .counter-container {
    width: 100%;
    max-width: 120em;
  }
}
@media only screen and (max-width: 62em) {
  .main-counter .counter-container {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 37.5em) {
  .main-counter .counter-container {
    grid-template-columns: 1fr;
  }
}
.main-counter .counter-item {
  padding: 3em 2em;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(0.5em);
  border-radius: 1em;
  border: 0.1em solid rgba(255, 255, 255, 0.2);
  transition: all 0.3s ease;
}
.main-counter .counter-item:hover {
  background: rgba(34, 109, 183, 0.3);
  transform: translateY(-0.5em);
}
.main-counter .counter-number {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 6em;
  font-weight: bold;
  margin-bottom: 0.3em;
  color: #fff;
  line-height: 1;
}
.main-counter .counter-label {
  font-size: 1.8em;
  opacity: 0.9;
  letter-spacing: 0.05em;
}
.main-what_we_do {
  padding: 10em 0;
  position: relative;
}
.main-what_we_do::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0.4em;
  background: #D4AF37;
}
.main-what_we_do .what_we_do-container {
  width: 140em;
  margin: 0 auto;
  padding: 0 2em;
}
@media only screen and (max-width: 90em) {
  .main-what_we_do .what_we_do-container {
    width: 100%;
    max-width: 120em;
  }
}
.main-what_we_do .what_we_do-header {
  text-align: center;
  margin-bottom: 6em;
}
.main-what_we_do .what_we_do-header .what_we_do-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4.8em;
  color: #133E69;
  margin-bottom: 0.5em;
  line-height: 1.2;
}
.main-what_we_do .what_we_do-header .what_we_do-title span {
  color: #D4AF37;
  position: relative;
}
.main-what_we_do .what_we_do-header .what_we_do-title span::before {
  content: "";
  position: absolute;
  bottom: 0.1em;
  left: 0;
  width: 100%;
  height: 0.3em;
  background: rgba(34, 109, 183, 0.2);
  z-index: -1;
}
.main-what_we_do .what_we_do-header .what_we_do-subtitle {
  font-size: 2em;
  color: #555;
  max-width: 80em;
  margin: 0 auto;
}
.main-what_we_do .what_we_do-content {
  display: grid;
  grid-template-columns: 1fr 60em 1fr;
  gap: 4em;
  place-items: center;
}
@media only screen and (max-width: 75em) {
  .main-what_we_do .what_we_do-content {
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr auto;
  }
}
.main-what_we_do .what_we_do-left,
.main-what_we_do .what_we_do-right {
  display: grid;
}
.main-what_we_do .what_we_do-center {
  width: 100%;
  display: grid;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.main-what_we_do .what_we_do-center img {
  display: grid;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 1em;
  padding: 0 1em;
}
@media only screen and (max-width: 48em) {
  .main-what_we_do .what_we_do-center {
    width: 80%;
    padding: 2em 0;
  }
}
.main-what_we_do .service-box {
  background: rgba(212, 175, 55, 0.1);
  border-radius: 1em;
  padding: 3em;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.main-what_we_do .service-box:hover {
  transform: translateY(-0.5em);
  box-shadow: 0 1em 2em rgba(0, 0, 0, 0.1);
}
.main-what_we_do .service-box:hover .service-icon {
  background: #D4AF37;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.main-what_we_do .service-box:hover .service-icon svg {
  fill: #fff;
}
.main-what_we_do .service-icon {
  width: 7em;
  height: 7em;
  background: rgba(34, 109, 183, 0.1);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 2em;
  transition: all 0.3s ease;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.main-what_we_do .service-icon svg {
  width: 4em;
  height: 4em;
  fill: #D4AF37;
  transition: all 0.3s ease;
}
.main-what_we_do .service-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.2em;
  color: #226db7;
  margin-bottom: 1em;
  line-height: 1.3;
}
.main-what_we_do .service-text {
  font-size: 1.6em;
  color: #666;
  line-height: 1.6;
}
.main-why_us {
  padding: 8em 0;
  background-color: #f8fafc;
  position: relative;
  overflow: hidden;
}
.main-why_us::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0.5em;
  background: #D4AF37;
}
.main-why_us .why_us-container {
  width: 140em;
  margin: 0 auto;
  padding: 0 2em;
}
@media only screen and (max-width: 90em) {
  .main-why_us .why_us-container {
    width: 100%;
    max-width: 120em;
  }
}
.main-why_us .why_us-header {
  text-align: center;
  margin-bottom: 6em;
}
.main-why_us .why_us-header .why_us-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4.8em;
  color: #133E69;
  margin-bottom: 0.5em;
  line-height: 1.2;
}
.main-why_us .why_us-header .why_us-title span {
  color: #D4AF37;
}
.main-why_us .why_us-header .why_us-subtitle {
  font-size: 2em;
  color: #555;
  max-width: 80em;
  margin: 0 auto;
}
.main-why_us .why_us-features {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4em;
}
@media only screen and (max-width: 62em) {
  .main-why_us .why_us-features {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 37.5em) {
  .main-why_us .why_us-features {
    grid-template-columns: 1fr;
  }
}
.main-why_us .why_us-feature {
  background: #fff;
  border-radius: 0.8em;
  padding: 3em;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.main-why_us .why_us-feature::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0.4em;
  height: 100%;
  background: #D4AF37;
  transition: all 0.3s ease;
}
.main-why_us .why_us-feature:hover {
  transform: translateY(-0.5em);
  box-shadow: 0 1em 2em rgba(0, 0, 0, 0.1);
}
.main-why_us .why_us-feature:hover::before {
  width: 100%;
  opacity: 0.1;
}
.main-why_us .why_us-feature:hover .feature-icon {
  background: #D4AF37;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.main-why_us .why_us-feature:hover .feature-icon svg {
  fill: #fff;
}
.main-why_us .feature-icon {
  width: 6em;
  height: 6em;
  background: rgba(34, 109, 183, 0.1);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 2em;
  transition: all 0.3s ease;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.main-why_us .feature-icon svg {
  width: 2.5em;
  height: 2.5em;
  fill: #D4AF37;
  transition: all 0.3s ease;
}
.main-why_us .feature-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.4em;
  color: #133E69;
  margin-bottom: 1em;
  line-height: 1.3;
}
.main-why_us .feature-desc {
  font-size: 1.6em;
  color: #555;
  line-height: 1.6;
}
.main-vision {
  padding: 10em 0;
  background: linear-gradient(135deg, #226db7 0%, #133E69 25%, rgb(7.2782258065, 23.75, 40.2217741935) 100%);
  position: relative;
  overflow: hidden;
  color: #fff;
}
.main-vision::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.4em;
  background: #D4AF37;
}
.main-vision::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0.4em;
  background: #D4AF37;
}
.main-vision .vision-container {
  width: 140em;
  margin: 0 auto;
  padding: 0 2em;
}
@media only screen and (max-width: 90em) {
  .main-vision .vision-container {
    width: 100%;
    max-width: 120em;
  }
}
.main-vision .vision-header {
  text-align: center;
  margin-bottom: 8em;
  position: relative;
  z-index: 2;
}
.main-vision .vision-header .vision-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5.2em;
  margin-bottom: 0.5em;
  line-height: 1.2;
  position: relative;
  display: inline-block;
}
.main-vision .vision-header .vision-title span {
  color: #D4AF37;
}
.main-vision .vision-header .vision-subtitle {
  font-size: 2.2em;
  opacity: 0.9;
  max-width: 80em;
  margin: 0 auto;
}
.main-vision .vision-timeline {
  position: relative;
  max-width: 100em;
  margin: 0 auto;
  padding-left: 5em;
}
@media only screen and (max-width: 48em) {
  .main-vision .vision-timeline {
    padding-left: 3em;
  }
}
.main-vision .vision-timeline::before {
  content: "";
  position: absolute;
  top: 0;
  left: 3.5em;
  height: 100%;
  width: 0.3em;
  background: rgba(34, 109, 183, 0.3);
  border-radius: 1em;
}
@media only screen and (max-width: 48em) {
  .main-vision .vision-timeline::before {
    left: 1.5em;
  }
}
.main-vision .timeline-item {
  position: relative;
  margin-bottom: 6em;
  opacity: 0;
  transform: translateX(-2em);
  transition: all 0.6s ease;
}
.main-vision .timeline-item:last-child {
  margin-bottom: 0;
}
.main-vision .timeline-item.visible {
  opacity: 1;
  transform: translateX(0);
}
.main-vision .timeline-marker {
  position: absolute;
  left: -5em;
  top: 0.5em;
  width: 4em;
  height: 4em;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (max-width: 48em) {
  .main-vision .timeline-marker {
    left: -3em;
    width: 3em;
  }
}
.main-vision .timeline-marker .marker-circle {
  width: 2em;
  height: 2em;
  border-radius: 50%;
  background: #D4AF37;
  border: 0.5em solid #133E69;
  z-index: 2;
  box-shadow: 0 0 0 0.2em rgba(34, 109, 183, 0.5);
  transition: all 0.3s ease;
}
.main-vision .timeline-marker .marker-line {
  flex: 1;
  width: 0.3em;
  background: #D4AF37;
  margin-top: 0.5em;
  transform-origin: top;
  transform: scaleY(0);
  transition: transform 0.6s ease 0.3s;
}
.main-vision .timeline-item.visible .marker-line {
  transform: scaleY(1);
}
.main-vision .timeline-content {
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(1em);
  border-radius: 1em;
  padding: 3em;
  border-left: 0.4em solid #D4AF37;
  transition: all 0.3s ease;
  box-shadow: 0 1em 3em rgba(0, 0, 0, 0.2);
}
.main-vision .timeline-content:hover {
  background: rgba(212, 175, 55, 0.2);
  transform: translateY(-0.5em);
}
.main-vision .timeline-content:hover .timeline-year {
  color: #D4AF37;
}
.main-vision .timeline-year {
  font-size: 1.8em;
  font-weight: bold;
  color: rgba(34, 109, 183, 0.7);
  margin-bottom: 0.5em;
  transition: all 0.3s ease;
}
.main-vision .timeline-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.8em;
  margin-bottom: 0.8em;
  color: #fff;
  line-height: 1.3;
}
.main-vision .timeline-desc {
  font-size: 1.6em;
  line-height: 1.6;
  opacity: 0.9;
}
.main-vision_vision::after {
  content: "";
  position: absolute;
  bottom: -20em;
  right: -20em;
  width: 60em;
  height: 60em;
  background: radial-gradient(circle, rgba(34, 109, 183, 0.1) 0%, transparent 70%);
  z-index: 1;
}
.main-partners {
  padding: 8em 0;
  position: relative;
  overflow: hidden;
}
.main-partners::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0.4em;
  background: #D4AF37;
}
.main-partners .partners-container {
  width: 140em;
  margin: 0 auto;
  padding: 0 2em;
  position: relative;
}
@media only screen and (max-width: 90em) {
  .main-partners .partners-container {
    width: 100%;
    max-width: 120em;
  }
}
.main-partners .partners-header {
  text-align: center;
  margin-bottom: 6em;
}
.main-partners .partners-header .partners-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4.8em;
  color: #133E69;
  margin-bottom: 0.5em;
  line-height: 1.2;
}
.main-partners .partners-header .partners-title span {
  color: #D4AF37;
  position: relative;
}
.main-partners .partners-header .partners-subtitle {
  font-size: 2em;
  color: #555;
  max-width: 80em;
  margin: 0 auto;
}
.main-partners .partners-carousel {
  display: flex;
  align-items: center;
  gap: 4em;
  padding: 2em 0;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  margin: 0 -2em;
  padding: 5em 2em 2em 2em;
}
.main-partners .partners-carousel::-webkit-scrollbar {
  display: none;
}
@media only screen and (max-width: 48em) {
  .main-partners .partners-carousel {
    gap: 3em;
  }
}
.main-partners .partner-logo {
  scroll-snap-align: center;
  flex: 0 0 18em;
  height: 12em;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border-radius: 1em;
  padding: 2em;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.05);
  position: relative;
  transition: all 0.3s ease;
  cursor: pointer;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.main-partners .partner-logo:hover {
  transform: translateY(-0.5em);
  box-shadow: 0 1em 2em rgba(0, 0, 0, 0.1);
}
.main-partners .partner-logo:hover .partner-tooltip {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
}
.main-partners .partner-logo img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  filter: grayscale(100%) contrast(0.5);
  opacity: 0.7;
  transition: all 0.3s ease;
}
.main-partners .partner-logo:hover img {
  filter: grayscale(0) contrast(1);
  opacity: 1;
}
.main-partners .partner-logo.is-unavailable {
  position: relative;
  overflow: hidden;
}
.main-partners .partner-logo.is-unavailable:hover {
  transform: none;
  box-shadow: none;
  border-color: #eef2f7;
}
.main-partners .partner-logo.is-unavailable::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.7);
  z-index: 1;
}
.main-partners .partner-logo.is-unavailable::after {
  content: "DATA NOT AVAILABLE AT THE MOMENT";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 1em;
  width: 80%;
  z-index: 2;
}
.main-partners .partner-logo.is-unavailable img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  filter: grayscale(100%) contrast(0.5);
}
.main-partners .partner-tooltip {
  position: absolute;
  bottom: calc(100% + 1em);
  left: 50%;
  transform: translate(-50%, 1em);
  background: #D4AF37;
  color: #133E69;
  padding: 0.8em 1.5em;
  border-radius: 0.5em;
  font-size: 1.4em;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  z-index: 10;
}
.main-partners .partner-tooltip::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border-width: 0.6em;
  border-style: solid;
  border-color: #133E69 transparent transparent transparent;
}
.main-partners .partners-controls {
  display: flex;
  justify-content: center;
  gap: 1.5em;
  margin-top: 3em;
}
.main-partners .partners-controls button {
  width: 4em;
  height: 4em;
  border-radius: 50%;
  background: #fff;
  border: none;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.1);
  cursor: pointer;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}
.main-partners .partners-controls button:hover {
  background: #226db7;
}
.main-partners .partners-controls button:hover svg {
  fill: #fff;
}
.main-partners .partners-controls button svg {
  width: 2em;
  height: 2em;
  fill: #133E69;
  transition: all 0.3s ease;
}
@keyframes fadeInScale {
  from {
    opacity: 0;
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.main-news {
  padding: 8em 0;
  background: #f9f9f9;
}
.main-news .news-container {
  width: min(140em, 90%);
  margin: 0 auto;
}
.main-news .news-header {
  text-align: center;
  margin-bottom: 6em;
}
.main-news .news-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4.8em;
  color: #133E69;
  margin-bottom: 0.5em;
}
.main-news .news-title span {
  color: #D4AF37;
  position: relative;
}
.main-news .news-title span::before {
  content: "";
  position: absolute;
  bottom: 0.1em;
  left: 0;
  width: 100%;
  height: 0.3em;
  background: rgba(34, 109, 183, 0.2);
  z-index: -1;
}
.main-news .news-subtitle {
  font-size: 2em;
  color: #555;
  max-width: 80em;
  margin: 0 auto;
}
.main-news .news-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(35em, 1fr));
  gap: 4em;
  margin-bottom: 6em;
}
@media only screen and (max-width: 48em) {
  .main-news .news-grid {
    grid-template-columns: 1fr;
  }
}
.main-news .news-card {
  background: #fff;
  border-radius: 1em;
  overflow: hidden;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.05);
  transition: all 0.4s ease;
}
.main-news .news-card:hover {
  transform: translateY(-1em);
  box-shadow: 0 1.5em 3em rgba(0, 0, 0, 0.1);
}
.main-news .news-card:hover .news-image img {
  transform: scale(1.05);
}
.main-news .news-image {
  height: 25em;
  overflow: hidden;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.main-news .news-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.main-news .news-content {
  padding: 3em;
}
.main-news .news-date {
  display: block;
  font-size: 1.4em;
  color: #D4AF37;
  margin-bottom: 1em;
}
.main-news .news-heading {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.4em;
  color: #133E69;
  margin-bottom: 1.5em;
  line-height: 1.3;
}
.main-news .news-excerpt {
  font-size: 1.6em;
  color: #666;
  line-height: 1.6;
  margin-bottom: 2em;
}
.main-news .news-link {
  display: inline-block;
  font-size: 1.6em;
  color: #D4AF37;
  text-decoration: none;
  position: relative;
}
.main-news .news-link::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 0.1em;
  background: #D4AF37;
  transition: width 0.3s ease;
}
.main-news .news-link:hover::after {
  width: 100%;
}
.main-news .news-cta {
  text-align: center;
}

.button-secondary {
  display: inline-block;
  margin-top: 1em;
  padding: 1.5em 4em;
  background: #D4AF37;
  color: #133E69;
  font-size: 1.6em;
  font-weight: bold;
  border-radius: 5em;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 0.5em 1.5em rgba(212, 175, 55, 0.3);
}
.button-secondary:hover {
  background: #133E69;
  color: #fff;
  transform: translateY(-0.3em);
  box-shadow: 0 0.8em 2em rgba(19, 62, 105, 0.3);
}

.button-secondary-light {
  display: inline-block;
  padding: 1.2em 3em;
  background: transparent;
  color: #fff;
  border: 2px solid rgba(255, 255, 255, 0.5);
  font-size: 1.5em;
  font-weight: bold;
  border-radius: 5em;
  text-decoration: none;
  transition: all 0.3s ease;
}
.button-secondary-light:hover {
  background: #fff;
  color: #133E69;
  border-color: #fff;
}

.main {
  width: 100%;
}
.main .main-section-cta {
  margin-top: 5em;
  text-align: center;
}

.main-slide {
  width: 100%;
  height: 80vh;
  min-height: 60em;
  position: relative;
  overflow: hidden;
}
.main-slide .slide-slider {
  width: 100%;
  height: 100%;
  position: relative;
}
.main-slide .slide-item {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 1s ease-in-out;
  z-index: 1;
}
.main-slide .slide-item.active {
  opacity: 1;
  z-index: 2;
}
.main-slide .slide-item.active .slide-title,
.main-slide .slide-item.active .slide-text,
.main-slide .slide-item.active .slide-button {
  opacity: 1;
  transform: translateY(0);
}
.main-slide .slide-image {
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.main-slide .slide-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
}
.main-slide .slide-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.main-slide .slide-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-width: 120em;
  padding: 0 5em;
  text-align: center;
  color: #fff;
  z-index: 3;
}
.main-slide .slide-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5.5em;
  margin-bottom: 1em;
  line-height: 1.2;
  text-shadow: 0 0.2em 0.4em rgba(0, 0, 0, 0.3);
  opacity: 0;
  transform: translateY(2em);
  transition: all 0.8s ease 0.2s;
}
.main-slide .slide-text {
  font-size: 2.2em;
  max-width: 80em;
  margin: 0 auto 3em;
  opacity: 0;
  transform: translateY(2em);
  transition: all 0.8s ease 0.4s;
  text-shadow: 0 0.1em 0.2em rgba(0, 0, 0, 0.3);
}
.main-slide .slide-button {
  opacity: 0;
  transform: translateY(2em);
  transition: all 0.8s ease 0.6s;
}
.main-slide .slide-nav {
  position: absolute;
  bottom: 5em;
  left: 50%;
  transform: translateX(-50%);
  display: grid;
  grid-auto-flow: column;
  align-items: center;
  gap: 2em;
  z-index: 10;
}
.main-slide .nav-prev,
.main-slide .nav-next {
  width: 5em;
  height: 5em;
  border-radius: 50%;
  background: rgba(19, 62, 105, 0.4);
  border: none;
  display: grid;
  place-items: center;
  cursor: pointer;
  transition: all 0.3s ease;
  backdrop-filter: blur(0.5em);
}
.main-slide .nav-prev:hover,
.main-slide .nav-next:hover {
  background: rgba(212, 175, 55, 0.5);
  transform: scale(1.1);
}
.main-slide .nav-prev:hover svg,
.main-slide .nav-next:hover svg {
  fill: #133E69;
  transform: scale(1.1);
}
.main-slide .nav-prev svg,
.main-slide .nav-next svg {
  width: 2em;
  height: 2em;
  fill: #fff;
}
.main-slide .nav-dots {
  display: grid;
  grid-auto-flow: column;
  gap: 1em;
}
.main-slide .nav-dots .dot {
  width: 1.2em;
  height: 1.2em;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  cursor: pointer;
  transition: all 0.3s ease;
}
.main-slide .nav-dots .dot.active {
  background: #D4AF37;
}

.main-projects {
  padding: 10em 0;
  background: #fbf9f2;
}
.main-projects .projects-container,
.main-projects .why_us-container,
.main-projects .what_we_do-container,
.main-projects .partners-container,
.main-projects .news-container,
.main-projects .vision-container {
  width: min(140em, 90%);
  margin: 0 auto;
}
.main-projects .projects-header,
.main-projects .why_us-header,
.main-projects .what_we_do-header,
.main-projects .partners-header,
.main-projects .news-header,
.main-projects .vision-header {
  text-align: center;
  margin-bottom: 6em;
}
.main-projects .projects-title,
.main-projects .why_us-title,
.main-projects .what_we_do-title,
.main-projects .partners-title,
.main-projects .news-title,
.main-projects .vision-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4.8em;
  color: #133E69;
}
.main-projects .projects-title span,
.main-projects .why_us-title span,
.main-projects .what_we_do-title span,
.main-projects .partners-title span,
.main-projects .news-title span,
.main-projects .vision-title span {
  color: #D4AF37;
}
.main-projects .projects-subtitle,
.main-projects .why_us-subtitle,
.main-projects .what_we_do-subtitle,
.main-projects .partners-subtitle,
.main-projects .news-subtitle {
  font-size: 2em;
  color: #555;
  max-width: 80em;
  margin: 1em auto 0;
}
.main-projects .projects-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(40em, 1fr));
  gap: 4em;
  margin-bottom: 6em;
}
.main-projects .project-card {
  background: #fff;
  border-radius: 1em;
  overflow: hidden;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.05);
  transition: all 0.4s ease;
}
.main-projects .project-card:hover {
  transform: translateY(-1em);
  box-shadow: 0 1.5em 3em rgba(0, 0, 0, 0.1);
}
.main-projects .project-card:hover .project-image img {
  transform: scale(1.1);
}
.main-projects .project-card:hover .project-overlay {
  opacity: 1;
}
.main-projects .project-image {
  height: 30em;
  overflow: hidden;
  position: relative;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.main-projects .project-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.main-projects .project-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0.7) 100%);
  display: grid;
  align-content: end;
  padding: 2em;
  opacity: 0;
  transition: opacity 0.4s ease;
}
.main-projects .project-overlay span {
  color: #fff;
  font-size: 1.4em;
}
.main-projects .project-overlay .project-year {
  font-weight: bold;
}
.main-projects .project-content {
  padding: 3em;
}
.main-projects .project-name {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.4em;
  color: #133E69;
  margin-bottom: 1em;
}
.main-projects .project-desc {
  font-size: 1.6em;
  color: #666;
  line-height: 1.6;
  margin-bottom: 2em;
}
.main-projects .projects-more {
  text-align: center;
}

.main-counter {
  padding: 10em 0;
  background: #fbf9f2;
  border-top: 1px solid #eef2f7;
}
.main-counter .counter-container {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 3em;
  text-align: center;
}
@media only screen and (max-width: 62em) {
  .main-counter .counter-container {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 37.5em) {
  .main-counter .counter-container {
    grid-template-columns: 1fr;
  }
}
.main-counter .counter-item {
  padding: 2em;
  border-right: 1px solid #dde4eb;
}
.main-counter .counter-item:last-child {
  border: none;
}
@media only screen and (max-width: 62em) {
  .main-counter .counter-item {
    border: none;
  }
}
.main-counter .counter-number {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 6em;
  color: #133E69;
}
.main-counter .counter-label {
  font-size: 1.8em;
  color: #555;
  margin-top: 0.5em;
}

.main-what_we_do {
  padding: 10em 0;
  background: #fff;
}
.main-what_we_do .what_we_do-container {
  width: min(140em, 90%);
  margin: 0 auto;
}
.main-what_we_do .what_we_do-left,
.main-what_we_do .what_we_do-right {
  display: grid;
  gap: 3em;
}
.main-what_we_do .what_we_do-center {
  text-align: center;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.main-what_we_do .what_we_do-center img {
  max-width: 100%;
  height: auto;
}
.main-what_we_do .service-box {
  /* ... styles from previous attempts ... */
}

.main-why_us {
  padding: 10em 0;
  background: #fbf9f2;
}
.main-why_us .why_us-container {
  width: min(140em, 90%);
  margin: 0 auto;
}
.main-why_us .why_us-features {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4em;
}
@media only screen and (max-width: 62em) {
  .main-why_us .why_us-features {
    grid-template-columns: 1fr;
  }
}
.main-why_us .why_us-feature {
  padding: 3em;
  border: 1px solid #eef2f7;
  background: #fff;
  border-radius: 1em;
  text-align: center;
}
.main-why_us .why_us-feature .feature-icon {
  width: 7em;
  height: 7em;
  margin: 0 auto 1.5em;
  background: rgba(34, 109, 183, 0.1);
  border-radius: 50%;
  display: grid;
  place-items: center;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.main-why_us .why_us-feature .feature-icon svg {
  width: 4em;
  height: 4em;
  fill: #D4AF37;
}
.main-why_us .why_us-feature .feature-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.2em;
  color: #133E69;
  margin-bottom: 0.5em;
}
.main-why_us .why_us-feature .feature-desc {
  font-size: 1.6em;
  color: #555;
  line-height: 1.6;
}

.company-page-main .company-section-subtitle {
  font-size: 2em;
  color: #226db7;
  display: block;
}
.company-page-main .company-section-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  color: #D4AF37;
  line-height: 1.2;
  margin-bottom: 0.5em;
}

.company-hero {
  height: 45em;
  position: relative;
  display: grid;
  align-items: center;
  text-align: center;
  color: #fff;
  padding: 2em;
}
.company-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_company/Company-hero.jpg") 50% 195%/cover no-repeat fixed;
  z-index: -1;
}
@media only screen and (max-width: 48em) {
  .company-hero::before {
    background-attachment: scroll;
  }
}
.company-hero .company-hero-content {
  width: min(120em, 90%);
  margin: 0 auto;
}
.company-hero .company-hero-subtitle {
  font-size: 2em;
  color: #D4AF37;
  margin-bottom: 1em;
  display: block;
}
.company-hero .company-hero-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  margin-bottom: 0.5em;
}
.company-hero .company-hero-text {
  font-size: 2em;
  font-family: "elephantregular", Arial, sans-serif;
  margin: 0 auto;
  opacity: 0.9;
  line-height: 1.5;
}

.company-intro {
  padding: 10em 0;
  background: #fff;
}
.company-intro .company-intro-container {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6em;
  align-items: center;
}
@media only screen and (max-width: 62em) {
  .company-intro .company-intro-container {
    grid-template-columns: 1fr;
  }
}
.company-intro .company-intro-text {
  font-size: 1.6em;
  color: #666;
  line-height: 1.8;
}
.company-intro .company-intro-image {
  height: 50em;
  border-radius: 1em;
  overflow: hidden;
}
.company-intro .company-intro-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (max-width: 62em) {
  .company-intro .company-intro-image {
    height: 40em;
    grid-row: 1;
  }
}

.company-stats {
  padding: 6em 0;
  background: #133E69;
  color: #fff;
}
.company-stats .company-stats-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(35em, 1fr));
  gap: 4em;
  text-align: center;
}
.company-stats .stat-number {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 6em;
  color: #D4AF37;
  line-height: 1;
}
.company-stats .stat-number-text {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  color: #D4AF37;
  line-height: 1.1;
}
.company-stats .stat-label {
  font-size: 1.8em;
  opacity: 0.8;
  margin-top: 0.5em;
}

.company-values-new {
  padding: 10em 0;
  background: #fbf9f2;
}
.company-values-new .company-values-container {
  width: min(120em, 90%);
  margin: 0 auto;
}
.company-values-new .company-section-header {
  text-align: center;
  margin-bottom: 5em;
}
.company-values-new .values-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3em;
}
@media only screen and (max-width: 62em) {
  .company-values-new .values-list {
    grid-template-columns: 1fr;
  }
}
.company-values-new .value-item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 2em;
  align-items: center;
  background: #fff;
  padding: 3em;
  border-radius: 1em;
  border: 0.1em solid #eef2f7;
  transition: all 0.3s ease;
}
.company-values-new .value-item:hover {
  transform: translateY(-0.5em);
  box-shadow: 0 1em 2.5em rgba(0, 0, 0, 0.08);
  border-color: #d4af37;
  background: #fbf9f2;
}
.company-values-new .value-item:hover .value-icon svg,
.company-values-new .value-item:hover .value-text h4 {
  fill: #fff;
}
.company-values-new .value-item:hover .value-icon {
  background-color: #D4AF37;
}
.company-values-new .value-icon {
  width: 6em;
  height: 6em;
  background: rgba(34, 109, 183, 0.1);
  border-radius: 50%;
  display: grid;
  place-items: center;
  transition: all 0.3s ease;
}
.company-values-new .value-icon svg {
  width: 4em;
  height: 4em;
  fill: #D4AF37;
  transition: all 0.3s ease;
}
.company-values-new .value-text h4 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.2em;
  color: #133E69;
  margin-bottom: 0.5em;
  transition: color 0.3s ease-in-out;
}
.company-values-new .value-text p {
  font-size: 1.6em;
  line-height: 1.6;
  color: #666;
}

.company-structure {
  padding: 10em 0;
  background: #fbf9f2;
}
.company-structure .company-structure-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 6em;
  align-items: center;
}
@media only screen and (max-width: 62em) {
  .company-structure .company-structure-container {
    grid-template-columns: 1fr;
  }
}
@media only screen and (max-width: 62em) {
  .company-structure .structure-content {
    text-align: center;
  }
}
.company-structure .structure-content p {
  font-size: 1.8em;
  color: #666;
  line-height: 1.6;
  max-width: 60em;
  margin: 1em 0 2em;
}
@media only screen and (max-width: 62em) {
  .company-structure .structure-content p {
    margin-left: auto;
    margin-right: auto;
  }
}
.company-structure .structure-summary {
  background: #fff;
  border-radius: 1em;
  padding: 3em;
  border: 0.1em solid #eef2f7;
  box-shadow: 0 1em 3em rgba(0, 0, 0, 0.05);
}
.company-structure .structure-summary h4 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.2em;
  color: #133E69;
  margin-bottom: 1em;
  padding-bottom: 0.5em;
  border-bottom: 0.1em solid #eee;
}
.company-structure .structure-summary ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 1.2em;
}
.company-structure .structure-summary li {
  font-size: 1.6em;
  font-weight: 600;
  color: #555;
  position: relative;
  padding-left: 2.5em;
}
.company-structure .structure-summary li::before {
  content: "▪";
  color: #226db7;
  position: absolute;
  left: 0;
}

.company-leadership-cta {
  padding: 10em 0;
  background: #fbf9f2;
}
.company-leadership-cta .company-leadership-cta-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  gap: 5em;
  align-items: center;
}
@media only screen and (max-width: 62em) {
  .company-leadership-cta .company-leadership-cta-container {
    grid-template-columns: 1fr;
    text-align: center;
  }
}
.company-leadership-cta .leadership-cta-images {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}
@media only screen and (max-width: 62em) {
  .company-leadership-cta .leadership-cta-images {
    width: 40em;
    justify-content: center;
    place-self: center center;
  }
}
.company-leadership-cta .leadership-cta-images img {
  width: 15em;
  height: 15em;
  border-radius: 50%;
  object-fit: cover;
  object-position: 50% 10%;
  border: 0.5em solid #fff;
  box-shadow: 0 1em 2em rgba(0, 0, 0, 0.1);
}
.company-leadership-cta .leadership-cta-images img:nth-child(2) {
  transform: scale(1.15) translateY(-1em);
  z-index: 1;
}
.company-leadership-cta .leadership-cta-images img:nth-child(1) {
  transform: translateX(2em);
}
.company-leadership-cta .leadership-cta-images img:nth-child(3) {
  transform: translateX(-2em);
}
.company-leadership-cta .leadership-cta-content p {
  font-size: 1.8em;
  color: #666;
  line-height: 1.6;
  margin: 1em 0 2em;
}

.leadership-main {
  width: 100%;
}

.leadership-hero {
  height: 45em;
  position: relative;
  display: grid;
  align-items: center;
  text-align: center;
  color: #fff;
}
.leadership-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_company/Leadership-hero.jpg") 50% 115%/cover no-repeat fixed;
  z-index: -1;
}
@media only screen and (max-width: 48em) {
  .leadership-hero::before {
    background-attachment: scroll;
  }
}
.leadership-hero .leadership-hero-content {
  width: min(120em, 90%);
  margin: 0 auto;
}
.leadership-hero .leadership-hero-subtitle {
  font-size: 2em;
  color: #D4AF37;
  margin-bottom: 1em;
  display: block;
}
.leadership-hero .leadership-hero-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  margin-bottom: 0.5em;
}
.leadership-hero .leadership-hero-text {
  font-size: 2em;
  max-width: 70em;
  margin: 0 auto;
  opacity: 0.9;
  line-height: 1.5;
}

.leadership-grid_section {
  padding: 10em 0 0 0;
  background: #f8fafc;
}

.leadership-grid_container {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30em, 1fr));
  gap: 4em;
}

.leader-card {
  background: #fff;
  border-radius: 1em;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.05);
  display: grid;
  grid-template-rows: 42em auto;
  transition: all 0.3s ease;
}
@media only screen and (max-width: 48em) {
  .leader-card {
    grid-template-rows: 40em auto;
  }
}
.leader-card:hover {
  transform: translateY(-0.5em);
  box-shadow: 0 1em 2em rgba(0, 0, 0, 0.1);
}

.leader-image {
  overflow: hidden;
  justify-self: center;
  width: 100%;
  border-radius: 1em 1em 0 0;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.leader-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.leader-content {
  padding: 3em;
  display: grid;
  height: 100%;
  text-align: center;
  gap: 1.5em;
}

.leader-name {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.8em;
  color: #133E69;
}

.leader-title {
  font-size: 1.6em;
  color: #D4AF37;
  font-weight: 600;
  margin-top: -1em;
}

.leader-summary {
  font-size: 1.6em;
  color: #666;
  line-height: 1.6;
}

.leader-resume-button {
  grid-row: 4;
  place-self: end center;
  margin-top: 1em;
  padding: 1em 3em;
  font-size: 1.4em;
  font-weight: bold;
  color: #133E69;
  background: #D4AF37;
  border: 0.02em solid rgba(34, 109, 183, 0.3);
  border-radius: 5em;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s ease;
}
.leader-resume-button:hover {
  background: #133E69;
  border-color: #D4AF37;
  color: #D4AF37;
  transform: translateY(-0.3em);
}

.leader-resume-placeholder {
  grid-row: 4;
  justify-self: center;
  margin-top: 1em;
  padding: 1em 3em;
  font-size: 1.4em;
  font-weight: bold;
  color: #D4AF37;
  background: #133E69;
  border: 0.02em solid rgba(212, 175, 55, 0.3);
  border-radius: 5em;
  text-decoration: none;
  cursor: not-allowed;
  transition: all 0.3s ease;
}

.leadership-cta {
  margin: 10em 0 0 0;
  text-align: center;
  padding: 4em 4em 8em 4em;
  background: #f8fafc;
  border-radius: 1em;
  box-shadow: 0 -0.5em 1.5em rgba(0, 0, 0, 0.05);
}
.leadership-cta h2 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 3em;
  color: #D4AF37;
  margin-bottom: 0.5em;
}
.leadership-cta p {
  font-size: 1.8em;
  color: #666;
  line-height: 1.6;
  margin-bottom: 2em;
}

.modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: none;
  place-items: center;
  padding: 2em;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}
.modal.active {
  display: grid;
  opacity: 1;
  visibility: visible;
}

.modal-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.7);
  cursor: pointer;
}

.modal-content {
  position: relative;
  background: #fff;
  border-radius: 1em;
  width: 100%;
  max-width: 80em;
  max-height: 80vh;
  overflow-y: auto;
  padding: 4em;
  transform: scale(0.9);
  transition: transform 0.4s ease;
}
.modal.active .modal-content {
  transform: scale(1);
}

.modal-close {
  position: absolute;
  top: 1.5em;
  right: 1.5em;
  font-size: 3em;
  line-height: 1;
  color: #133E69;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s ease;
}
.modal-close:hover {
  color: #D4AF37;
  transform: rotate(90deg);
}
.modal-close[aria-label] {
  font-family: "Arial", sans-serif;
}

.modal-header {
  text-align: center;
  margin-bottom: 2em;
  padding-bottom: 2em;
  border-bottom: 0.01em solid #eee;
}
.modal-header h2 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 3em;
  color: #D4AF37;
  margin-bottom: 0.25em;
}
.modal-header p {
  font-size: 1.8em;
  color: #226db7;
  font-weight: 600;
}

.modal-body h3 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2em;
  color: #133E69;
  margin-top: 2em;
  margin-bottom: 1em;
  padding-bottom: 0.5em;
  border-bottom: 0.01em solid #eee;
}
.modal-body ul {
  list-style: disc;
  padding-left: 2em;
  margin: 0;
  display: grid;
  gap: 1em;
}
.modal-body li {
  font-size: 1.6em;
  color: #555;
  line-height: 1.6;
}
.modal-body p {
  font-size: 1.6em;
  color: #555;
  line-height: 1.6;
  margin-bottom: 1em;
}

body.modal-open {
  overflow: hidden;
}

.org-page-main .org-section-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  color: #D4AF37;
  line-height: 1.2;
  margin-bottom: 0.25em;
}
.org-page-main .org-section-subtitle {
  font-size: 2em;
  color: #226db7;
  display: block;
}
.org-page-main .org-container {
  width: min(140em, 90%);
  margin: 0 auto;
}
.org-page-main .org-section-header {
  text-align: center;
  margin-bottom: 5em;
}
.org-page-main .org-section-header p {
  max-width: 80em;
  margin: 1em auto 0;
  font-size: 1.8em;
  color: #666;
  line-height: 1.6;
}

.org-hero {
  height: 45em;
  position: relative;
  display: grid;
  align-items: center;
  text-align: center;
  color: #fff;
}
.org-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_company/Organization-hero.jpg") 50% 100%/cover no-repeat fixed;
  z-index: -1;
}
.org-hero .org-hero-content {
  width: min(120em, 90%);
  margin: 0 auto;
}
.org-hero .org-hero-subtitle {
  font-size: 2em;
  color: #D4AF37;
  margin-bottom: 1em;
  display: block;
}
.org-hero .org-hero-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  margin-bottom: 0.5em;
}
.org-hero .org-hero-text {
  font-size: 2em;
  max-width: 70em;
  margin: 0 auto;
  opacity: 0.9;
  line-height: 1.5;
}

.org-intro {
  padding: 10em 0;
  background: #fff;
}
.org-intro .org-intro-content {
  width: min(90em, 90%);
  margin: 0 auto;
  text-align: center;
}
.org-intro .org-section-title {
  margin-bottom: 0.5em;
  color: #D4AF37;
}
.org-intro p {
  font-size: 1.8em;
  color: #666;
  line-height: 1.8;
}

.org-executive {
  padding: 8em 0;
  background: #fbf9f2;
}
.org-executive .org-executive-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30em, 1fr));
  gap: 3em;
}
.org-executive .exec-card {
  padding: 3em;
  text-align: center;
  border: 0.1em solid #D4AF37;
  background: #fff;
  border-radius: 1em;
}
.org-executive .exec-card h4 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.2em;
  color: #133E69;
  margin-bottom: 0.75em;
}
.org-executive .exec-card p {
  font-size: 1.6em;
  color: #555;
  line-height: 1.6;
}

.org-divisions {
  padding: 10em 0;
  background: #fff;
}
.org-divisions .division-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(35em, 1fr));
  gap: 4em;
}
.org-divisions .division-column .division-header {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 1.5em;
  margin-bottom: 2em;
  padding-bottom: 1.5em;
  border-bottom: 0.2em solid #D4AF37;
}
.org-divisions .division-column .division-icon {
  width: 5em;
  height: 5em;
  display: grid;
  place-items: center;
  background: rgba(34, 109, 183, 0.1);
  border-radius: 50%;
}
.org-divisions .division-column .division-icon svg {
  width: 3.5em;
  height: 3.5em;
  fill: #D4AF37;
}
.org-divisions .division-column h3 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.4em;
  color: #133E69;
}
.org-divisions .division-column ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 1.2em;
}
.org-divisions .division-column li {
  font-size: 1.6em;
  font-weight: 500;
  color: #555;
}

.org-global-support {
  padding: 8em 0;
  background: #133E69;
  color: #fff;
}
.org-global-support .org-global-support-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 5em;
  justify-items: center;
}
@media only screen and (max-width: 48em) {
  .org-global-support .org-global-support-grid {
    grid-template-columns: 1fr;
  }
}
.org-global-support .support-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.8em;
  color: #D4AF37;
  margin-bottom: 1em;
}
.org-global-support ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 1em;
}
.org-global-support li {
  font-size: 1.8em;
  color: rgba(255, 255, 255, 0.8);
  line-height: 1.6;
}

.services-page-main .services-section-subtitle {
  font-size: 2em;
  color: #226db7;
  display: block;
}
.services-page-main .services-section-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  color: #D4AF37;
  line-height: 1.2;
  margin-bottom: 0.25em;
}
.services-page-main .services-container {
  width: min(140em, 90%);
  margin: 0 auto;
}
.services-page-main .services-section-header {
  text-align: center;
  margin-bottom: 5em;
}
.services-page-main .services-section-header p {
  max-width: 80em;
  margin: 1em auto 0;
  font-size: 1.8em;
  color: #666;
  line-height: 1.6;
}

.services-hero {
  height: 45em;
  position: relative;
  display: grid;
  align-items: center;
  text-align: center;
  color: #fff;
  padding: 2em;
}
@media only screen and (max-width: 75em) {
  .services-hero {
    height: 40em;
  }
}
.services-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_services/Services-hero.png") 50% -50vh/cover no-repeat fixed;
  z-index: -1;
}
@media only screen and (max-width: 118.75em) {
  .services-hero::before {
    background-position: 50% 180%;
  }
}
@media only screen and (max-width: 48em) {
  .services-hero::before {
    background-position: 50% 0vh;
    background-size: auto 50em;
  }
}
.services-hero .services-hero-content {
  width: min(120em, 90%);
  margin: 0 auto;
}
.services-hero .services-hero-subtitle {
  font-size: 2em;
  color: #D4AF37;
  margin-bottom: 1em;
}
.services-hero .services-hero-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  margin-bottom: 0.5em;
}
.services-hero .services-hero-text {
  font-size: 2em;
  max-width: 70em;
  margin: 0 auto;
  opacity: 0.9;
  line-height: 1.5;
}

.services-disciplines {
  padding: 10em 0;
  background: #fbf9f2;
}
.services-disciplines .disciplines-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(35em, 1fr));
  gap: 3em;
}
.services-disciplines .discipline-card {
  background: #fff;
  border-radius: 1em;
  padding: 3em;
  text-align: center;
  border: 1px solid #eef2f7;
  box-shadow: 0 1em 3em rgba(0, 0, 0, 0.05);
}
.services-disciplines .discipline-icon {
  width: 7em;
  height: 7em;
  margin: 0 auto 1.5em;
  background: rgba(34, 109, 183, 0.1);
  border-radius: 50%;
  display: grid;
  place-items: center;
}
.services-disciplines .discipline-icon svg {
  width: 4em;
  height: 4em;
  fill: #D4AF37;
}
.services-disciplines .discipline-card h3 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.4em;
  color: #133E69;
  margin-bottom: 0.75em;
}
.services-disciplines .discipline-card p {
  font-size: 1.6em;
  color: #666;
  line-height: 1.6;
}

.services-specialized {
  padding: 10em 0;
  background: #fff;
}
.services-specialized .solutions-grid-new {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3em;
}
@media only screen and (max-width: 62em) {
  .services-specialized .solutions-grid-new {
    grid-template-columns: 1fr;
  }
}
.services-specialized .solution-card {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 2.5em;
  align-items: center;
  background: #fbf9f2;
  border: 1px solid #eef2f7;
  padding: 3em;
  border-radius: 1em;
  transition: all 0.3s ease;
}
.services-specialized .solution-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 1em 2em rgba(0, 0, 0, 0.07);
  border-color: #D4AF37;
}
.services-specialized .solution-icon {
  width: 6em;
  height: 6em;
  background: #fff;
  border-radius: 50%;
  display: grid;
  place-items: center;
  border: 1px solid #eef2f7;
}
.services-specialized .solution-icon svg {
  width: 4em;
  height: 4em;
  fill: #D4AF37;
}
.services-specialized .solution-content h3 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.2em;
  color: #133E69;
  margin-bottom: 0.5em;
}
.services-specialized .solution-content p {
  font-size: 1.6em;
  color: #666;
  line-height: 1.6;
}

.services-om {
  padding: 10em 0;
  background: #fbf9f2;
}
.services-om .services-om-container {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 6em;
  align-items: center;
}
@media only screen and (max-width: 62em) {
  .services-om .services-om-container {
    grid-template-columns: 1fr;
  }
}
.services-om .services-om-image {
  height: 50em;
  border-radius: 1em;
  overflow: hidden;
  background: linear-gradient(rgba(19, 62, 105, 0.35), rgba(19, 62, 105, 0.35)), url("/_resources/_img/_services/Services-image-1.jpg") center/cover no-repeat;
}
.services-om .services-om-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (max-width: 62em) {
  .services-om .services-om-image {
    grid-row: 1;
  }
}
.services-om .services-om-content p {
  font-size: 1.8em;
  color: #555;
  line-height: 1.8;
  margin-top: 1em;
}

.services-supply {
  padding: 10em 0;
  background: #fff;
}
.services-supply .supply-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30em, 1fr));
  gap: 3em;
}
.services-supply .supply-category {
  background: #fbf9f2;
  border-radius: 1em;
  padding: 3em;
}
.services-supply .supply-category h4 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.2em;
  color: #133E69;
  margin-bottom: 1em;
}
.services-supply .supply-category ul {
  list-style: none;
  padding-left: 2.5em;
  margin: 0;
  display: grid;
  gap: 1em;
}
.services-supply .supply-category li {
  font-size: 1.6em;
  color: #555;
  position: relative;
}
.services-supply .supply-category li::before {
  content: "";
  position: absolute;
  left: -2.5em;
  top: 0.6em;
  width: 1em;
  height: 0.2em;
  background: #D4AF37;
}

.services-cta {
  background: #fff;
}
.services-cta .services-container {
  width: 100%;
}
.services-cta .services-cta-content {
  background: #fbf9f2;
  color: #133E69;
  text-align: center;
  padding: 6em 4em;
  border-radius: 1em;
  display: grid;
  justify-items: center;
  gap: 1.5em;
}
.services-cta .services-cta-content p {
  font-size: 1.8em;
  max-width: 70em;
  line-height: 1.6;
  margin: 0 auto 1em;
}
.services-cta .services-cta-content .cta-button {
  display: inline-block;
  padding: 1.5em 4em;
  background: #D4AF37;
  color: #133E69;
  font-size: 1.6em;
  font-weight: bold;
  border-radius: 5em;
  text-decoration: none;
  transition: all 0.3s ease;
}
.services-cta .services-cta-content .cta-button:hover {
  background: #133E69;
  color: #fff;
  transform: translateY(-0.3em);
}

.om-main {
  width: 100%;
}
.om-main .om-section-subtitle {
  font-size: 2em;
  color: #226db7;
  display: block;
}
.om-main .om-section-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  color: #D4AF37;
  line-height: 1.2;
}

.om-hero {
  height: 45em;
  position: relative;
  display: grid;
  align-items: center;
  text-align: center;
  color: #fff;
  padding: 2em;
}
.om-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_services/Operations&Maintenance-hero.jpg") 50% 30%/cover no-repeat;
  z-index: -1;
}
.om-hero .om-hero-content {
  width: min(120em, 90%);
  margin: 0 auto;
}
.om-hero .om-hero-subtitle {
  font-size: 2em;
  color: #D4AF37;
  margin-bottom: 1em;
}
.om-hero .om-hero-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  margin-bottom: 0.5em;
}
.om-hero .om-hero-text {
  font-size: 2em;
  max-width: 70em;
  margin: 0 auto;
  opacity: 0.9;
  line-height: 1.5;
}

.om-intro {
  padding: 10em 0;
  background: #fff;
}
.om-intro .om-intro-container {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6em;
  align-items: center;
}
@media only screen and (max-width: 62em) {
  .om-intro .om-intro-container {
    grid-template-columns: 1fr;
  }
}
.om-intro .om-intro-content .om-intro-text {
  font-size: 1.6em;
  color: #666;
  line-height: 1.8;
  margin-top: 1.5em;
}
.om-intro .om-intro-points {
  margin-top: 3em;
  display: grid;
  gap: 1.5em;
}
.om-intro .om-point-item {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 1.5em;
  font-size: 1.6em;
  font-weight: 600;
  color: #133E69;
}
.om-intro .om-point-icon {
  width: 3em;
  height: 3em;
  background: rgba(34, 109, 183, 0.1);
  border-radius: 50%;
  display: grid;
  place-items: center;
}
.om-intro .om-point-icon svg {
  width: 2em;
  height: 2em;
  fill: #D4AF37;
}
.om-intro .om-intro-image {
  height: 50em;
  border-radius: 1em;
  overflow: hidden;
  box-shadow: 0 1em 3em rgba(0, 0, 0, 0.1);
  pointer-events: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
@media only screen and (max-width: 62em) {
  .om-intro .om-intro-image {
    height: 40em;
    grid-row: 1;
  }
}
.om-intro .om-intro-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.om-services {
  padding: 8em 0;
  background: #f8fafc;
}
.om-services .om-services-container {
  width: min(120em, 90%);
  margin: 0 auto;
}
.om-services .om-section-header {
  text-align: center;
  margin-bottom: 6em;
}
.om-services .om-section-header .om-services-subtitle {
  font-size: 1.8em;
  color: #666;
  max-width: 80em;
  margin: 1em auto 0;
}

.om-tabs {
  display: grid;
  grid-auto-flow: column;
  justify-content: center;
  gap: 1em;
  margin-bottom: 4em;
  overflow-x: auto;
}
@media only screen and (max-width: 48em) {
  .om-tabs {
    justify-content: start;
    padding: 0 0 1em;
  }
}

.om-tab-button {
  padding: 1em 2.5em;
  font-size: 1.6em;
  font-weight: 600;
  background: #fff;
  color: #226db7;
  border: 0.1em solid #ddd;
  border-radius: 5em;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.3s ease;
}
.om-tab-button:hover {
  background: rgba(212, 175, 55, 0.1);
  border-color: #226db7;
}
.om-tab-button.active {
  background: #D4AF37;
  color: #133E69;
}

.om-content .om-tab-pane {
  display: none;
}
.om-content .om-tab-pane.active {
  display: block;
}

.om-service-list {
  list-style: none;
  padding: 0;
  margin: 0;
  background: #fff;
  padding: 3em;
  border-radius: 1em;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.05);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30em, 1fr));
  gap: 1.5em 3em;
}
.om-service-list li {
  font-size: 1.6em;
  color: #555;
  padding-left: 2.5em;
  position: relative;
  line-height: 1.5;
}
.om-service-list li::before {
  content: "✓";
  color: #D4AF37;
  font-weight: bold;
  position: absolute;
  left: 0;
  top: 0;
}

.om-cta {
  padding: 8em 0;
  background: #fff;
}
.om-cta .om-cta-container {
  text-align: center;
  width: min(120em, 90%);
  margin: 0 auto;
}
.om-cta .om-cta-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  color: #D4AF37;
  margin-bottom: 0.5em;
}
.om-cta .om-cta-text {
  font-size: 1.8em;
  color: #666;
  margin-bottom: 2em;
  max-width: 70em;
  margin-left: auto;
  margin-right: auto;
}
.om-cta .om-cta-button {
  display: inline-block;
  padding: 1.5em 4em;
  background: #226db7;
  color: #fff;
  font-size: 1.6em;
  border-radius: 5em;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 0.5em 1.5em rgba(34, 109, 183, 0.3);
}
.om-cta .om-cta-button:hover {
  background: #133E69;
  transform: translateY(-0.3em);
}

.our_projects-main {
  width: 100%;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: repeat(5, max-content);
}
.our_projects-main .our_projects-section-subtitle {
  font-size: 2em;
  color: #226db7;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.our_projects-main .our_projects-section-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  color: #D4AF37;
  line-height: 1.2;
}
.our_projects-main .our_projects-hero {
  height: 50em;
  position: relative;
  overflow: hidden;
  display: grid;
  align-content: center;
}
.our_projects-main .our_projects-hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_projects/heros/Projects-hero.jpg") 50% 0vh/cover no-repeat fixed;
  z-index: -1;
}
@media only screen and (max-width: 48em) {
  .our_projects-main .our_projects-hero::before {
    background-size: auto 80em;
  }
}
.our_projects-main .our_projects-hero .our_projects-hero-content {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  justify-items: center;
  gap: 1em;
  color: #fff;
  padding: 2em;
}
.our_projects-main .our_projects-hero .our_projects-hero-content .our_projects-hero-subtitle {
  font-size: 2em;
  color: #D4AF37;
  margin-bottom: 1em;
  opacity: 0;
  transform: translateY(2em);
  animation: fadeInUp 0.6s ease forwards;
}
.our_projects-main .our_projects-hero .our_projects-hero-content .our_projects-hero-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  margin-bottom: 0.5em;
  opacity: 0;
  transform: translateY(2em);
  animation: fadeInUp 0.6s 0.2s ease forwards;
}
.our_projects-main .our_projects-hero .our_projects-hero-content .our_projects-hero-text {
  font-size: 1.8em;
  max-width: 80em;
  opacity: 0;
  transform: translateY(2em);
  animation: fadeInUp 0.6s 0.4s ease forwards;
}
.our_projects-main .our_projects-filter {
  padding: 8em 0;
  background: #fff;
}
.our_projects-main .our_projects-filter .our_projects-filter-container {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  gap: 4em;
}
.our_projects-main .our_projects-filter .our_projects-filter-header {
  display: grid;
  justify-items: center;
  gap: 1em;
  text-align: center;
}
.our_projects-main .our_projects-filter .our_projects-filter-header .our_projects-filter-subtitle {
  font-size: 1.8em;
  color: #666;
  max-width: 80em;
}
.our_projects-main .our_projects-filter .our_projects-filter-controls {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.5em;
}
@media only screen and (max-width: 37.5em) {
  .our_projects-main .our_projects-filter .our_projects-filter-controls {
    gap: 1em;
  }
}
.our_projects-main .our_projects-filter .our_projects-filter-button {
  padding: 1em 2em;
  background: rgba(34, 109, 183, 0.1);
  color: #226db7;
  font-size: 1.6em;
  border: none;
  border-radius: 5em;
  cursor: pointer;
  transition: all 0.3s ease;
}
.our_projects-main .our_projects-filter .our_projects-filter-button.active {
  background: #D4AF37;
  color: #133E69;
}
.our_projects-main .our_projects-filter .our_projects-filter-button:hover:not(.active) {
  background: rgba(212, 175, 55, 0.2);
}
.our_projects-main .our_projects-grid {
  padding: 4em 0 8em;
  background: #f8fafc;
}
.our_projects-main .our_projects-grid .our_projects-grid-container {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(40em, 1fr));
  gap: 4em;
}
@media only screen and (max-width: 30em) {
  .our_projects-main .our_projects-grid .our_projects-grid-container {
    grid-template-columns: 1fr;
  }
}
.our_projects-main .our_projects-grid .our_projects-project-card {
  background: #fff;
  border-radius: 1em;
  overflow: hidden;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.05);
  transition: all 0.4s ease;
  display: grid;
  grid-template-rows: 25em 1fr;
}
.our_projects-main .our_projects-grid .our_projects-project-card:hover {
  transform: translateY(-1em);
  box-shadow: 0 1.5em 3em rgba(0, 0, 0, 0.1);
}
.our_projects-main .our_projects-grid .our_projects-project-card:hover .our_projects-project-image img {
  transform: scale(1.05);
}
.our_projects-main .our_projects-grid .our_projects-project-image {
  height: 25em;
  overflow: hidden;
}
.our_projects-main .our_projects-grid .our_projects-project-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.our_projects-main .our_projects-grid .our_projects-project-content {
  padding: 3em;
  display: grid;
  gap: 1.5em;
}
.our_projects-main .our_projects-grid .our_projects-project-category {
  font-size: 1.4em;
  color: #D4AF37;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.our_projects-main .our_projects-grid .our_projects-project-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.4em;
  color: #133E69;
  line-height: 1.3;
}
.our_projects-main .our_projects-grid .our_projects-project-text {
  font-size: 1.6em;
  color: #666;
  line-height: 1.6;
}
.our_projects-main .our_projects-grid .our_projects-project-details {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5em;
  margin-top: 1em;
}
@media only screen and (max-width: 37.5em) {
  .our_projects-main .our_projects-grid .our_projects-project-details {
    grid-template-columns: 1fr;
  }
}
.our_projects-main .our_projects-grid .our_projects-project-detail {
  display: grid;
  gap: 0.5em;
}
.our_projects-main .our_projects-grid .our_projects-detail-label {
  font-size: 1.2em;
  color: #999;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.our_projects-main .our_projects-grid .our_projects-detail-value {
  font-size: 1.6em;
  color: #133E69;
  font-weight: 600;
}
.our_projects-main .our_projects-grid .our_projects-project-link {
  margin-top: 2em;
  display: inline-block;
  font-size: 1.6em;
  color: #226db7;
  text-decoration: none;
  position: relative;
  width: max-content;
  transition: all 0.3s ease;
}
.our_projects-main .our_projects-grid .our_projects-project-link::after {
  content: "";
  position: absolute;
  bottom: -0.3em;
  left: 0;
  width: 100%;
  height: 0.08em;
  background: #D4AF37;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.3s ease;
}
.our_projects-main .our_projects-grid .our_projects-project-link:hover {
  color: #D4AF37;
}
.our_projects-main .our_projects-grid .our_projects-project-link:hover::after {
  transform: scaleX(1);
  transform-origin: left;
}
.our_projects-main .our_projects-stats {
  padding: 8em 0;
  background: #133E69;
  color: #fff;
}
.our_projects-main .our_projects-stats .our_projects-stats-container {
  width: min(120em, 90%);
  margin: 0 auto;
}
.our_projects-main .our_projects-stats .our_projects-stats-header {
  text-align: center;
  margin-bottom: 5em;
}
.our_projects-main .our_projects-stats .our_projects-stats-header .our_projects-section-title {
  color: #fff;
}
.our_projects-main .our_projects-stats .our_projects-stats-header .our_projects-section-subtitle {
  color: #D4AF37;
}
.our_projects-main .our_projects-stats .our_projects-stats-header .our_projects-stats-subtitle {
  font-size: 1.8em;
  color: rgba(255, 255, 255, 0.8);
  max-width: 70em;
  margin: 1em auto 0;
}
.our_projects-main .our_projects-stats .our_projects-stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(25em, 1fr));
  gap: 4em;
  text-align: center;
}
.our_projects-main .our_projects-stats .our_projects-stat-number {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 6em;
  color: #D4AF37;
  line-height: 1;
}
.our_projects-main .our_projects-stats .our_projects-stat-label {
  font-size: 1.8em;
  opacity: 0.9;
  margin-top: 0.5em;
}
.our_projects-main .our_projects-achievements {
  padding: 10em 0;
  background: #fbf9f2;
}
.our_projects-main .our_projects-achievements .our_projects-achievements-container {
  width: min(140em, 90%);
  margin: 0 auto;
}
.our_projects-main .our_projects-achievements .our_projects-achievements-header {
  text-align: center;
  margin-bottom: 5em;
}
.our_projects-main .our_projects-achievements .our_projects-achievements-header .our_projects-achievements-subtitle {
  font-size: 1.8em;
  color: #555;
  max-width: 70em;
  margin: 1em auto 0;
}
.our_projects-main .our_projects-achievements .our_projects-achievements-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(45em, 1fr));
  gap: 3em;
}
.our_projects-main .our_projects-achievements .our_projects-achievement-card {
  display: grid;
  grid-template-columns: 8em 1fr;
  align-items: center;
  gap: 2em;
  padding: 2.5em;
  background: #fff;
  border-radius: 1em;
  border: 1px solid #eef2f7;
  box-shadow: 0 1em 3em rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
}
.our_projects-main .our_projects-achievements .our_projects-achievement-card:hover {
  transform: translateY(-5px);
  border-color: #D4AF37;
}
.our_projects-main .our_projects-achievements .achievement-image {
  width: 8em;
  height: 8em;
  background: #fff;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 3em;
  font-weight: bold;
  color: #226db7;
  border: 2px solid #eef2f7;
}
.our_projects-main .our_projects-achievements .achievement-image::before {
  content: "★";
  opacity: 0.5;
}
.our_projects-main .our_projects-achievements .achievement-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 50%;
}
.our_projects-main .our_projects-achievements .achievement-content .our_projects-achievement-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2em;
  color: #133E69;
  margin-bottom: 0.4em;
}
.our_projects-main .our_projects-achievements .achievement-content .our_projects-achievement-text {
  font-size: 1.5em;
  color: #555;
  line-height: 1.5;
}
.our_projects-main .our_projects-cta {
  padding: 10em 0;
}
.our_projects-main .our_projects-cta .our_projects-cta-container {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  justify-items: center;
  gap: 2em;
}
.our_projects-main .our_projects-cta .our_projects-cta-content {
  display: grid;
  justify-items: center;
  max-width: 80em;
}
.our_projects-main .our_projects-cta .our_projects-cta-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  text-align: center;
  color: #D4AF37;
}
.our_projects-main .our_projects-cta .our_projects-cta-text {
  font-size: 2em;
  opacity: 0.9;
  text-align: center;
  color: #777;
}
.our_projects-main .our_projects-cta .our_projects-cta-button {
  display: inline-block;
  padding: 1.5em 4em;
  background: #D4AF37;
  color: #133E69;
  font-size: 1.6em;
  font-weight: bold;
  border-radius: 5em;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 0.5em 1.5em rgba(212, 175, 55, 0.3);
}
.our_projects-main .our_projects-cta .our_projects-cta-button:hover {
  background: #133E69;
  color: #fff;
  transform: translateY(-0.3em);
  box-shadow: 0 0.8em 2em rgba(19, 62, 105, 0.3);
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(2em);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.our_projects-stat-number.animated {
  animation: countUp 3s ease-out forwards;
}

@keyframes countUp {
  to {
    content: attr(data-count);
  }
}
.project_detail-main {
  width: 100%;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: repeat(4, max-content);
}
.project_detail-main .project_detail-section-subtitle {
  font-size: 1.8em;
  color: #D4AF37;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.project_detail-main .project_detail-section-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  color: #D4AF37;
  line-height: 1.2;
}
.project_detail-main .project_detail-hero {
  height: 50em;
  position: relative;
  overflow: hidden;
  display: grid;
  align-content: center;
}
.project_detail-main .project_detail-hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.project_detail-main .project_detail-hero .project_detail-hero-content {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  justify-items: center;
  gap: 1em;
  color: #fff;
  text-align: center;
}
.project_detail-main .project_detail-hero .project_detail-hero-content .project_detail-hero-subtitle {
  font-size: 2em;
  color: #D4AF37;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  opacity: 0;
  transform: translateY(2em);
  animation: fadeInUp 0.6s ease forwards;
}
.project_detail-main .project_detail-hero .project_detail-hero-content .project_detail-hero-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 6em;
  margin-bottom: 0.5em;
  opacity: 0;
  transform: translateY(2em);
  animation: fadeInUp 0.6s 0.2s ease forwards;
}
.project_detail-main .project_detail-hero .project_detail-hero-content .project_detail-hero-text {
  font-size: 2em;
  max-width: 70em;
  opacity: 0.9;
  line-height: 1.5;
  opacity: 0;
  transform: translateY(2em);
  animation: fadeInUp 0.6s 0.4s ease forwards;
}
.project_detail-main .project_detail-overview {
  padding: 10em 0;
  background: #fff;
}
.project_detail-main .project_detail-overview .project_detail-overview-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6em;
  align-items: center;
}
@media only screen and (max-width: 62em) {
  .project_detail-main .project_detail-overview .project_detail-overview-container {
    grid-template-columns: 1fr;
  }
}
.project_detail-main .project_detail-overview .project_detail-overview-content {
  display: grid;
  gap: 1.5em;
}
.project_detail-main .project_detail-overview .project_detail-overview-text {
  font-size: 1.6em;
  color: #666;
  line-height: 1.8;
}
.project_detail-main .project_detail-overview .project_detail-info-list {
  list-style: none;
  padding: 0;
  margin: 2em 0;
  border-left: 0.3em solid #D4AF37;
  padding-left: 2em;
  display: grid;
  gap: 1em;
}
.project_detail-main .project_detail-overview .project_detail-info-list li {
  font-size: 1.6em;
  color: #555;
}
.project_detail-main .project_detail-overview .project_detail-info-list li strong {
  color: #133E69;
  font-weight: 600;
}
.project_detail-main .project_detail-overview .project_detail-overview-image {
  height: 40em;
  border-radius: 1em;
  overflow: hidden;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.1);
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
@media only screen and (max-width: 62em) {
  .project_detail-main .project_detail-overview .project_detail-overview-image {
    height: 35em;
  }
}
.project_detail-main .project_detail-overview .project_detail-overview-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.project_detail-main .project_detail-overview .project_detail-overview-image img:hover {
  transform: scale(1.05);
}
.project_detail-main .project_detail-tech_specs {
  padding: 8em 0;
  background: #f8fafc;
}
.project_detail-main .project_detail-tech_specs .project_detail-tech_specs-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  gap: 4em;
  justify-items: center;
}
.project_detail-main .project_detail-tech_specs .project_detail-tech_specs-header {
  display: grid;
  gap: 1em;
  justify-items: center;
  text-align: center;
}
.project_detail-main .project_detail-tech_specs .project_detail-tech_specs-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(20em, 1fr));
  gap: 3em;
  width: 100%;
  justify-items: center;
}
@media only screen and (max-width: 30em) {
  .project_detail-main .project_detail-tech_specs .project_detail-tech_specs-grid {
    grid-template-columns: 1fr;
  }
}
.project_detail-main .project_detail-tech_specs .tech_spec-card {
  display: grid;
  justify-items: center;
  padding: 3em;
  background: #fff;
  border-radius: 1em;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
  border: 0.1em solid #D4AF37;
  min-width: 20em;
}
.project_detail-main .project_detail-tech_specs .tech_spec-card:hover {
  transform: translateY(-0.5em);
  box-shadow: 0 1em 2em rgba(0, 0, 0, 0.1);
}
.project_detail-main .project_detail-tech_specs .tech_spec-value {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  color: #133E69;
  line-height: 1;
}
.project_detail-main .project_detail-tech_specs .tech_spec-label {
  font-size: 1.8em;
  color: #666;
  margin-top: 0.5em;
}
.project_detail-main .project_detail-impact {
  padding: 8em 0;
  background: #f8fafc;
}
.project_detail-main .project_detail-impact .project_detail-impact-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  gap: 4em;
  justify-items: center;
}
.project_detail-main .project_detail-impact .project_detail-impact-header {
  display: grid;
  gap: 1em;
  justify-items: center;
  text-align: center;
}
.project_detail-main .project_detail-impact .project_detail-impact-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(20em, 1fr));
  gap: 3em;
  width: 100%;
  justify-items: center;
}
@media only screen and (max-width: 30em) {
  .project_detail-main .project_detail-impact .project_detail-impact-grid {
    grid-template-columns: 1fr;
  }
}
.project_detail-main .project_detail-impact .impact-card {
  display: grid;
  justify-items: center;
  padding: 3em;
  background: #fff;
  border-radius: 1em;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
  border: 0.1em solid #D4AF37;
  min-width: 20em;
}
.project_detail-main .project_detail-impact .impact-card:hover {
  transform: translateY(-0.5em);
  box-shadow: 0 1em 2em rgba(0, 0, 0, 0.1);
}
.project_detail-main .project_detail-impact .impact-value {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  color: #133E69;
  line-height: 1;
}
.project_detail-main .project_detail-impact .impact-label {
  font-size: 1.8em;
  color: #666;
  margin-top: 0.5em;
}
.project_detail-main .project_detail-features {
  padding: 10em 0;
  background: #fff;
}
.project_detail-main .project_detail-features .project_detail-features-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  gap: 4em;
  justify-items: center;
}
.project_detail-main .project_detail-features .project_detail-features-header {
  display: grid;
  gap: 1em;
  justify-items: center;
  text-align: center;
}
.project_detail-main .project_detail-features .project_detail-features-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30em, 1fr));
  gap: 2em;
  width: 100%;
}
@media only screen and (max-width: 48em) {
  .project_detail-main .project_detail-features .project_detail-features-list {
    grid-template-columns: 1fr;
  }
}
.project_detail-main .project_detail-features .feature-item {
  background: #f8fafc;
  padding: 3em;
  border-radius: 1em;
  border-left: 4px solid #D4AF37;
  transition: all 0.3s ease;
}
.project_detail-main .project_detail-features .feature-item:hover {
  transform: translateY(-0.5em);
  box-shadow: 0 1em 2em rgba(0, 0, 0, 0.1);
}
.project_detail-main .project_detail-features .feature-content h3 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.2em;
  color: #133E69;
  margin-bottom: 0.5em;
}
.project_detail-main .project_detail-features .feature-content p {
  font-size: 1.6em;
  color: #666;
  line-height: 1.6;
}
.project_detail-main .project_detail-cta {
  padding: 8em 0;
  background: #f7f9fb;
}
.project_detail-main .project_detail-cta .project_detail-cta-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  justify-items: center;
  text-align: center;
  gap: 1.5em;
}
.project_detail-main .project_detail-cta .project_detail-cta-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  line-height: 1.2;
  color: #D4AF37;
}
.project_detail-main .project_detail-cta .project_detail-cta-text {
  font-size: 1.8em;
  color: #666;
  max-width: 70em;
  line-height: 1.6;
  margin: 0 auto 1em;
}
.project_detail-main .project_detail-cta .project_detail-cta-button {
  display: inline-block;
  padding: 1.5em 4em;
  background: #D4AF37;
  color: #133E69;
  font-size: 1.6em;
  font-weight: bold;
  border-radius: 5em;
  text-decoration: none;
  transition: all 0.3s ease;
}
.project_detail-main .project_detail-cta .project_detail-cta-button:hover {
  background: #133E69;
  color: #fff;
  transform: translateY(-0.3em);
}

#bgh-hero::before {
  background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_projects/heros/Benghazi-Medical-Center.jpg");
}

#tripoli-hero::before {
  background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_projects/heros/Tripoli-Medical-Center.jpg");
}

#nakilat-hero::before {
  background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_projects/heros/Qatar-Nakilat-Shipbuilding-Yard.jpg");
}

#bess-hero::before {
  background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_projects/heros/Abu-Dhabi-Virtual-Battery-Plant.jpg");
}

#wondang-hero::before {
  background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_projects/heros/Wondang-Reservoir-Floating-Solar-Plant.jpg");
}

#inju-hero::before {
  background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_projects/heros/Inju-Industrial-Complex-Facility.jpg");
}

#davyhulme-hero::before {
  background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_projects/heros/Davyhulme-Wastewater-Treatment-Plant.jpg");
}

#bms-hero::before {
  background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_projects/heros/Le-Royal-Complex.jpg");
}

#pocheon-hero::before {
  background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_projects/heros/");
}

#samcheonpo-hero::before {
  background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_projects/heros/Samcheonpo-Solar-Power-Project.jpg");
}

#namyangju-hero::before {
  background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_projects/heros/Namyangju-Green-Water-Center.jpg");
}

#laffan-hero::before {
  background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_projects/heros/Ras-Laffan-Refinery-Plant.jpg");
}

#ami-hero::before {
  background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_projects/heros/");
}

.partners-page-main .partners-hero {
  height: 45em;
  position: relative;
  display: grid;
  align-items: center;
  text-align: center;
  color: #fff;
}
.partners-page-main .partners-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/Partners-hero.jpg") 50% 105%/cover no-repeat fixed;
  z-index: -1;
}
@media only screen and (max-width: 48em) {
  .partners-page-main .partners-hero::before {
    background-attachment: scroll;
  }
}
.partners-page-main .partners-hero .partners-hero-content {
  width: min(120em, 90%);
  margin: 0 auto;
}
.partners-page-main .partners-hero .partners-hero-content .partners-hero-subtitle {
  font-size: 2em;
  color: #D4AF37;
  margin-bottom: 1em;
  display: block;
}
.partners-page-main .partners-hero .partners-hero-content .partners-hero-title {
  font-family: "elephantregular", sans-serif;
  font-size: 5em;
  margin-bottom: 0.5em;
}
.partners-page-main .partners-hero .partners-hero-content .partners-hero-text {
  font-size: 2em;
  max-width: 70em;
  margin: 0 auto;
  opacity: 0.9;
  line-height: 1.5;
}
.partners-page-main .partners-filter-grid_section {
  padding: 8em 0;
  background: #f7f9fb;
}
.partners-page-main .partners-filter-grid_section .partners-container {
  width: min(140em, 90%);
  margin: 0 auto;
}
.partners-page-main .partners-filter-grid_section .partners-container .partners-section-header {
  text-align: center;
  margin-bottom: 4em;
}
.partners-page-main .partners-filter-grid_section .partners-container .partners-section-header .partners-section-subtitle {
  font-size: 2em;
  color: #226db7;
  display: block;
}
.partners-page-main .partners-filter-grid_section .partners-container .partners-section-header .partners-section-title {
  font-family: "elephantregular", sans-serif;
  font-size: 4em;
  color: #D4AF37;
  line-height: 1.2;
}
.partners-page-main .partners-filter-grid_section .partners-container .partners-section-header .partners-section-text {
  font-size: 1.8em;
  color: #333;
  max-width: 70em;
  margin: 1em auto 0;
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-filter-controls {
  display: grid;
  grid-auto-flow: column;
  justify-content: center;
  gap: 1.5em;
  margin-bottom: 5em;
}
@media only screen and (max-width: 48em) {
  .partners-page-main .partners-filter-grid_section .partners-container .partner-filter-controls {
    grid-auto-flow: row;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 30em) {
  .partners-page-main .partners-filter-grid_section .partners-container .partner-filter-controls {
    grid-template-columns: 1fr;
    justify-self: center;
  }
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-filter-controls .filter-button {
  padding: 1em 2.5em;
  font-size: 1.6em;
  font-weight: 600;
  background: #fff;
  color: #133E69;
  border: 1px solid #ddd;
  border-radius: 5em;
  cursor: pointer;
  transition: all 0.3s ease;
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-filter-controls .filter-button:hover {
  border-color: #D4AF37;
  color: #D4AF37;
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-filter-controls .filter-button.active {
  background: #133E69;
  color: #fff;
  border-color: #133E69;
  transform: translateY(-0.2em);
  box-shadow: 0 0.5em 1em rgba(19, 62, 105, 0.2);
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(45em, 1fr));
  gap: 3em;
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-card {
  display: none;
  background: #fbf9f2;
  border: 1px solid #eef2f7;
  border-radius: 1em;
  padding: 3em;
  grid-template-columns: 12em 1fr;
  gap: 1.5em 2.5em;
  align-items: center;
  transition: all 0.3s ease;
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-card.visible {
  display: grid;
  animation: fadeIn 0.5s ease;
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-card:hover {
  transform: translateY(-0.5em);
  box-shadow: 0 1em 3em rgba(0, 0, 0, 0.08);
  border-color: #d4af37;
}
@media only screen and (max-width: 30em) {
  .partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-card {
    grid-template-columns: 1fr;
    text-align: center;
    justify-items: center;
    gap: 1.5em;
  }
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-card.is-unavailable {
  position: relative;
  overflow: hidden;
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-card.is-unavailable:hover {
  transform: none;
  box-shadow: none;
  border-color: #eef2f7;
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-card.is-unavailable::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.7);
  z-index: 1;
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-card.is-unavailable::after {
  content: "DATA NOT AVAILABLE AT THE MOMENT";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 1.6em;
  font-weight: bold;
  text-align: center;
  padding: 1em;
  width: 80%;
  z-index: 2;
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-logo {
  grid-row: 1/3;
  width: 100%;
  height: 15em;
  background: #fff;
  border-radius: 0.5em;
  display: grid;
  place-items: center;
  padding: 1em;
  border: 1px solid #f0f0f0;
  pointer-events: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-logo img {
  max-width: 90%;
  max-height: 90%;
  object-fit: contain;
  pointer-events: none;
}
@media only screen and (max-width: 30em) {
  .partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-logo {
    grid-row: 1;
    width: 15em;
    height: 15em;
  }
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-name {
  font-family: "elephantregular", sans-serif;
  font-size: 2.2em;
  color: #133E69;
  align-self: end;
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-origin {
  font-size: 1.4em;
  font-weight: 600;
  color: #D4AF37;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  align-self: start;
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-description {
  grid-column: 1/-1;
  font-size: 1.5em;
  color: #555;
  line-height: 1.6;
  margin-top: 1em;
  border-top: 1px solid #eef2f7;
  padding-top: 1.5em;
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-link {
  grid-column: 1/-1;
  justify-self: start;
  font-size: 1.5em;
  font-weight: bold;
  color: #D4AF37;
  text-decoration: none;
  transition: color 0.3s ease;
}
@media only screen and (max-width: 30em) {
  .partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-link {
    justify-self: center;
  }
}
.partners-page-main .partners-filter-grid_section .partners-container .partner-grid .partner-link:hover {
  color: #133E69;
}
.partners-page-main .partner-clients-section {
  padding: 10em 0;
  background: #fff;
}
.partners-page-main .partner-clients-section .partner-clients-container {
  width: min(140em, 90%);
  margin: 0 auto;
}
.partners-page-main .partner-clients-section .partner-section-header {
  text-align: center;
  margin-bottom: 5em;
}
.partners-page-main .partner-clients-section .partner-section-header .partners-section-subtitle {
  font-size: 2em;
  color: #226db7;
  display: block;
}
.partners-page-main .partner-clients-section .partner-section-header .partners-section-title {
  font-family: "elephantregular", sans-serif;
  font-size: 4em;
  color: #D4AF37;
  line-height: 1.2;
}
.partners-page-main .partner-clients-section .partner-section-header p {
  font-size: 1.8em;
  color: #666;
  max-width: 70em;
  margin: 1em auto 0;
}
.partners-page-main .partner-clients-section .client-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(25em, 1fr));
  gap: 4em;
  justify-content: center;
}
.partners-page-main .partner-clients-section .client-card {
  text-align: center;
}
.partners-page-main .partner-clients-section .client-logo {
  height: 12em;
  background: #fbf9f2;
  border-radius: 1em;
  padding: 2em;
  display: grid;
  place-items: center;
  border: 1px solid #eef2f7;
  transition: all 0.3s ease;
}
.partners-page-main .partner-clients-section .client-logo img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  filter: grayscale(100%);
  opacity: 0.7;
  transition: all 0.3s ease;
}
.partners-page-main .partner-clients-section .client-logo:hover {
  border-color: #D4AF37;
}
.partners-page-main .partner-clients-section .client-logo:hover img {
  filter: none;
  opacity: 1;
}
.partners-page-main .partner-clients-section .client-name {
  font-size: 1.6em;
  font-weight: 600;
  color: #133E69;
  margin-top: 1.5em;
}
.partners-page-main .partners-cta {
  padding: 8em 0;
  background: #fff;
}
.partners-page-main .partners-cta .partners-cta-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  justify-items: center;
  text-align: center;
  gap: 2em;
  padding: 6em 4em;
  border-radius: 1em;
}
.partners-page-main .partners-cta .partners-cta-title {
  font-family: "elephantregular", sans-serif;
  font-size: 4em;
  color: #D4AF37;
  line-height: 1.2;
}
.partners-page-main .partners-cta .partners-cta-text {
  font-size: 1.8em;
  color: #333;
  max-width: 70em;
  line-height: 1.6;
  margin: 0 auto;
}
.partners-page-main .partners-cta .partners-cta-button {
  display: inline-block;
  margin-top: 1em;
  padding: 1.5em 4em;
  background: #D4AF37;
  color: #133E69;
  font-size: 1.6em;
  font-weight: bold;
  border-radius: 5em;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 0.5em 1.5em rgba(212, 175, 55, 0.3);
}
.partners-page-main .partners-cta .partners-cta-button:hover {
  background: #133E69;
  color: #fff;
  transform: translateY(-0.3em);
  box-shadow: 0 0.8em 2em rgba(19, 62, 105, 0.3);
}
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.partner-detail-main .partner-section-title {
  font-family: "elephantregular", sans-serif;
  font-size: 4em;
  color: #D4AF37;
  line-height: 1.2;
  margin-bottom: 0.5em;
}
.partner-detail-main .partner-detail-hero {
  height: 45em;
  position: relative;
  display: grid;
  align-items: center;
  text-align: center;
  color: #fff;
  padding: 2em;
}
.partner-detail-main .partner-detail-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
}
.partner-detail-main .partner-detail-hero .partner-detail-hero-content {
  width: min(120em, 90%);
  margin: 0 auto;
  opacity: 0;
  animation: fadeInUp 0.5s 0.1s ease-out forwards;
}
.partner-detail-main .partner-detail-hero .partner-hero-subtitle {
  display: block;
  font-size: 2em;
  color: #D4AF37;
  margin-bottom: 1em;
}
.partner-detail-main .partner-detail-hero .partner-hero-title {
  font-family: "elephantregular", sans-serif;
  font-size: 5em;
  margin-bottom: 0.5em;
  line-height: 1.2;
}
.partner-detail-main .partner-detail-hero .partner-hero-text {
  font-size: 2em;
  max-width: 70em;
  margin: 0 auto;
  opacity: 0.9;
  line-height: 1.5;
}
.partner-detail-main .partner-overview-section {
  padding: 10em 0;
  background: #fff;
}
.partner-detail-main .partner-overview-section .partner-overview-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 30em 1fr;
  gap: 6em;
  align-items: center;
}
@media only screen and (max-width: 62em) {
  .partner-detail-main .partner-overview-section .partner-overview-container {
    grid-template-columns: 1fr;
    text-align: center;
    justify-items: center;
  }
}
.partner-detail-main .partner-overview-section .partner-logo-box {
  width: 100%;
  background: #fff;
  border-radius: 1em;
  padding: 2em;
  display: grid;
  place-items: center;
  box-shadow: 0 1em 3em rgba(0, 0, 0, 0.1);
  pointer-events: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.partner-detail-main .partner-overview-section .partner-logo-box img {
  max-width: 90%;
  max-height: 90%;
  object-fit: contain;
  pointer-events: none;
}
.partner-detail-main .partner-overview-section .partner-overview-content p {
  font-size: 1.6em;
  line-height: 1.8;
  color: #555;
}
.partner-detail-main .partner-overview-section .partner-overview-content ul.partner-key-facts {
  list-style: none;
  padding: 2em 0;
  margin: 2em 0;
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5em;
}
@media only screen and (max-width: 62em) {
  .partner-detail-main .partner-overview-section .partner-overview-content ul.partner-key-facts {
    text-align: left;
  }
}
.partner-detail-main .partner-overview-section .partner-overview-content ul.partner-key-facts li {
  font-size: 1.5em;
  color: #555;
  position: relative;
  padding-left: 2em;
}
.partner-detail-main .partner-overview-section .partner-overview-content ul.partner-key-facts li strong {
  color: #133E69;
}
.partner-detail-main .partner-overview-section .partner-overview-content ul.partner-key-facts li::before {
  content: "✓";
  font-weight: 900;
  color: #D4AF37;
  position: absolute;
  left: 0;
}
.partner-detail-main .partner-services-section {
  padding: 8em 0;
  background: #f7f9fb;
}
.partner-detail-main .partner-services-section .partner-services-container {
  width: min(120em, 90%);
  margin: 0 auto;
}
.partner-detail-main .partner-services-section .partner-section-header {
  text-align: center;
  margin-bottom: 4em;
}
.partner-detail-main .partner-services-section .partner-section-header p {
  font-size: 1.8em;
  color: #333;
  max-width: 70em;
  margin: 1em auto 0;
}
.partner-detail-main .partner-services-section .partner-services-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(25em, 1fr));
  gap: 3em;
}
.partner-detail-main .partner-services-section .service-card {
  background: #fff;
  border: 1px solid #eef2f7;
  padding: 3em;
  text-align: center;
  border-radius: 1em;
}
.partner-detail-main .partner-services-section .service-icon {
  width: 6em;
  height: 6em;
  margin: 0 auto 1.5em;
  background: rgba(34, 109, 183, 0.1);
  border-radius: 50%;
  display: grid;
  place-items: center;
}
.partner-detail-main .partner-services-section .service-icon svg {
  width: 3.5em;
  height: 3.5em;
  fill: #D4AF37;
}
.partner-detail-main .partner-services-section .service-icon #timeline {
  width: 4.5em;
  height: 3em;
}
.partner-detail-main .partner-services-section .service-icon #unlocking {
  width: 4em;
  height: 5em;
}
.partner-detail-main .partner-services-section .service-icon #transportation {
  width: 4em;
  height: 4em;
}
.partner-detail-main .partner-services-section .service-icon #hydraulic {
  width: 4em;
  height: 5em;
}
.partner-detail-main .partner-services-section .service-icon #civil-indust {
  height: 5em;
}
.partner-detail-main .partner-services-section .service-icon #power-plant {
  height: 4em;
}
.partner-detail-main .partner-services-section .service-card h3 {
  font-family: "elephantregular", sans-serif;
  font-size: 2.2em;
  color: #133E69;
  margin-bottom: 0.75em;
}
.partner-detail-main .partner-services-section .service-card p {
  font-size: 1.6em;
  color: #333;
  line-height: 1.6;
}
.partner-detail-main .partner-stats-section {
  padding: 8em 0;
  background: #133E69;
  color: #fff;
}
.partner-detail-main .partner-stats-section .partner-stats-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(25em, 1fr));
  gap: 3em;
  text-align: center;
}
.partner-detail-main .partner-stats-section .stat-number {
  font-family: "elephantregular", sans-serif;
  font-size: 6em;
  color: #D4AF37;
  line-height: 1;
}
.partner-detail-main .partner-stats-section .stat-label {
  font-size: 1.8em;
  opacity: 0.8;
  margin-top: 0.5em;
}
.partner-detail-main .partner-projects-section {
  padding: 8em 0;
  background: #f7f9fb;
}
.partner-detail-main .partner-projects-section .partner-projects-container {
  width: min(120em, 90%);
  margin: 0 auto;
}
.partner-detail-main .partner-projects-section .partner-section-header {
  text-align: center;
  margin-bottom: 5em;
}
.partner-detail-main .partner-projects-section .partner-projects-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2em;
}
@media only screen and (max-width: 62em) {
  .partner-detail-main .partner-projects-section .partner-projects-list {
    grid-template-columns: 1fr;
  }
}
.partner-detail-main .partner-projects-section .partner-projects-list li {
  background: #fff;
  padding: 2em;
  border-radius: 0.8em;
  border-left: 4px solid #D4AF37;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.03);
  transition: all 0.3s ease;
}
.partner-detail-main .partner-projects-section .partner-projects-list li:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.07);
}
.partner-detail-main .partner-projects-section .partner-projects-list li h4 {
  font-size: 1.8em;
  color: #133E69;
  font-weight: 600;
  margin-bottom: 0.5em;
}
.partner-detail-main .partner-projects-section .partner-projects-list li span {
  font-size: 1.5em;
  color: #333;
}
.partner-detail-main .partner-focus-section {
  padding: 10em 0;
  background: #fff;
}
.partner-detail-main .partner-focus-section .partner-focus-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6em;
  align-items: center;
}
@media only screen and (max-width: 62em) {
  .partner-detail-main .partner-focus-section .partner-focus-container {
    grid-template-columns: 1fr;
  }
}
.partner-detail-main .partner-focus-section .partner-focus-image {
  height: 50em;
  border-radius: 1em;
  box-shadow: 0 1em 3em rgba(0, 0, 0, 0.1);
}
@media only screen and (max-width: 62em) {
  .partner-detail-main .partner-focus-section .partner-focus-image {
    height: 40em;
  }
}
.partner-detail-main .partner-focus-section .partner-focus-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 3em;
  filter: grayscale(100%);
  transition: all 0.3s ease;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.partner-detail-main .partner-focus-section .partner-focus-image img:hover {
  filter: grayscale(0%);
  border-radius: 0;
}
.partner-detail-main .partner-focus-section .partner-focus-image p {
  color: #777;
  padding-top: 1em;
}
.partner-detail-main .partner-focus-section .partner-focus-content p {
  font-size: 1.6em;
  line-height: 1.8;
  color: #555;
}
.partner-detail-main .partner-focus-section .partner-focus-content ul {
  list-style: none;
  padding: 2em 0 0;
  margin: 2em 0 0;
  border-top: 1px solid #eee;
  display: grid;
  gap: 1.5em;
}
.partner-detail-main .partner-focus-section .partner-focus-content ul li {
  font-size: 1.6em;
  color: #555;
  font-weight: 600;
  position: relative;
  padding-left: 2.5em;
}
.partner-detail-main .partner-focus-section .partner-focus-content ul li::before {
  content: "✓";
  color: #D4AF37;
  position: absolute;
  left: 0;
}
.partner-detail-main .partner-values-section {
  padding: 8em 0;
  background: #fbf9f2;
}
.partner-detail-main .partner-values-section .partner-values-container {
  width: min(120em, 90%);
  margin: 0 auto;
}
.partner-detail-main .partner-values-section .partner-section-header {
  text-align: center;
  margin-bottom: 4em;
}
.partner-detail-main .partner-values-section .partner-values-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30em, 1fr));
  gap: 3em;
}
.partner-detail-main .partner-values-section .value-card {
  text-align: center;
  padding: 3em;
  border: 1px solid #eef2f7;
  background: #fff;
  border-radius: 1em;
}
.partner-detail-main .partner-values-section .value-icon {
  width: 6em;
  height: 6em;
  margin: 0 auto 1.5em;
  background: rgba(34, 109, 183, 0.1);
  border-radius: 50%;
  display: grid;
  place-items: center;
}
.partner-detail-main .partner-values-section .value-icon svg {
  width: 3.5em;
  height: 3.5em;
  fill: #D4AF37;
}
.partner-detail-main .partner-values-section .value-card h3 {
  font-family: "elephantregular", sans-serif;
  font-size: 2.2em;
  color: #133E69;
  margin-bottom: 0.75em;
}
.partner-detail-main .partner-values-section .value-card p {
  font-size: 1.6em;
  color: #777;
  line-height: 1.6;
}
.partner-detail-main .partner-capabilities-section {
  padding: 10em 0;
  background: #fff;
}
.partner-detail-main .partner-capabilities-section .partner-capabilities-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6em;
  align-items: center;
}
@media only screen and (max-width: 62em) {
  .partner-detail-main .partner-capabilities-section .partner-capabilities-container {
    grid-template-columns: 1fr;
  }
}
.partner-detail-main .partner-capabilities-section .partner-capabilities-content p {
  font-size: 1.8em;
  line-height: 1.8;
  color: #555;
  margin-bottom: 2em;
}
.partner-detail-main .partner-capabilities-section .partner-capabilities-content h4 {
  font-family: "elephantregular", sans-serif;
  font-size: 2.2em;
  color: #133E69;
  margin-bottom: 1em;
}
.partner-detail-main .partner-capabilities-section .partner-capabilities-content ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 1.2em;
}
.partner-detail-main .partner-capabilities-section .partner-capabilities-content ul li {
  font-size: 1.6em;
  font-weight: 600;
  color: #555;
  position: relative;
  padding-left: 2.5em;
}
.partner-detail-main .partner-capabilities-section .partner-capabilities-content ul li::before {
  content: "✓";
  color: #D4AF37;
  position: absolute;
  left: 0;
}
.partner-detail-main .partner-capabilities-section .partner-capabilities-image {
  height: 50em;
  border-radius: 1em;
  overflow: hidden;
  box-shadow: 0 1em 3em rgba(0, 0, 0, 0.1);
}
@media only screen and (max-width: 62em) {
  .partner-detail-main .partner-capabilities-section .partner-capabilities-image {
    height: 40em;
    grid-row: 1;
  }
}
.partner-detail-main .partner-capabilities-section .partner-capabilities-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.partner-detail-main .partner-clients-section {
  padding: 8em 0;
  background: #fff;
}
.partner-detail-main .partner-clients-section .partner-clients-container {
  width: min(120em, 90%);
  margin: 0 auto;
}
.partner-detail-main .partner-clients-section .partner-section-header {
  text-align: center;
  margin-bottom: 5em;
}
.partner-detail-main .partner-clients-section .partner-section-header p {
  font-size: 1.8em;
  color: #333;
  max-width: 70em;
  margin: 1em auto 0;
}
.partner-detail-main .partner-clients-section .client-logo-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15em, 1fr));
  gap: 4em;
  place-items: center center;
}
@media only screen and (max-width: 48em) {
  .partner-detail-main .partner-clients-section .client-logo-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
.partner-detail-main .partner-clients-section .client-logo-item {
  position: relative;
  text-align: center;
}
.partner-detail-main .partner-clients-section .client-logo-item .client-name-tooltip {
  position: absolute;
  bottom: calc(100% + 10px);
  left: 50%;
  transform: translateX(-50%);
  background: #D4AF37;
  color: #133E69;
  padding: 0.6em 1.2em;
  border-radius: 0.5em;
  font-size: 1.4em;
  font-weight: 600;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  z-index: 10;
}
.partner-detail-main .partner-clients-section .client-logo-item .client-name-tooltip::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border-width: 6px;
  border-style: solid;
  border-color: #133E69 transparent transparent transparent;
}
.partner-detail-main .partner-clients-section .client-logo-item img {
  max-width: 100%;
  height: 7em;
  object-fit: contain;
  filter: grayscale(100%) contrast(0) brightness(1.2);
  opacity: 0.7;
  transition: all 0.3s ease;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.partner-detail-main .partner-clients-section .client-logo-item:hover img {
  filter: none;
  opacity: 1;
}
.partner-detail-main .partner-clients-section .client-logo-item:hover .client-name-tooltip {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(-5px);
}
.partner-detail-main .partner-policy-section {
  padding: 8em 0;
  background: #fbf9f2;
}
.partner-detail-main .partner-policy-section .partner-policy-container {
  width: min(100em, 90%);
  margin: 0 auto;
}
.partner-detail-main .partner-policy-section .partner-section-header {
  text-align: center;
  margin-bottom: 4em;
}
.partner-detail-main .partner-policy-section .partner-section-header p {
  font-size: 1.8em;
  color: #333;
  max-width: 70em;
  margin: 1em auto 0;
}
.partner-detail-main .partner-policy-section .policy-tabs {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: #dde4eb;
  border: 1px solid #dde4eb;
  border-radius: 0.8em;
  overflow: hidden;
  margin-bottom: 2em;
}
@media only screen and (max-width: 37.5em) {
  .partner-detail-main .partner-policy-section .policy-tabs {
    grid-template-columns: 1fr;
  }
}
.partner-detail-main .partner-policy-section .policy-tab-button {
  padding: 1.5em;
  font-size: 1.6em;
  font-weight: 600;
  color: #133E69;
  background: #fff;
  border: none;
  cursor: pointer;
  transition: background 0.3s ease;
}
.partner-detail-main .partner-policy-section .policy-tab-button:hover {
  background: #f7f9fb;
}
.partner-detail-main .partner-policy-section .policy-tab-button.active {
  background: #226db7;
  color: #fff;
}
.partner-detail-main .partner-policy-section .policy-tab-pane {
  display: none;
  background: #fff;
  padding: 3em;
  border-radius: 0.8em;
}
.partner-detail-main .partner-policy-section .policy-tab-pane.active {
  display: block;
  animation: fadeIn 0.5s;
}
.partner-detail-main .partner-policy-section .policy-tab-pane h3 {
  font-family: "elephantregular", sans-serif;
  font-size: 2em;
  color: #133E69;
  margin-bottom: 0.75em;
}
.partner-detail-main .partner-policy-section .policy-tab-pane p {
  font-size: 1.6em;
  line-height: 1.6;
  color: #555;
}
.partner-detail-main .partner-awards-section {
  padding: 8em 0;
  background: #fff;
}
.partner-detail-main .partner-awards-section .partner-awards-container {
  width: min(120em, 90%);
  margin: 0 auto;
}
.partner-detail-main .partner-awards-section .partner-section-header {
  text-align: center;
  margin-bottom: 4em;
}
.partner-detail-main .partner-awards-section .partner-section-header p {
  font-size: 1.8em;
  color: #333;
  max-width: 70em;
  margin: 1em auto 0;
}
.partner-detail-main .partner-awards-section .partner-awards-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30em, 1fr));
  gap: 3em;
}
.partner-detail-main .partner-awards-section .award-card {
  padding: 3em;
  border-left: 4px solid #D4AF37;
  background: #f7f9fb;
  border-radius: 0 0.8em 0.8em 0;
}
.partner-detail-main .partner-awards-section .award-card h3 {
  font-family: "elephantregular", sans-serif;
  font-size: 2.2em;
  color: #133E69;
  margin-bottom: 0.75em;
}
.partner-detail-main .partner-awards-section .award-card p {
  font-size: 1.6em;
  line-height: 1.6;
  color: #555;
}
.partner-detail-main .partner-technology-list-section {
  padding: 8em 0;
  background: #fff;
}
.partner-detail-main .partner-technology-list-section .partner-technology-list-container {
  width: min(120em, 90%);
  margin: 0 auto;
}
.partner-detail-main .partner-technology-list-section .partner-section-header {
  text-align: center;
  margin-bottom: 5em;
}
.partner-detail-main .partner-technology-list-section .partner-section-header p {
  font-size: 1.8em;
  color: #333;
  max-width: 70em;
  margin: 1em auto 0;
}
.partner-detail-main .partner-technology-list-section .technology-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(35em, 1fr));
  gap: 2em;
}
.partner-detail-main .partner-technology-list-section .technology-item {
  background: #fbf9f2;
  border-left: 4px solid #D4AF37;
  padding: 2em;
  border-radius: 0.5em;
}
.partner-detail-main .partner-technology-list-section .technology-item h3 {
  font-size: 2em;
  font-weight: 600;
  color: #133E69;
}
.partner-detail-main .partner-testing-section {
  padding: 8em 0;
  background: #133E69;
}
.partner-detail-main .partner-testing-section .partner-testing-container {
  width: min(120em, 90%);
  margin: 0 auto;
}
.partner-detail-main .partner-testing-section .partner-section-header {
  text-align: center;
  margin-bottom: 5em;
}
.partner-detail-main .partner-testing-section .partner-section-header .partner-section-title {
  color: #D4AF37;
}
.partner-detail-main .partner-testing-section .partner-section-header p {
  font-size: 1.8em;
  color: rgba(255, 255, 255, 0.8);
  max-width: 70em;
  margin: 1em auto 0;
}
.partner-detail-main .partner-testing-section .testing-checklist {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(35em, 1fr));
  gap: 2em 4em;
}
.partner-detail-main .partner-testing-section .testing-checklist li {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1.5em;
  align-items: center;
  font-size: 1.8em;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.9);
}
.partner-detail-main .partner-testing-section .testing-checklist li svg {
  width: 2em;
  height: 2em;
  fill: #D4AF37;
}
.partner-detail-main .partner-products-section {
  padding: 8em 0;
  background: #f7f9fb;
}
.partner-detail-main .partner-products-section .partner-products-container {
  width: min(120em, 90%);
  margin: 0 auto;
}
.partner-detail-main .partner-products-section .partner-section-header {
  text-align: center;
  margin-bottom: 4em;
}
.partner-detail-main .partner-products-section .product-category-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30em, 1fr));
  gap: 3em;
}
.partner-detail-main .partner-products-section .product-category-card {
  background: #fff;
  border-radius: 1em;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.05);
  overflow: hidden;
}
.partner-detail-main .partner-products-section .product-category-card .product-category-image {
  pointer-events: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.partner-detail-main .partner-products-section .product-category-card .product-category-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.partner-detail-main .partner-products-section .product-category-card h3 {
  font-family: "elephantregular", sans-serif;
  font-size: 2.2em;
  color: #133E69;
  padding: 1em 1.5em 0;
}
.partner-detail-main .partner-products-section .product-category-card p {
  font-size: 1.6em;
  color: #333;
  line-height: 1.6;
  padding: 1em 1.5em 1.5em;
}
.partner-detail-main .partner-network-section {
  padding: 8em 0;
  background: #fff;
}
.partner-detail-main .partner-network-section .partner-network-container {
  width: min(100em, 90%);
  margin: 0 auto;
  text-align: center;
}
.partner-detail-main .partner-network-section .partner-section-header {
  margin-bottom: 4em;
}
.partner-detail-main .partner-network-section .partner-section-header p {
  font-size: 1.6em;
  color: #333;
  line-height: 1.6;
  padding: 1em 1.5em 1.5em;
}
.partner-detail-main .partner-network-section .city-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(20em, 1fr));
  gap: 2em;
}
.partner-detail-main .partner-network-section .city-item {
  background: #f7f9fb;
  border: 1px solid #D4AF37;
  padding: 2.5em;
  border-radius: 0.8em;
}
.partner-detail-main .partner-network-section .city-item span {
  font-size: 2em;
  font-weight: 600;
  color: #133E69;
}
.partner-detail-main .partner-tech-spotlight {
  padding: 10em 0;
  background: #fff;
}
.partner-detail-main .partner-tech-spotlight .partner-tech-spotlight-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6em;
  align-items: center;
}
@media only screen and (max-width: 62em) {
  .partner-detail-main .partner-tech-spotlight .partner-tech-spotlight-container {
    grid-template-columns: 1fr;
  }
}
.partner-detail-main .partner-tech-spotlight .partner-tech-spotlight-image {
  pointer-events: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.partner-detail-main .partner-tech-spotlight .partner-tech-spotlight-image img {
  width: 100%;
  max-width: 50em;
  height: auto;
  object-fit: contain;
}
@media only screen and (max-width: 62em) {
  .partner-detail-main .partner-tech-spotlight .partner-tech-spotlight-image {
    grid-row: 1;
    margin-bottom: 4em;
    text-align: center;
  }
}
.partner-detail-main .partner-tech-spotlight .partner-tech-spotlight-content p {
  font-size: 1.6em;
  color: #333;
  line-height: 1.6;
  margin-bottom: 2em;
}
.partner-detail-main .partner-tech-spotlight .partner-tech-spotlight-content ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 1.5em;
}
.partner-detail-main .partner-tech-spotlight .partner-tech-spotlight-content li {
  font-size: 1.6em;
  padding-left: 2.5em;
  position: relative;
  color: #555;
  line-height: 1.5;
}
.partner-detail-main .partner-tech-spotlight .partner-tech-spotlight-content li strong {
  color: #133E69;
}
.partner-detail-main .partner-tech-spotlight .partner-tech-spotlight-content li::before {
  content: "✓";
  font-weight: bold;
  color: #D4AF37;
  position: absolute;
  left: 0;
  top: 0;
}
.partner-detail-main .partner-description {
  padding: 8em 0;
  background: #fbf9f2;
}
.partner-detail-main .partner-description .partner-description-container {
  width: min(90em, 90%);
  margin: 0 auto;
  text-align: center;
}
.partner-detail-main .partner-description .partner-description-container p {
  font-size: 1.8em;
  line-height: 1.8;
  color: #555;
}
.partner-detail-main .partner-system-flow-section {
  padding: 8em 0;
  background: #fbf9f2;
}
.partner-detail-main .partner-system-flow-section .partner-system-flow-container {
  width: min(120em, 90%);
  margin: 0 auto;
}
.partner-detail-main .partner-system-flow-section .partner-section-header {
  text-align: center;
  margin-bottom: 4em;
}
.partner-detail-main .partner-system-flow-section .system-flow-grid {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  align-items: start;
  gap: 2em;
}
@media only screen and (max-width: 62em) {
  .partner-detail-main .partner-system-flow-section .system-flow-grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    gap: 1em;
  }
}
.partner-detail-main .partner-system-flow-section .flow-item {
  background: #fff;
  border: 1px solid #eef2f7;
  padding: 3em;
  text-align: center;
  border-radius: 1em;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.05);
  height: 100%;
}
.partner-detail-main .partner-system-flow-section .flow-icon {
  width: 6em;
  height: 6em;
  margin: 0 auto 1.5em;
  background: rgba(34, 109, 183, 0.1);
  border-radius: 50%;
  display: grid;
  place-items: center;
}
.partner-detail-main .partner-system-flow-section .flow-icon svg {
  width: 3.5em;
  height: 3.5em;
  fill: #D4AF37;
}
.partner-detail-main .partner-system-flow-section .flow-item h3 {
  font-family: "elephantregular", sans-serif;
  font-size: 2.2em;
  color: #133E69;
  margin-bottom: 0.75em;
}
.partner-detail-main .partner-system-flow-section .flow-item p {
  font-size: 1.6em;
  color: #666;
  line-height: 1.6;
}
.partner-detail-main .partner-system-flow-section .flow-arrow {
  align-self: center;
}
.partner-detail-main .partner-system-flow-section .flow-arrow svg {
  width: 5em;
  height: 5em;
  fill: #226db7;
}
@media only screen and (max-width: 62em) {
  .partner-detail-main .partner-system-flow-section .flow-arrow {
    transform: rotate(90deg);
    margin: 1em auto;
  }
}
.partner-detail-main .partner-global-reach-section {
  padding: 8em 0;
  background: #dde4eb;
}
.partner-detail-main .partner-global-reach-section .partner-global-reach-container {
  width: min(100em, 90%);
  margin: 0 auto;
  text-align: center;
}
.partner-detail-main .partner-global-reach-section .partner-section-header {
  margin-bottom: 4em;
}
.partner-detail-main .partner-global-reach-section .country-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(18em, 1fr));
  gap: 2em;
}
.partner-detail-main .partner-global-reach-section .country-item {
  background: #fff;
  border: 1px solid #D4AF37;
  padding: 2em;
  border-radius: 0.8em;
}
.partner-detail-main .partner-global-reach-section .country-item span {
  font-size: 1.8em;
  font-weight: 600;
  color: #133E69;
}
.partner-detail-main .partner-expertise-section {
  padding: 10em 0;
  background: #fff;
}
.partner-detail-main .partner-expertise-section .partner-expertise-container {
  width: min(140em, 90%);
  margin: 0 auto;
}
.partner-detail-main .partner-expertise-section .partner-section-header {
  text-align: center;
  margin-bottom: 5em;
}
.partner-detail-main .partner-expertise-section .expertise-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(35em, 1fr));
  gap: 3em;
}
.partner-detail-main .partner-expertise-section .expertise-item {
  background: #fbf9f2;
  border-radius: 1em;
  padding: 3em;
  border-top: 4px solid #D4AF37;
}
.partner-detail-main .partner-expertise-section .expertise-item h4 {
  font-family: "elephantregular", sans-serif;
  font-size: 2.2em;
  color: #133E69;
  margin-bottom: 1em;
}
.partner-detail-main .partner-expertise-section .expertise-item ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 1.2em;
}
.partner-detail-main .partner-expertise-section .expertise-item li {
  font-size: 1.6em;
  font-weight: 500;
  color: #555;
}
.partner-detail-main .partner-solutions-section {
  padding: 10em 0;
  background: #fbf9f2;
}
.partner-detail-main .partner-solutions-section .partner-solutions-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4em;
}
@media only screen and (max-width: 62em) {
  .partner-detail-main .partner-solutions-section .partner-solutions-container {
    grid-template-columns: 1fr;
  }
}
.partner-detail-main .partner-solutions-section .solution-card {
  background: #fff;
  border-radius: 1em;
  overflow: hidden;
  box-shadow: 0 1em 3em rgba(0, 0, 0, 0.07);
}
.partner-detail-main .partner-solutions-section .solution-image {
  height: 35em;
  pointer-events: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.partner-detail-main .partner-solutions-section .solution-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 87%;
}
.partner-detail-main .partner-solutions-section .solution-content {
  padding: 3em;
}
.partner-detail-main .partner-solutions-section .solution-content h3 {
  font-family: "Elephant", sans-serif;
  font-size: 2.4em;
  color: #133E69;
  margin-bottom: 0.75em;
}
.partner-detail-main .partner-solutions-section .solution-content p {
  font-size: 1.6em;
  color: #666;
  line-height: 1.6;
}
.partner-detail-main .partner-detail-cta {
  background: #fff;
}
.partner-detail-main .partner-detail-cta .partner-detail-cta-container {
  width: 100%;
  margin: 0 auto;
  text-align: center;
  padding: 6em 4em;
  background: #fbf9f2;
  border-radius: 1em;
}
.partner-detail-main .partner-detail-cta .partner-detail-cta-title {
  font-family: "elephantregular", sans-serif;
  font-size: 4em;
  color: #D4AF37;
}
.partner-detail-main .partner-detail-cta .partner-detail-cta-text {
  font-size: 1.8em;
  color: #333;
  max-width: 70em;
  line-height: 1.6;
  margin: 1em auto 2em;
}
.partner-detail-main .partner-detail-cta .partner-detail-cta-button {
  display: inline-block;
  padding: 1.5em 4em;
  background: #D4AF37;
  color: #133E69;
  font-size: 1.6em;
  font-weight: bold;
  border-radius: 5em;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 0.5em 1.5em rgba(212, 175, 55, 0.3);
}
.partner-detail-main .partner-detail-cta .partner-detail-cta-button:hover {
  background: #133E69;
  color: #fff;
  transform: translateY(-0.3em);
  box-shadow: 0 0.8em 2em rgba(19, 62, 105, 0.3);
}
.partner-detail-main .partners-section-subtitle {
  font-size: 2em;
  color: #226db7;
  display: block;
}

#fermak-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/FERMAK-hero.jpg") 50% 25%/cover no-repeat;
}

#supezet-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/SupeZET-hero.png") center/cover no-repeat;
}

#daon-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/Daon-hero.jpeg") center/cover no-repeat;
}

#ajb-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/AJB-hero.png") 50% 70%/cover no-repeat;
}

#tharwat-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/Electro-Tharwat-hero.jpg") 50% 15%/cover no-repeat;
}

#almnsoura-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/AlMnsoura-hero.jpg") 50% 86%/cover no-repeat;
}

#shinsung-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/Shinsung-hero.jpg") center/cover no-repeat;
}

#hyg-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/HYG-BASF-NGK-hero.png") 50% 74%/cover no-repeat;
}

#gaias-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/GAIAS-hero.png") 50% 100%/cover no-repeat;
}

#martini-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/Studio-Martini-hero.jpg") 50% 20%/cover no-repeat;
}

#uig-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/UIG-hero.png") 50% 30%/cover no-repeat;
}

#eurolib-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/EURO-LIB-hero.jpg") 50% 0%/cover no-repeat;
}

#vetec-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/VETEC-hero.png") 50% 30%/cover no-repeat;
}

#blowerdoor-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/BlowerDoor-hero.jpg") 50% 50%/cover no-repeat;
}
@media only screen and (max-width: 48em) {
  #blowerdoor-hero::before {
    background-position: 80% 50%;
  }
}

#risk-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/R.I.S.K.-hero.jpg") 50% 50%/cover no-repeat;
}

#calanshio-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/Calanshio-hero.png") 50% 30%/cover no-repeat;
}

#alucor-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_partners/heros/Alucor-hero.png") 50% 80%/cover no-repeat;
}

.vm-page-main .vm-section-subtitle {
  font-size: 2em;
  color: #226db7;
  font-weight: 600;
}
.vm-page-main .vm-section-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  color: #D4AF37;
  line-height: 1.2;
  margin-bottom: 0.5em;
}
.vm-page-main .vm-container {
  width: min(140em, 90%);
  margin: 0 auto;
}
.vm-page-main .vm-text {
  font-size: 1.8em;
  color: #666;
  line-height: 1.8;
}

.vm-hero {
  height: 45em;
  position: relative;
  display: grid;
  align-content: center;
  text-align: center;
  color: #fff;
  padding: 2em;
}
.vm-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_images/V&M-hero.jpg") 50% 50%/cover no-repeat;
  z-index: -1;
}
.vm-hero .vm-hero-content {
  width: min(120em, 90%);
  margin: 0 auto;
}
.vm-hero .vm-hero-content .vm-section-subtitle {
  font-size: 2em;
  color: #D4AF37;
  font-weight: 600;
}
.vm-hero .vm-hero-title {
  color: #fff;
  font-size: 6em;
}
.vm-hero .vm-hero-text {
  font-size: 2em;
  max-width: 70em;
  margin: 0 auto;
  opacity: 0.9;
}

.vm-vision {
  padding: 10em 0;
  background: #fff;
}
.vm-vision .vm-container {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 6em;
  align-items: center;
}
@media only screen and (max-width: 62em) {
  .vm-vision .vm-container {
    grid-template-columns: 1fr;
  }
}
.vm-vision .vm-vision-image {
  height: 50em;
  border-radius: 1em;
  overflow: hidden;
}
.vm-vision .vm-vision-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (max-width: 62em) {
  .vm-vision .vm-vision-image {
    grid-row: 1;
    height: 40em;
  }
}

.vm-mission {
  padding: 10em 0;
  background: #fbf9f2;
  border-top: 1px solid #eef2f7;
  border-bottom: 1px solid #eef2f7;
}
.vm-mission .vm-container {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 6em;
  align-items: center;
}
@media only screen and (max-width: 62em) {
  .vm-mission .vm-container {
    grid-template-columns: 1fr;
  }
}
.vm-mission .vm-mission-image {
  height: 50em;
  border-radius: 1em;
  overflow: hidden;
}
.vm-mission .vm-mission-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (max-width: 62em) {
  .vm-mission .vm-mission-image {
    height: 40em;
  }
}
.vm-mission .vm-mission-content ul {
  list-style: none;
  padding: 0;
  margin-top: 2em;
  display: grid;
  gap: 1.5em;
}
.vm-mission .vm-mission-content ul li {
  font-size: 1.6em;
  color: #133E69;
  font-weight: 600;
  position: relative;
  padding-left: 2.5em;
}
.vm-mission .vm-mission-content ul li::before {
  content: "✓";
  color: #D4AF37;
  position: absolute;
  left: 0;
}

.vm-values {
  padding: 10em 0;
  background: #fff;
}
.vm-values .vm-section-header {
  text-align: center;
  margin-bottom: 5em;
}
.vm-values .vm-values-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(35em, 1fr));
  gap: 3em;
}
.vm-values .value-card {
  padding: 3em;
  background: #fbf9f2;
  border: 1px solid #eef2f7;
  text-align: center;
  border-radius: 1em;
}
.vm-values .value-card h4 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.4em;
  color: #133E69;
}

.vm-commitment {
  padding: 8em 0;
  margin-bottom: 15em;
  background: linear-gradient(125deg, #226db7, #D4AF37);
  color: #fff;
}
.vm-commitment .vm-commitment-content {
  text-align: center;
  width: min(100em, 90%);
  margin: 0 auto;
}
.vm-commitment .vm-commitment-content .vm-section-title {
  color: #fff;
}
.vm-commitment .vm-commitment-content p {
  font-size: 2em;
  line-height: 1.8;
  opacity: 0.9;
}

.contact-main {
  width: 100%;
}
.contact-main .contact-section-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  color: #D4AF37;
  line-height: 1.2;
  margin-bottom: 0.25em;
}
.contact-main .contact-section-subtitle {
  font-size: 1.8em;
  color: #555;
  max-width: 60em;
  line-height: 1.6;
}
.contact-main .contact-section-subtitle strong {
  font-size: 1.2em;
}

.contact-hero {
  height: 50em;
  position: relative;
  display: grid;
  align-items: center;
  text-align: center;
  color: #fff;
}
.contact-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(34, 109, 183, 0.7)), url("/_resources/_img/_images/Contact-Us-hero.jpg") 80% 10%/cover no-repeat;
  z-index: -1;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.contact-hero .contact-hero-content {
  width: min(120em, 90%);
  margin: 0 auto;
}
.contact-hero .contact-hero-subtitle {
  font-size: 2em;
  color: #D4AF37;
  margin-bottom: 1em;
  display: block;
}
.contact-hero .contact-hero-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  margin-bottom: 0.5em;
}
.contact-hero .contact-hero-text {
  font-size: 2em;
  max-width: 70em;
  margin: 0 auto;
  opacity: 0.9;
  line-height: 1.5;
}

.contact-details_section {
  padding: 10em 0;
  background: #fff;
}
.contact-details_section .contact-details_container {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6em;
}
@media only screen and (max-width: 62em) {
  .contact-details_section .contact-details_container {
    grid-template-columns: 1fr;
  }
}

.contact-info {
  display: grid;
  align-content: start;
  gap: 3em;
}

.office-location-card,
.direct-inquiry-card {
  background: #f8fafc;
  border: 1px solid #eef2f7;
  border-radius: 0.8em;
  padding: 2.5em;
}
.office-location-card h3,
.direct-inquiry-card h3 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.5em;
  color: #133E69;
  margin-bottom: 0.75em;
}
.office-location-card p,
.office-location-card li,
.direct-inquiry-card p,
.direct-inquiry-card li {
  font-size: 1.6em;
  color: #555;
  line-height: 1.6;
}
.office-location-card ul,
.direct-inquiry-card ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 1em;
}
.office-location-card a,
.direct-inquiry-card a {
  color: #D4AF37;
  font-weight: 600;
  text-decoration: none;
}
.office-location-card a:hover,
.direct-inquiry-card a:hover {
  text-decoration: underline;
  color: #133E69;
}

.office-location-header {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 2em;
  align-items: center;
}
.office-location-header svg {
  width: 4em;
  height: 4em;
  fill: #D4AF37;
}

.contact-map {
  min-height: 40em;
  border-radius: 1em;
  overflow: hidden;
  box-shadow: 0 1em 3em rgba(0, 0, 0, 0.1);
}
.contact-map iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

.contact-form_section {
  padding: 8em 0;
  background: #f8fafc;
}
.contact-form_section .contact-form_container {
  width: min(100em, 90%);
  margin: 0 auto;
}
.contact-form_section .contact-form-header {
  text-align: center;
  margin-bottom: 4em;
}

.contact-form {
  background: #fff;
  padding: 4em;
  border-radius: 1em;
  box-shadow: 0 1em 3em rgba(0, 0, 0, 0.05);
}
.contact-form .form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2em;
  margin-bottom: 2em;
}
.contact-form .form-grid .full-width {
  grid-column: 1/-1;
}
@media only screen and (max-width: 37.5em) {
  .contact-form .form-grid {
    grid-template-columns: 1fr;
  }
}
.contact-form .form-group {
  display: grid;
  gap: 0.8em;
}
.contact-form .form-group:focus-within label {
  color: #D4AF37;
  transform: translateY(-2px);
  transition: all 0.3s ease;
}
.contact-form label {
  font-size: 1.4em;
  font-weight: 600;
  color: #133E69;
  transition: all 0.3s ease;
}
.contact-form input,
.contact-form textarea {
  width: 100%;
  padding: 1.2em;
  font-size: 1.6em;
  border: 1px solid #ddd;
  border-radius: 0.5em;
  transition: all 0.3s ease;
  color: #133E69;
}
.contact-form input:focus,
.contact-form textarea:focus {
  border-color: #D4AF37;
  box-shadow: 0 0 0 2px rgba(212, 175, 55, 0.2);
  outline: none;
  transform: scale(1.02);
}
.contact-form textarea {
  resize: vertical;
}
.contact-form .form-submit-button {
  padding: 1.2em 3em;
  font-size: 1.6em;
  font-weight: bold;
  background: #D4AF37;
  color: #133E69;
  border: none;
  border-radius: 5em;
  cursor: pointer;
  transition: all 0.3s ease;
  justify-self: start;
}
.contact-form .form-submit-button:hover {
  background: #133E69;
  transform: translateY(-0.2em);
  color: #fff;
}

.contact-faq_section {
  padding: 10em 0;
  background: #fff;
}
.contact-faq_section .contact-faq_container {
  width: min(100em, 90%);
  margin: 0 auto;
}
.contact-faq_section .contact-faq-header {
  text-align: center;
  margin-bottom: 4em;
}
.contact-faq_section .faq-accordion {
  display: grid;
  gap: 1em;
  border-top: 1px solid #eee;
}
.contact-faq_section .faq-item {
  border-bottom: 1px solid #eee;
}
.contact-faq_section .faq-question {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 2em;
  text-align: left;
  padding: 2em 0;
  font-size: 2em;
  font-weight: 600;
  color: #133E69;
  background: none;
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
}
.contact-faq_section .faq-question .faq-icon {
  transition: all 0.3s ease;
  font-size: 1.5em;
  align-self: end;
}
.contact-faq_section .faq-question.active {
  color: #D4AF37;
}
.contact-faq_section .faq-question.active .faq-icon {
  transform: rotate(45deg);
  color: #D4AF37;
}
.contact-faq_section .faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease-out, padding 0.4s ease-out;
}
.contact-faq_section .faq-answer p {
  font-size: 1.6em;
  color: #555;
  line-height: 1.8;
  padding-bottom: 2em;
}

.news-main {
  width: 100%;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: repeat(4, max-content);
}
.news-main-hero {
  height: 50em;
  position: relative;
  overflow: hidden;
}
.news-main-hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), url("/_resources/_img/_backgrounds/news-hero.jpg") center/cover no-repeat fixed;
  z-index: -1;
}
.news-main-hero .news-hero-content {
  width: min(140em, 90%);
  margin: 0 auto;
  height: 100%;
  display: grid;
  align-content: center;
  color: #fff;
  padding: 2em;
}
.news-main-hero .news-hero-content .news-hero-subtitle {
  font-size: 2em;
  color: #226db7;
  margin-bottom: 1em;
  opacity: 0;
  transform: translateY(2em);
  animation: fadeInUp 0.6s ease forwards;
}
.news-main-hero .news-hero-content .news-hero-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  margin-bottom: 0.5em;
  opacity: 0;
  transform: translateY(2em);
  animation: fadeInUp 0.6s 0.2s ease forwards;
}
.news-main-hero .news-hero-content .news-hero-text {
  font-size: 1.8em;
  max-width: 80em;
  opacity: 0;
  transform: translateY(2em);
  animation: fadeInUp 0.6s 0.4s ease forwards;
}
.news-main-featured {
  padding: 8em 0;
  background: #fff;
}
.news-main-featured .news-featured-container {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  gap: 6em;
}
.news-main-featured .news-section-header {
  display: grid;
  gap: 1em;
  text-align: center;
}
.news-main-featured .news-section-header .news-section-subtitle {
  font-size: 2em;
  color: #226db7;
}
.news-main-featured .news-section-header .news-section-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  color: #133E69;
  line-height: 1.2;
}
.news-main-featured .news-featured-article {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4em;
  background: #f8fafc;
  border-radius: 1em;
  overflow: hidden;
  box-shadow: 0 1em 3em rgba(0, 0, 0, 0.1);
}
@media only screen and (max-width: 62em) {
  .news-main-featured .news-featured-article {
    grid-template-columns: 1fr;
  }
}
.news-main-featured .news-featured-image {
  position: relative;
  height: 40em;
}
@media only screen and (max-width: 62em) {
  .news-main-featured .news-featured-image {
    height: 30em;
  }
}
.news-main-featured .news-featured-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.news-main-featured .news-featured-image .news-featured-date {
  position: absolute;
  top: 2em;
  left: 2em;
  background: #226db7;
  color: #fff;
  padding: 1.5em;
  border-radius: 0.5em;
  display: grid;
  justify-items: center;
  line-height: 1;
}
.news-main-featured .news-featured-image .news-featured-date .news-date-day {
  font-size: 2.5em;
  font-weight: bold;
}
.news-main-featured .news-featured-image .news-featured-date .news-date-month {
  font-size: 1.6em;
  text-transform: uppercase;
}
.news-main-featured .news-featured-content {
  padding: 4em 4em 4em 0;
  display: grid;
  align-content: start;
  gap: 1.5em;
}
@media only screen and (max-width: 62em) {
  .news-main-featured .news-featured-content {
    padding: 4em;
  }
}
.news-main-featured .news-featured-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 3em;
  color: #133E69;
  line-height: 1.3;
}
.news-main-featured .news-featured-meta {
  display: flex;
  gap: 2em;
  align-items: center;
}
.news-main-featured .news-featured-meta .news-meta-category {
  font-size: 1.4em;
  color: #fff;
  background: #133E69;
  padding: 0.5em 1.5em;
  border-radius: 5em;
}
.news-main-featured .news-featured-meta .news-meta-readtime {
  font-size: 1.4em;
  color: #666;
}
.news-main-featured .news-featured-excerpt {
  font-size: 1.6em;
  color: #666;
  line-height: 1.8;
}
.news-main-featured .news-featured-link {
  display: inline-block;
  margin-top: 1em;
  font-size: 1.6em;
  color: #226db7;
  text-decoration: none;
  font-weight: bold;
  transition: all 0.3s ease;
}
.news-main-featured .news-featured-link:hover {
  color: #133E69;
  text-decoration: underline;
}
.news-main-grid {
  padding: 8em 0;
  background: #f8fafc;
}
.news-main-grid .news-grid-container {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  gap: 6em;
}
.news-main-grid .news-section-header {
  display: grid;
  gap: 1em;
  text-align: center;
}
.news-main-grid .news-section-header .news-section-subtitle {
  font-size: 2em;
  color: #226db7;
}
.news-main-grid .news-section-header .news-section-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  color: #133E69;
  line-height: 1.2;
}
.news-main-grid .news-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(40em, 1fr));
  gap: 4em;
}
@media only screen and (max-width: 30em) {
  .news-main-grid .news-grid {
    grid-template-columns: 1fr;
  }
}
.news-main-grid .news-article-card {
  background: #fff;
  border-radius: 1em;
  overflow: hidden;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
}
.news-main-grid .news-article-card:hover {
  transform: translateY(-0.5em);
  box-shadow: 0 1em 2em rgba(0, 0, 0, 0.2);
}
.news-main-grid .news-article-image {
  position: relative;
  height: 25em;
}
.news-main-grid .news-article-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.news-main-grid .news-article-image .news-article-date {
  position: absolute;
  top: 2em;
  left: 2em;
  background: #226db7;
  color: #fff;
  padding: 1em;
  border-radius: 0.5em;
  display: grid;
  justify-items: center;
  line-height: 1;
}
.news-main-grid .news-article-image .news-article-date span:first-child {
  font-size: 2em;
  font-weight: bold;
}
.news-main-grid .news-article-image .news-article-date span:last-child {
  font-size: 1.4em;
  text-transform: uppercase;
}
.news-main-grid .news-article-content {
  padding: 3em;
  display: grid;
  gap: 1.5em;
}
.news-main-grid .news-article-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.2em;
  color: #133E69;
  line-height: 1.3;
}
.news-main-grid .news-article-meta {
  display: flex;
  gap: 2em;
  align-items: center;
}
.news-main-grid .news-article-meta .news-meta-category {
  font-size: 1.2em;
  color: #fff;
  background: #133E69;
  padding: 0.3em 1.2em;
  border-radius: 5em;
}
.news-main-grid .news-article-meta .news-meta-readtime {
  font-size: 1.2em;
  color: #666;
}
.news-main-grid .news-article-excerpt {
  font-size: 1.5em;
  color: #666;
  line-height: 1.6;
}
.news-main-grid .news-article-link {
  display: inline-block;
  margin-top: 1em;
  font-size: 1.4em;
  color: #226db7;
  text-decoration: none;
  font-weight: bold;
  transition: all 0.3s ease;
}
.news-main-grid .news-article-link:hover {
  color: #133E69;
  text-decoration: underline;
}
.news-main-grid .news-grid-pagination {
  display: flex;
  justify-content: center;
  gap: 1em;
  margin-top: 6em;
}
.news-main-grid .news-pagination-button {
  display: inline-block;
  width: 4em;
  height: 4em;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 1.4em;
  color: #133E69;
  text-decoration: none;
  transition: all 0.3s ease;
  border: 0.1em solid #ddd;
}
.news-main-grid .news-pagination-button.active {
  background: #226db7;
  color: #fff;
  border-color: #226db7;
}
.news-main-grid .news-pagination-button:hover:not(.active) {
  border-color: #226db7;
  color: #226db7;
}
.news-main-grid .news-pagination-button.next {
  width: auto;
  padding: 0 2em;
  border-radius: 5em;
}
.news-main-newsletter {
  padding: 8em 0;
  background: #fff;
}
.news-main-newsletter .news-newsletter-container {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 6em;
  align-items: center;
}
@media only screen and (max-width: 62em) {
  .news-main-newsletter .news-newsletter-container {
    grid-template-columns: 1fr;
    gap: 4em;
  }
}
.news-main-newsletter .news-newsletter-content {
  display: grid;
  gap: 1.5em;
}
.news-main-newsletter .news-newsletter-content .news-newsletter-subtitle {
  font-size: 2em;
  color: #226db7;
}
.news-main-newsletter .news-newsletter-content .news-newsletter-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  color: #133E69;
  line-height: 1.2;
}
.news-main-newsletter .news-newsletter-content .news-newsletter-text {
  font-size: 1.6em;
  color: #666;
  line-height: 1.8;
}
.news-main-newsletter .news-newsletter-form {
  margin-top: 3em;
  display: grid;
  gap: 2em;
}
.news-main-newsletter .news-form-group {
  display: flex;
  border: 0.1em solid #ddd;
  border-radius: 5em;
  overflow: hidden;
  transition: all 0.3s ease;
}
.news-main-newsletter .news-form-group:focus-within {
  border-color: #226db7;
  box-shadow: 0 0 0 0.2em rgba(34, 109, 183, 0.2);
}
.news-main-newsletter .news-form-input {
  flex: 1;
  padding: 1.5em 2em;
  font-size: 1.4em;
  border: none;
  outline: none;
}
.news-main-newsletter .news-form-input::placeholder {
  color: #999;
}
.news-main-newsletter .news-form-button {
  padding: 1.5em 3em;
  background: #226db7;
  color: #fff;
  font-size: 1.4em;
  font-weight: bold;
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
}
.news-main-newsletter .news-form-button:hover {
  background: rgb(26.0092165899, 83.3824884793, 139.9907834101);
}
.news-main-newsletter .news-form-agreement {
  display: flex;
  gap: 1em;
  align-items: flex-start;
}
.news-main-newsletter .news-form-checkbox {
  margin-top: 0.3em;
}
.news-main-newsletter .news-form-label {
  font-size: 1.2em;
  color: #666;
  line-height: 1.6;
}
.news-main-newsletter .news-newsletter-image {
  position: relative;
  height: 40em;
  border-radius: 1em;
  overflow: hidden;
  box-shadow: 0 1em 3em rgba(0, 0, 0, 0.1);
}
@media only screen and (max-width: 62em) {
  .news-main-newsletter .news-newsletter-image {
    height: 30em;
  }
}
.news-main-newsletter .news-newsletter-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(2em);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.news_article-main {
  background: #fff;
  padding-bottom: 8em;
}

.article-header {
  background: #f8fafc;
  padding: 6em 0;
  text-align: center;
  border-bottom: 1px solid #eef2f7;
}
.article-header .article-header-content {
  width: min(90em, 90%);
  margin: 0 auto;
  display: grid;
  justify-items: center;
  gap: 1.5em;
}
.article-header .article-category {
  font-size: 1.6em;
  font-weight: 600;
  color: #fff;
  background: #226db7;
  padding: 0.5em 1.5em;
  border-radius: 5em;
}
.article-header .article-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  color: #133E69;
  line-height: 1.2;
}
.article-header .article-meta {
  font-size: 1.4em;
  color: #777;
}
.article-header .article-meta .meta-author {
  font-weight: bold;
  color: #133E69;
}
.article-header .article-meta .meta-date::after {
  content: "•";
  margin: 0 1em;
}

.article-featured-image {
  height: 50em;
  margin: 0;
  background: #eef2f7;
}
@media only screen and (max-width: 48em) {
  .article-featured-image {
    height: 35em;
  }
}
.article-featured-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.article-body-container {
  width: min(120em, 90%);
  margin: 6em auto 0;
  display: grid;
  grid-template-columns: 1fr 35em;
  gap: 6em;
}
@media only screen and (max-width: 62em) {
  .article-body-container {
    grid-template-columns: 1fr;
    gap: 4em;
  }
}

.article-content h2 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.8em;
  color: #133E69;
  line-height: 1.3;
  margin: 1.5em 0 1em;
}
.article-content p {
  font-size: 1.8em;
  color: #555;
  line-height: 1.8;
  margin-bottom: 1.5em;
}
.article-content .article-lead {
  font-size: 2em;
  font-weight: 600;
  color: #133E69;
  line-height: 1.6;
}
.article-content blockquote {
  font-size: 2em;
  font-style: italic;
  color: #133E69;
  border-left: 4px solid #226db7;
  padding-left: 2em;
  margin: 2em 0;
}

.article-sidebar {
  position: sticky;
  top: 10em;
  display: grid;
  gap: 3em;
  align-content: start;
}

.sidebar-widget {
  background: #f8fafc;
  border-radius: 0.8em;
  padding: 3em;
  border: 1px solid #eef2f7;
}
.sidebar-widget h3 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2em;
  color: #133E69;
  margin-bottom: 1.5em;
  padding-bottom: 0.5em;
  border-bottom: 1px solid #ddd;
}
.sidebar-widget ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 1em;
}
.sidebar-widget ul li {
  font-size: 1.5em;
  color: #555;
  padding-left: 2em;
  position: relative;
}
.sidebar-widget ul li::before {
  content: "→";
  color: #226db7;
  position: absolute;
  left: 0;
}
.sidebar-widget .partner-logo {
  height: 8em;
  background: #fff;
  border-radius: 0.5em;
  padding: 1em;
  display: grid;
  place-items: center;
  margin-bottom: 1.5em;
}
.sidebar-widget .partner-logo img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.sidebar-widget p {
  font-size: 1.5em;
  color: #666;
  line-height: 1.6;
}

.article-footer {
  grid-column: 1/-1;
  place-items: center center;
  margin-top: 4em;
  padding-top: 4em;
  border-top: 1px solid #eef2f7;
}
.article-footer .article-share {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 2em;
}
.article-footer .article-share span {
  font-size: 1.6em;
  font-weight: 600;
  color: #133E69;
}
.article-footer .share-buttons {
  display: grid;
  grid-auto-flow: column;
  gap: 1em;
  justify-content: start;
}
.article-footer .share-buttons a {
  display: grid;
  place-items: center;
  width: 4em;
  height: 4em;
  background: rgba(34, 109, 183, 0.1);
  border-radius: 50%;
  transition: all 0.3s ease;
}
.article-footer .share-buttons a svg {
  width: 2em;
  height: 2em;
  fill: #226db7;
  transition: all 0.3s ease;
}
.article-footer .share-buttons a:hover {
  background: #226db7;
  transform: translateY(-0.2em);
  box-shadow: 0 0.5em 1em rgba(34, 109, 183, 0.3);
}
.article-footer .share-buttons a:hover svg {
  fill: #fff;
}

.related-articles {
  padding-top: 8em;
}
.related-articles .related-articles-container {
  width: min(120em, 90%);
  margin: 0 auto;
}
.related-articles .related-articles-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 3em;
  color: #133E69;
  margin-bottom: 1.5em;
  padding-bottom: 0.5em;
  border-bottom: 1px solid #ddd;
}
.related-articles .related-articles-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30em, 1fr));
  gap: 3em;
}
.related-articles .related-article-card {
  background: #fff;
  border-radius: 0.8em;
  overflow: hidden;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
}
.related-articles .related-article-card:hover {
  transform: translateY(-0.5em);
  box-shadow: 0 1em 2em rgba(0, 0, 0, 0.1);
}
.related-articles .related-article-card a {
  text-decoration: none;
}
.related-articles .related-article-card img {
  height: 20em;
  width: 100%;
  object-fit: cover;
}
.related-articles .related-article-card .related-article-content {
  padding: 2em;
}
.related-articles .related-article-card .related-article-content span {
  font-size: 1.2em;
  color: #226db7;
  font-weight: 600;
  display: block;
  margin-bottom: 0.5em;
}
.related-articles .related-article-card .related-article-content h3 {
  font-size: 1.8em;
  color: #133E69;
  line-height: 1.4;
}

#ess-partnership-hero::before {
  background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), url("/_resources/_img/_news/nas-battery-site.jpg") center/cover no-repeat;
}

.legal-page-main {
  width: 100%;
  background: #fff;
}

.legal-hero {
  height: 35em;
  position: relative;
  display: grid;
  align-items: center;
  text-align: center;
  color: #fff;
  background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url("/_resources/_img/_backgrounds/legal-hero.jpg") center/cover no-repeat;
}
.legal-hero .legal-hero-content {
  width: min(120em, 90%);
  margin: 0 auto;
}
.legal-hero .legal-hero-subtitle {
  font-size: 2em;
  color: #226db7;
  margin-bottom: 1em;
  display: block;
}
.legal-hero .legal-hero-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  margin-bottom: 0.5em;
}
.legal-hero .legal-hero-text {
  font-size: 1.6em;
  opacity: 0.8;
}

.legal-content-section {
  padding: 8em 0;
}

.legal-content-container {
  width: min(90em, 90%);
  margin: 0 auto;
  font-size: 1.6em;
  line-height: 1.8;
  color: #555;
}
.legal-content-container .legal-intro {
  font-size: 1.2em;
  font-weight: 600;
  color: #133E69;
  margin-bottom: 3em;
  line-height: 1.6;
}
.legal-content-container .legal-section-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.8em;
  color: #133E69;
  margin: 2em 0 1em;
  padding-bottom: 0.5em;
  border-bottom: 2px solid #f0f0f0;
}
.legal-content-container p {
  margin-bottom: 1.5em;
}
.legal-content-container ul {
  margin: 1.5em 0;
  padding-left: 2em;
  display: grid;
  gap: 1em;
}
.legal-content-container ul li {
  padding-left: 1.5em;
  position: relative;
}
.legal-content-container ul li::before {
  content: "•";
  color: #226db7;
  font-weight: bold;
  position: absolute;
  left: 0;
}
.legal-content-container a {
  color: #226db7;
  font-weight: 600;
  text-decoration: none;
}
.legal-content-container a:hover {
  text-decoration: underline;
}

.privacy-main {
  width: 100%;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: repeat(3, max-content);
}
.privacy-main-hero {
  height: 40em;
  position: relative;
  overflow: hidden;
}
.privacy-main-hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), url("/_resources/_img/_backgrounds/privacy-hero.jpg") center/cover no-repeat fixed;
  z-index: -1;
}
.privacy-main-hero .privacy-hero-content {
  width: min(140em, 90%);
  margin: 0 auto;
  height: 100%;
  display: grid;
  align-content: center;
  color: #fff;
  padding: 2em;
  text-align: center;
}
.privacy-main-hero .privacy-hero-content .privacy-hero-subtitle {
  font-size: 2em;
  color: #226db7;
  margin-bottom: 1em;
  opacity: 0;
  transform: translateY(2em);
  animation: fadeInUp 0.6s ease forwards;
}
.privacy-main-hero .privacy-hero-content .privacy-hero-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  margin-bottom: 0.5em;
  opacity: 0;
  transform: translateY(2em);
  animation: fadeInUp 0.6s 0.2s ease forwards;
}
.privacy-main-hero .privacy-hero-content .privacy-hero-text {
  font-size: 1.8em;
  max-width: 80em;
  margin: 0 auto;
  opacity: 0;
  transform: translateY(2em);
  animation: fadeInUp 0.6s 0.4s ease forwards;
}
.privacy-main-content {
  padding: 8em 0;
  background: #fff;
}
.privacy-main-content .privacy-content-container {
  width: min(120em, 90%);
  margin: 0 auto;
  display: grid;
  gap: 6em;
}
.privacy-main-content .privacy-content-header {
  text-align: center;
  display: grid;
  gap: 1em;
}
.privacy-main-content .privacy-content-header .privacy-content-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  color: #133E69;
  line-height: 1.2;
}
.privacy-main-content .privacy-content-header .privacy-content-updated {
  font-size: 1.6em;
  color: #666;
}
.privacy-main-content .privacy-content-sections {
  display: grid;
  gap: 6em;
}
.privacy-main-content .privacy-section {
  display: grid;
  gap: 2em;
}
.privacy-main-content .privacy-section-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.5em;
  color: #133E69;
  line-height: 1.3;
  border-bottom: 0.1em solid #eee;
  padding-bottom: 0.5em;
}
.privacy-main-content .privacy-subsection-title {
  font-size: 1.8em;
  color: #133E69;
  margin: 1.5em 0 0.5em;
  font-weight: bold;
}
.privacy-main-content .privacy-section-content {
  display: grid;
  gap: 1.5em;
}
.privacy-main-content .privacy-section-content p {
  font-size: 1.6em;
  color: #666;
  line-height: 1.8;
}
.privacy-main-content .privacy-section-list {
  list-style: none;
  padding: 0;
  margin: 1.5em 0;
  display: grid;
  gap: 1em;
}
.privacy-main-content .privacy-section-list li {
  font-size: 1.6em;
  color: #666;
  line-height: 1.6;
  position: relative;
  padding-left: 2.5em;
}
.privacy-main-content .privacy-section-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.8em;
  width: 1em;
  height: 0.2em;
  background: #226db7;
}
.privacy-main-content .privacy-section-list li strong {
  color: #133E69;
}
.privacy-main-content .privacy-contact-info {
  font-size: 1.6em;
  color: #666;
  line-height: 1.8;
  font-style: normal;
  margin-top: 1em;
}
.privacy-main-content .privacy-contact-info a {
  color: #226db7;
  text-decoration: none;
  transition: all 0.3s ease;
}
.privacy-main-content .privacy-contact-info a:hover {
  color: #133E69;
  text-decoration: underline;
}
.privacy-main-cta {
  padding: 8em 0;
  background: linear-gradient(135deg, #133E69 0%, rgb(7.2782258065, 23.75, 40.2217741935) 100%);
  color: #fff;
}
.privacy-main-cta .privacy-cta-container {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  justify-items: center;
}
.privacy-main-cta .privacy-cta-content {
  max-width: 80em;
  display: grid;
  gap: 2em;
  justify-items: center;
  text-align: center;
}
.privacy-main-cta .privacy-cta-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  line-height: 1.2;
}
.privacy-main-cta .privacy-cta-text {
  font-size: 1.8em;
  opacity: 0.9;
}
.privacy-main-cta .privacy-cta-button {
  display: inline-block;
  padding: 1.5em 4em;
  background: #226db7;
  color: #fff;
  font-size: 1.6em;
  border-radius: 5em;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.2);
}
.privacy-main-cta .privacy-cta-button:hover {
  background: #fff;
  color: #133E69;
  transform: translateY(-0.3em);
  box-shadow: 0 0.8em 2em rgba(0, 0, 0, 0.3);
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(2em);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.insights_hub-main {
  width: 100%;
}
.insights_hub-main .insights_hub-section-subtitle {
  font-size: 2em;
  color: #226db7;
  display: block;
}
.insights_hub-main .insights_hub-section-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  color: #133E69;
  line-height: 1.2;
}

.insights_hub-hero {
  height: 45em;
  position: relative;
  display: grid;
  align-items: center;
  text-align: center;
  color: #fff;
}
.insights_hub-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url("/_resources/_img/_backgrounds/insights-hero.jpg") center/cover no-repeat;
  z-index: -1;
}
.insights_hub-hero .insights_hub-hero-content {
  width: min(120em, 90%);
  margin: 0 auto;
}
.insights_hub-hero .insights_hub-hero-subtitle {
  font-size: 2em;
  color: #226db7;
  margin-bottom: 1em;
  display: block;
}
.insights_hub-hero .insights_hub-hero-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  margin-bottom: 0.5em;
}
.insights_hub-hero .insights_hub-hero-text {
  font-size: 2em;
  max-width: 70em;
  margin: 0 auto;
  opacity: 0.9;
  line-height: 1.5;
}

.insights_hub-intro {
  padding: 10em 0;
  background: #fff;
}
.insights_hub-intro .insights_hub-intro-container {
  width: min(140em, 90%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6em;
  align-items: center;
}
@media only screen and (max-width: 62em) {
  .insights_hub-intro .insights_hub-intro-container {
    grid-template-columns: 1fr;
  }
}
.insights_hub-intro .insights_hub-intro-content .insights_hub-intro-text {
  font-size: 1.6em;
  color: #666;
  line-height: 1.8;
  margin-top: 1.5em;
}
.insights_hub-intro .insights_hub-intro-image {
  height: 50em;
  border-radius: 1em;
  overflow: hidden;
  box-shadow: 0 1em 3em rgba(0, 0, 0, 0.1);
}
@media only screen and (max-width: 62em) {
  .insights_hub-intro .insights_hub-intro-image {
    height: 40em;
    grid-row: 1;
  }
}
.insights_hub-intro .insights_hub-intro-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.insights_hub-grid_section {
  padding: 8em 0;
  background: #f8fafc;
}
.insights_hub-grid_section .insights_hub-grid_container {
  width: min(140em, 90%);
  margin: 0 auto;
}
.insights_hub-grid_section .insights_hub-grid_header {
  text-align: center;
  margin-bottom: 6em;
}
.insights_hub-grid_section .insights_hub-articles_grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(45em, 1fr));
  gap: 4em;
}
.insights_hub-grid_section .insight-card {
  background: #fff;
  border-radius: 1em;
  overflow: hidden;
  box-shadow: 0 0.5em 1.5em rgba(0, 0, 0, 0.05);
  transition: all 0.4s ease;
}
.insights_hub-grid_section .insight-card:hover {
  transform: translateY(-1em);
  box-shadow: 0 1.5em 3em rgba(0, 0, 0, 0.1);
}
.insights_hub-grid_section .insight-card:hover .insight-card-image img {
  transform: scale(1.05);
}
.insights_hub-grid_section .insight-card-image {
  height: 28em;
  overflow: hidden;
}
.insights_hub-grid_section .insight-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.insights_hub-grid_section .insight-card-content {
  padding: 3em;
  display: grid;
  gap: 1.5em;
  align-content: start;
}
.insights_hub-grid_section .insight-card-category {
  font-size: 1.4em;
  font-weight: 600;
  color: #226db7;
}
.insights_hub-grid_section .insight-card-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.4em;
  line-height: 1.3;
}
.insights_hub-grid_section .insight-card-title a {
  color: #133E69;
  text-decoration: none;
}
.insights_hub-grid_section .insight-card-title a:hover {
  color: #226db7;
}
.insights_hub-grid_section .insight-card-excerpt {
  font-size: 1.6em;
  color: #666;
  line-height: 1.6;
}
.insights_hub-grid_section .insight-card-link {
  font-size: 1.6em;
  font-weight: bold;
  color: #226db7;
  text-decoration: none;
  transition: color 0.3s ease;
}
.insights_hub-grid_section .insight-card-link:hover {
  color: #133E69;
}

.insights_hub-cta {
  padding: 8em 0;
  background: #fff;
}
.insights_hub-cta .insights_hub-cta-container {
  text-align: center;
  width: min(120em, 90%);
  margin: 0 auto;
}
.insights_hub-cta .insights_hub-cta-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 4em;
  color: #133E69;
  margin-bottom: 0.5em;
}
.insights_hub-cta .insights_hub-cta-text {
  font-size: 1.8em;
  color: #666;
  margin-bottom: 2em;
  max-width: 70em;
  margin-left: auto;
  margin-right: auto;
}
.insights_hub-cta .insights_hub-cta-button {
  display: inline-block;
  padding: 1.5em 4em;
  background: #226db7;
  color: #fff;
  font-size: 1.6em;
  border-radius: 5em;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 0.5em 1.5em rgba(34, 109, 183, 0.3);
}
.insights_hub-cta .insights_hub-cta-button:hover {
  background: #133E69;
  transform: translateY(-0.3em);
}

.insights_article-main {
  background: #fff;
  padding-bottom: 8em;
}

.insights_article-header {
  background: #f8fafc;
  padding: 6em 0;
  text-align: center;
  border-bottom: 1px solid #eef2f7;
}
.insights_article-header .insights_article-header-content {
  width: min(90em, 90%);
  margin: 0 auto;
  display: grid;
  justify-items: center;
  gap: 1.5em;
}
.insights_article-header .insights_article-category {
  font-size: 1.6em;
  font-weight: 600;
  color: #fff;
  background: #133E69;
  padding: 0.5em 1.5em;
  border-radius: 5em;
}
.insights_article-header .insights_article-title {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 5em;
  color: #133E69;
  line-height: 1.2;
}
.insights_article-header .insights_article-meta {
  font-size: 1.4em;
  color: #777;
}
.insights_article-header .insights_article-meta .meta-author {
  font-weight: bold;
  color: #133E69;
}
.insights_article-header .insights_article-meta .meta-date::after {
  content: "•";
  margin: 0 1em;
}

.insights_article-featured-image {
  height: 50em;
  margin: 0;
  background: #eef2f7;
}
@media only screen and (max-width: 48em) {
  .insights_article-featured-image {
    height: 35em;
  }
}
.insights_article-featured-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.insights_article-body-container {
  width: min(120em, 90%);
  margin: 6em auto 0;
  display: grid;
  grid-template-columns: 1fr 35em;
  gap: 6em;
}
@media only screen and (max-width: 62em) {
  .insights_article-body-container {
    grid-template-columns: 1fr;
    gap: 4em;
  }
}

.insights_article-content h2 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2.8em;
  color: #133E69;
  line-height: 1.3;
  margin: 1.5em 0 1em;
}
.insights_article-content p {
  font-size: 1.8em;
  color: #555;
  line-height: 1.8;
  margin-bottom: 1.5em;
}
.insights_article-content .insights_article-lead {
  font-size: 2em;
  font-weight: 600;
  color: #133E69;
  line-height: 1.6;
}

.chemicals-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2em;
  margin: 3em 0;
}
@media only screen and (max-width: 37.5em) {
  .chemicals-grid {
    grid-template-columns: 1fr;
  }
}

.chemical-card {
  background: #f8fafc;
  border-radius: 0.8em;
  padding: 2em;
  border-left: 3px solid #226db7;
}
.chemical-card h3 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2em;
  color: #133E69;
  margin-bottom: 0.5em;
}
.chemical-card p {
  font-size: 1.5em;
  line-height: 1.6;
  color: #666;
  margin-bottom: 0;
}
.chemical-card .chemical-card-icon {
  width: 4em;
  height: 4em;
  background: rgba(34, 109, 183, 0.1);
  border-radius: 50%;
  display: grid;
  place-items: center;
  margin-bottom: 1em;
}
.chemical-card .chemical-card-icon svg {
  width: 2em;
  height: 2em;
  fill: #226db7;
}

.chems-list {
  list-style: none;
  padding: 0;
  margin: 2em 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1em 2em;
}
@media only screen and (max-width: 37.5em) {
  .chems-list {
    grid-template-columns: 1fr;
  }
}
.chems-list li {
  font-size: 1.6em;
  color: #555;
  padding-left: 2em;
  position: relative;
}
.chems-list li::before {
  content: "→";
  color: #226db7;
  position: absolute;
  left: 0;
}

.insights_article-sidebar {
  position: sticky;
  top: 10em;
  display: grid;
  gap: 3em;
  align-content: start;
}

.sidebar-widget {
  background: #f8fafc;
  border-radius: 0.8em;
  padding: 3em;
  border: 1px solid #eef2f7;
}
.sidebar-widget h3 {
  font-family: "elephantregular", Arial, sans-serif;
  font-size: 2em;
  color: #133E69;
  margin-bottom: 1.5em;
  padding-bottom: 0.5em;
  border-bottom: 1px solid #ddd;
}
.sidebar-widget p {
  font-size: 1.5em;
  color: #666;
  line-height: 1.6;
}
.sidebar-widget ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 1em;
}
.sidebar-widget ul li {
  font-size: 1.5em;
  color: #555;
  padding-left: 2em;
  position: relative;
}
.sidebar-widget ul li::before {
  content: "→";
  color: #226db7;
  position: absolute;
  left: 0;
}

/*# sourceMappingURL=style.css.map */
