/* =========================================
   BURMAH LIMITED
   GLOBAL STYLES
========================================= */


/* =========================================
   ROOT VARIABLES
========================================= */

:root {

    --navy: #08131f;

    --navy-light: #0e1e2d;

    --charcoal: #101820;

    --gold: #d6a84f;

    --gold-dark: #b88932;

    --white: #ffffff;

    --off-white: #f5f5f2;

    --light-grey: #e9ebed;

    --grey: #8a949d;

    --dark-grey: #4d5861;

    --black: #05090d;

    --border-dark: rgba(255,255,255,0.12);

    --border-light: rgba(8,19,31,0.12);

    --container-width: 1380px;

    --header-height: 92px;

    --transition: all 0.35s ease;

}


/* =========================================
   RESET
========================================= */

* {

    margin: 0;

    padding: 0;

    box-sizing: border-box;

}


html {

    scroll-behavior: smooth;

}


body {

    font-family: 'Inter', sans-serif;

    color: var(--navy);

    background: var(--white);

    line-height: 1.6;

    overflow-x: hidden;

}


img {

    max-width: 100%;

    display: block;

}


a {

    color: inherit;

    text-decoration: none;

}


button {

    font-family: inherit;

}


/* =========================================
   CONTAINER
========================================= */

.container {

    width: min(
        calc(100% - 80px),
        var(--container-width)
    );

    margin: 0 auto;

}



/* =========================================
   HEADER
========================================= */

.site-header {

    position: fixed;

    top: 0;

    left: 0;

    width: 100%;

    height: var(--header-height);

    z-index: 1000;

    transition: var(--transition);

}


.site-header.scrolled {

    background: rgba(8, 19, 31, 0.97);

    backdrop-filter: blur(12px);

    box-shadow:
        0 10px 40px rgba(0,0,0,0.18);

}


.header-container {

    height: 100%;

    width: min(
        calc(100% - 80px),
        var(--container-width)
    );

    margin: auto;

    display: flex;

    align-items: center;

    justify-content: space-between;

}


/* =========================================
   LOGO
========================================= */

.site-logo {

    display: flex;

    flex-direction: column;

    line-height: 1;

    flex-shrink: 0;

}


.logo-main {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 34px;

    font-weight: 700;

    letter-spacing: 5px;

    color: var(--white);

}


.logo-sub {

    font-size: 8px;

    letter-spacing: 5px;

    margin-top: 6px;

    color: var(--gold);

    padding-left: 3px;

}


/* =========================================
   MAIN NAVIGATION
========================================= */

.main-navigation > ul {

    display: flex;

    align-items: center;

    list-style: none;

    gap: 4px;

}


.main-navigation li {

    position: relative;

}


.main-navigation li > a {

    display: flex;

    align-items: center;

    gap: 6px;

    padding: 12px 13px;

    color: rgba(255,255,255,0.8);

    font-size: 12px;

    font-weight: 600;

    letter-spacing: 0.3px;

    transition: var(--transition);

}


.main-navigation li > a:hover,
.main-navigation li > a.active {

    color: var(--white);

}


.main-navigation li > a.active::after {

    content: "";

    position: absolute;

    bottom: 0;

    left: 13px;

    right: 13px;

    height: 2px;

    background: var(--gold);

}


/* =========================================
   DROPDOWN
========================================= */

.dropdown-arrow {

    font-size: 14px;

    color: var(--gold);

    transition: var(--transition);

}


.has-dropdown:hover .dropdown-arrow {

    transform: rotate(180deg);

}


.dropdown-menu {

    position: absolute;

    top: calc(100% + 15px);

    left: 0;

    min-width: 230px;

    background: var(--white);

    padding: 12px 0;

    list-style: none;

    opacity: 0;

    visibility: hidden;

    transform: translateY(10px);

    transition: var(--transition);

    box-shadow:
        0 20px 50px rgba(0,0,0,0.2);

}


.has-dropdown:hover .dropdown-menu {

    opacity: 1;

    visibility: visible;

    transform: translateY(0);

}


.dropdown-menu li a {

    display: block;

    color: var(--navy) !important;

    padding: 11px 22px !important;

    font-size: 11px !important;

}


.dropdown-menu li a:hover {

    color: var(--gold-dark) !important;

    background: var(--off-white);

}


.dropdown-menu li a.active::after {

    display: none;

}


/* =========================================
   HEADER CTA
========================================= */

.header-cta {

    display: flex;

    align-items: center;

    gap: 14px;

    padding: 14px 20px;

    background: var(--gold);

    color: var(--navy);

    font-size: 11px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 0.8px;

    transition: var(--transition);

}


.header-cta i {

    font-style: normal;

    font-size: 18px;

}


.header-cta:hover {

    background: var(--white);

    transform: translateY(-2px);

}


/* =========================================
   MOBILE MENU BUTTON
========================================= */

.mobile-menu-toggle {

    display: none;

    width: 42px;

    height: 42px;

    border: 1px solid var(--border-dark);

    background: transparent;

    cursor: pointer;

    align-items: center;

    justify-content: center;

    flex-direction: column;

    gap: 5px;

}


.mobile-menu-toggle span {

    display: block;

    width: 20px;

    height: 2px;

    background: var(--white);

    transition: var(--transition);

}


/* =========================================
   MOBILE NAVIGATION
========================================= */

.mobile-navigation {

    position: fixed;

    top: var(--header-height);

    left: 0;

    width: 100%;

    height: calc(100vh - var(--header-height));

    background: var(--navy);

    z-index: 999;

    transform: translateX(100%);

    transition: transform 0.45s ease;

    overflow-y: auto;

}


.mobile-navigation.active {

    transform: translateX(0);

}


.mobile-navigation-inner {

    padding: 30px 40px 60px;

    display: flex;

    flex-direction: column;

}


.mobile-nav-link {

    padding: 20px 0;

    color: var(--white);

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 30px;

    text-transform: uppercase;

    letter-spacing: 1px;

    border-bottom: 1px solid var(--border-dark);

}


.mobile-nav-link:hover {

    color: var(--gold);

}


.mobile-contact-link {

    margin-top: 30px;

    padding: 18px 22px;

    background: var(--gold);

    color: var(--navy);

    text-align: center;

    border: none;

}


/* =========================================
   HERO
========================================= */

.hero-section {

    position: relative;

    min-height: 100vh;

    background: var(--navy);

    color: var(--white);

    overflow: hidden;

}


.hero-background {

    position: absolute;

    inset: 0;

    background-image:
        url("../images/home/hero-construction.png");

    background-size: cover;

    background-position: center;

}


.hero-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(5, 12, 18, 0.94) 0%,
            rgba(5, 12, 18, 0.76) 45%,
            rgba(5, 12, 18, 0.30) 100%
        );

}


.hero-container {

    position: relative;

    min-height: 100vh;

    display: flex;

    align-items: center;

    padding-top: 100px;

    padding-bottom: 130px;

}


.hero-content {

    width: min(800px, 70%);

}


.hero-eyebrow {

    display: flex;

    align-items: center;

    gap: 15px;

    margin-bottom: 28px;

}


.eyebrow-line {

    width: 42px;

    height: 2px;

    background: var(--gold);

}


.hero-eyebrow span:last-child {

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 2.5px;

    color: rgba(255,255,255,0.75);

}


.hero-content h1 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(75px, 9vw, 145px);

    font-weight: 600;

    line-height: 0.82;

    text-transform: uppercase;

    letter-spacing: -2px;

    margin-bottom: 42px;

}


.hero-content h1 span {

    display: block;

    color: var(--gold);

}


.hero-description {

    max-width: 650px;

    font-size: 17px;

    line-height: 1.8;

    font-weight: 300;

    color: rgba(255,255,255,0.76);

    margin-bottom: 40px;

}


.hero-buttons {

    display: flex;

    gap: 15px;

    flex-wrap: wrap;

}
/* ==========================================
   BURMAH LIMITED - HERO SLIDER
========================================== */

.hero-slider {
    position: relative;
    width: 100%;
    height: 100vh;
    min-height: 720px;
    overflow: hidden;
    background: #111;
}


/* ==========================================
   SLIDES
========================================== */

.hero-slide {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    transition:
        opacity 1s ease,
        visibility 1s ease;
}

.hero-slide.active {
    opacity: 1;
    visibility: visible;
    z-index: 2;
}


/* ==========================================
   BACKGROUND
========================================== */

.hero-slide .hero-background {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;

    transform: scale(1.08);

    transition:
        transform 7s ease;
}

.hero-slide.active .hero-background {
    transform: scale(1);
}


/* ==========================================
   DARK OVERLAY
========================================== */

.hero-slide .hero-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.82) 0%,
            rgba(0,0,0,.60) 42%,
            rgba(0,0,0,.25) 100%
        );

    z-index: 1;
}


/* ==========================================
   CONTENT
========================================== */

.hero-slide .hero-container {
    position: relative;
    z-index: 3;

    height: 100%;

    display: flex;
    align-items: center;
    justify-content: space-between;
}


/* ==========================================
   HERO CONTENT ANIMATION
========================================== */

.hero-slide .hero-content {
    max-width: 760px;

    opacity: 0;
    transform: translateY(35px);

    transition:
        opacity .8s ease .3s,
        transform .8s ease .3s;
}

.hero-slide.active .hero-content {
    opacity: 1;
    transform: translateY(0);
}


/* ==========================================
   EYEBROW
========================================== */

.hero-eyebrow {
    display: flex;
    align-items: center;
    gap: 14px;

    margin-bottom: 25px;

    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2.5px;
    text-transform: uppercase;
}

.eyebrow-line {
    width: 45px;
    height: 2px;
    background: currentColor;
    display: inline-block;
}


/* ==========================================
   HEADING
========================================== */

.hero-slide h1 {
    margin: 0 0 28px;

    font-size: clamp(55px, 7vw, 105px);

    line-height: .95;

    font-weight: 800;

    letter-spacing: -3px;
}

.hero-slide h1 span {
    display: block;
}


/* ==========================================
   DESCRIPTION
========================================== */

.hero-description {
    max-width: 610px;

    margin-bottom: 38px;

    font-size: 17px;

    line-height: 1.8;

    opacity: .9;
}


/* ==========================================
   BUTTONS
========================================== */

.hero-buttons {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

.hero-buttons .btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 15px;

    min-height: 55px;

    padding: 0 28px;

    text-decoration: none;

    transition:
        transform .3s ease,
        background .3s ease;
}

.hero-buttons .btn span {
    font-size: 18px;
}

.hero-buttons .btn:hover {
    transform: translateY(-3px);
}


/* ==========================================
   SIDE INFORMATION
========================================== */

.hero-side-info {
    position: relative;
    z-index: 4;

    min-width: 220px;

    display: flex;
    flex-direction: column;

    gap: 25px;

    margin-top: 120px;

    opacity: 0;
    transform: translateX(30px);

    transition:
        opacity .8s ease .6s,
        transform .8s ease .6s;
}

.hero-slide.active .hero-side-info {
    opacity: 1;
    transform: translateX(0);
}

.hero-side-item {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.hero-side-item strong {
    font-size: 13px;
    letter-spacing: 2px;
}

.hero-side-item span {
    font-size: 13px;
    line-height: 1.6;
    opacity: .7;
}

.hero-side-divider {
    width: 100%;
    height: 1px;
    background: rgba(255,255,255,.3);
}


/* ==========================================
   HERO BOTTOM
========================================== */

.hero-slide .hero-bottom {
    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    z-index: 5;
}

.hero-bottom-container {
    display: flex;
    justify-content: space-between;
    align-items: center;

    padding-bottom: 35px;
}


/* ==========================================
   SCROLL INDICATOR
========================================== */

.scroll-indicator {
    display: flex;
    align-items: center;

    gap: 12px;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2px;
}

.scroll-icon {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 30px;
    height: 30px;

    border: 1px solid rgba(255,255,255,.5);

    border-radius: 50%;

    animation: scrollBounce 2s infinite;
}

@keyframes scrollBounce {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(5px);
    }

}


/* ==========================================
   LOCATION
========================================== */

.hero-location {
    display: flex;

    align-items: center;

    gap: 10px;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2px;

    opacity: .75;
}

.location-dot {
    width: 7px;
    height: 7px;

    background: #fff;

    border-radius: 50%;
}


/* ==========================================
   SLIDER CONTROLS
========================================== */

.hero-slider-controls {
    position: absolute;

    right: 50px;
    bottom: 110px;

    z-index: 10;

    display: flex;

    align-items: center;

    gap: 22px;
}

.hero-slider-controls button {
    width: 45px;
    height: 45px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid rgba(255,255,255,.45);

    background: transparent;

    color: #fff;

    cursor: pointer;

    font-size: 18px;

    transition:
        background .3s ease,
        color .3s ease;
}

.hero-slider-controls button:hover {
    background: #fff;
    color: #111;
}

.slider-counter {
    display: flex;

    align-items: center;

    gap: 12px;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 2px;
}

.current-slide {
    font-size: 17px;
}

.counter-line {
    width: 35px;
    height: 1px;

    background: rgba(255,255,255,.5);
}


/* ==========================================
   DOT NAVIGATION
========================================== */

.hero-slider-dots {
    position: absolute;

    left: 50px;
    bottom: 110px;

    z-index: 10;

    display: flex;

    align-items: center;

    gap: 9px;
}

.slider-dot {
    width: 35px;
    height: 3px;

    padding: 0;

    border: 0;

    background: rgba(255,255,255,.35);

    cursor: pointer;

    transition:
        width .3s ease,
        background .3s ease;
}

.slider-dot.active {
    width: 60px;
    background: #fff;
}


/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width: 991px) {

    .hero-slider {
        min-height: 650px;
    }

    .hero-side-info {
        display: none;
    }

    .hero-slide h1 {
        font-size: clamp(50px, 10vw, 80px);
    }

    .hero-slider-controls {
        right: 30px;
        bottom: 105px;
    }

    .hero-slider-dots {
        left: 30px;
        bottom: 105px;
    }

}


@media (max-width: 767px) {

    .hero-slider {
        min-height: 650px;
        height: 100svh;
    }

    .hero-slide .hero-container {
        align-items: center;
    }

    .hero-slide h1 {
        font-size: clamp(43px, 13vw, 65px);
        letter-spacing: -2px;
    }

    .hero-description {
        font-size: 15px;
        line-height: 1.7;
    }

    .hero-eyebrow {
        font-size: 9px;
        letter-spacing: 1.5px;
    }

    .hero-buttons {
        flex-direction: column;
        align-items: flex-start;
    }

    .hero-buttons .btn {
        width: auto;
    }

    .hero-bottom-container {
        padding-bottom: 25px;
    }

    .hero-location {
        display: none;
    }

    .hero-slider-controls {
        right: 20px;
        bottom: 80px;
    }

    .hero-slider-dots {
        left: 20px;
        bottom: 80px;
    }

    .slider-dot {
        width: 20px;
    }

    .slider-dot.active {
        width: 35px;
    }

}

/* =========================================
   BUTTONS
========================================= */

.btn {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 20px;

    min-height: 54px;

    padding: 0 25px;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 0.8px;

    text-transform: uppercase;

    transition: var(--transition);

}


.btn span {

    font-size: 17px;

}


.btn-primary {

    background: var(--gold);

    color: var(--navy);

}


.btn-primary:hover {

    background: var(--white);

    transform: translateY(-3px);

}


.btn-outline {

    border: 1px solid rgba(255,255,255,0.35);

    color: var(--white);

}


.btn-outline:hover {

    border-color: var(--gold);

    color: var(--gold);

    transform: translateY(-3px);

}


/* =========================================
   HERO SIDE INFO
========================================= */

.hero-side-info {

    position: absolute;

    right: 0;

    bottom: 160px;

    width: 260px;

    border-left: 1px solid var(--border-dark);

}


.hero-side-item {

    padding: 18px 0 18px 25px;

}


.hero-side-item strong {

    display: block;

    font-size: 11px;

    letter-spacing: 2px;

    color: var(--gold);

    margin-bottom: 6px;

}


.hero-side-item span {

    font-size: 12px;

    line-height: 1.7;

    color: rgba(255,255,255,0.65);

}


.hero-side-divider {

    height: 1px;

    background: var(--border-dark);

}


/* =========================================
   HERO BOTTOM
========================================= */

.hero-bottom {

    position: absolute;

    bottom: 0;

    left: 0;

    width: 100%;

    border-top: 1px solid var(--border-dark);

}


.hero-bottom-container {

    min-height: 75px;

    display: flex;

    align-items: center;

    justify-content: space-between;

}


.scroll-indicator {

    display: flex;

    align-items: center;

    gap: 12px;

    font-size: 9px;

    font-weight: 600;

    letter-spacing: 2px;

    color: rgba(255,255,255,0.6);

}


.scroll-icon {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 30px;

    height: 30px;

    border: 1px solid var(--border-dark);

    color: var(--gold);

    font-size: 15px;

}


.hero-location {

    display: flex;

    align-items: center;

    gap: 10px;

    font-size: 9px;

    letter-spacing: 1.5px;

    color: rgba(255,255,255,0.45);

}


.location-dot {

    width: 7px;

    height: 7px;

    border-radius: 50%;

    background: var(--gold);

    box-shadow: 0 0 0 5px rgba(214,168,79,0.12);

}


/* =========================================
   HOME INTRO
========================================= */

.home-intro {

    padding: 150px 0;

    background: var(--off-white);

}


.intro-grid {

    display: grid;

    grid-template-columns: 0.35fr 1fr;

    gap: 100px;

}


.intro-label {

    display: flex;

    align-items: flex-start;

    gap: 18px;

    padding-top: 10px;

}


.section-number {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 24px;

    color: var(--gold-dark);

}


.section-label {

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2px;

    color: var(--dark-grey);

    padding-top: 7px;

}


.intro-content {

    max-width: 900px;

}


.intro-content h2 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(50px, 6vw, 90px);

    line-height: 0.95;

    font-weight: 600;

    text-transform: uppercase;

    color: var(--navy);

    margin-bottom: 40px;

}


.intro-content h2 span {

    color: var(--gold-dark);

}


.intro-content p {

    max-width: 750px;

    font-size: 16px;

    color: var(--dark-grey);

    margin-bottom: 20px;

}


.text-link {

    display: inline-flex;

    align-items: center;

    gap: 15px;

    margin-top: 25px;

    font-size: 11px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 1px;

    color: var(--navy);

    border-bottom: 1px solid var(--navy);

    padding-bottom: 8px;

    transition: var(--transition);

}


.text-link span {

    color: var(--gold-dark);

    font-size: 18px;

}


.text-link:hover {

    color: var(--gold-dark);

}


/* =========================================
   FOOTER
========================================= */

.site-footer {

    background: var(--navy);

    color: var(--white);

    padding-top: 90px;

}


.footer-top {

    display: grid;

    grid-template-columns:
        2fr 1fr 1fr 1fr;

    gap: 60px;

    padding-bottom: 80px;

}


.footer-brand p {

    max-width: 340px;

    margin-top: 25px;

    font-size: 13px;

    line-height: 1.8;

    color: rgba(255,255,255,0.5);

}


.footer-cta {

    display: inline-flex;

    align-items: center;

    gap: 15px;

    margin-top: 28px;

    color: var(--gold);

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 1px;

    text-transform: uppercase;

}


.footer-cta span {

    font-size: 18px;

}


.footer-column h3 {

    font-size: 10px;

    letter-spacing: 2px;

    text-transform: uppercase;

    color: var(--gold);

    margin-bottom: 25px;

}


.footer-column ul {

    list-style: none;

}


.footer-column li {

    margin-bottom: 13px;

}


.footer-column a {

    font-size: 12px;

    color: rgba(255,255,255,0.55);

    transition: var(--transition);

}


.footer-column a:hover {

    color: var(--white);

    padding-left: 4px;

}


/* =========================================
   FOOTER OFFICES
========================================= */

.footer-offices {

    display: grid;

    grid-template-columns: 1fr 1fr;

    border-top: 1px solid var(--border-dark);

    border-bottom: 1px solid var(--border-dark);

}


.footer-office {

    padding: 28px 30px;

}


.footer-office:first-child {

    border-right: 1px solid var(--border-dark);

}


.office-label {

    display: block;

    font-size: 9px;

    color: var(--gold);

    letter-spacing: 2px;

    margin-bottom: 7px;

}


.footer-office strong {

    font-size: 13px;

    font-weight: 500;

    color: rgba(255,255,255,0.7);

}


/* =========================================
   FOOTER BOTTOM
========================================= */

.footer-bottom {

    min-height: 75px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

}


.footer-bottom span {

    font-size: 10px;

    color: rgba(255,255,255,0.35);

}


.footer-legal {

    display: flex;

    gap: 25px;

}


.footer-legal a {

    font-size: 10px;

    color: rgba(255,255,255,0.35);

}


.footer-legal a:hover {

    color: var(--gold);

}
/* =========================================
   PART 2
   HOMEPAGE SECTIONS
========================================= */


/* =========================================
   SECTION HEADINGS
========================================= */

.section-heading-row,
.industries-header,
.international-heading,
.why-header {

    display: grid;

    grid-template-columns: 0.35fr 1fr;

    gap: 100px;

    align-items: start;

}


.section-heading-label {

    display: flex;

    align-items: flex-start;

    gap: 18px;

    padding-top: 8px;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2px;

    color: var(--dark-grey);

}


.section-kicker {

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2.5px;

    color: var(--gold-dark);

    margin-bottom: 18px;

}


.section-heading-content h2,
.international-heading h2,
.industries-header h2,
.why-header h2 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(52px, 6vw, 88px);

    line-height: 0.95;

    font-weight: 600;

    text-transform: uppercase;

    color: var(--navy);

}


.section-heading-content h2 span,
.international-heading h2 span,
.industries-header h2 span,
.why-header h2 span {

    color: var(--gold-dark);

}


.section-heading-label.light {

    color: rgba(255,255,255,0.55);

}


.light-text {

    color: var(--gold);

}


/* =========================================
   SERVICES
========================================= */

.services-preview {

    padding: 140px 0;

    background: var(--white);

}


.services-grid {

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 2px;

    margin-top: 80px;

    background: var(--light-grey);

}


.service-card {

    background: var(--white);

    transition: var(--transition);

}


.service-card:hover {

    transform: translateY(-8px);

    box-shadow:
        0 25px 60px rgba(8,19,31,0.12);

    position: relative;

    z-index: 2;

}


.service-image {

    position: relative;

    height: 310px;

    background-size: cover;

    background-position: center;

}


.service-road {

    background-image:
        linear-gradient(
            rgba(8,19,31,0.15),
            rgba(8,19,31,0.35)
        ),
        url("../images/home/service-road.png");

}


.service-bridge {

    background-image:
        linear-gradient(
            rgba(8,19,31,0.12),
            rgba(8,19,31,0.35)
        ),
        url("../images/home/service-bridge.png");

}


.service-industrial {

    background-image:
        linear-gradient(
            rgba(8,19,31,0.12),
            rgba(8,19,31,0.35)
        ),
        url("../images/home/service-industrial.png");

}


.service-residential {

    background-image:
        linear-gradient(
            rgba(8,19,31,0.12),
            rgba(8,19,31,0.35)
        ),
        url("../images/home/service-residential.png");

}


.service-mining {

    background-image:
        linear-gradient(
            rgba(8,19,31,0.12),
            rgba(8,19,31,0.35)
        ),
        url("../images/home/service-mining.png");

}


.service-commercial {

    background-image:
        linear-gradient(
            rgba(8,19,31,0.12),
            rgba(8,19,31,0.35)
        ),
        url("../images/home/service-commercial.png");

}


.service-number {

    position: absolute;

    top: 20px;

    right: 20px;

    width: 44px;

    height: 44px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: var(--gold);

    color: var(--navy);

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 20px;

    font-weight: 600;

}


.service-content {

    padding: 30px 28px 35px;

}


.service-content h3 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 30px;

    text-transform: uppercase;

    line-height: 1;

    margin-bottom: 18px;

}


.service-content p {

    min-height: 80px;

    font-size: 13px;

    line-height: 1.8;

    color: var(--dark-grey);

}


.service-link {

    display: inline-flex;

    align-items: center;

    gap: 12px;

    margin-top: 20px;

    font-size: 10px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 1px;

    color: var(--navy);

}


.service-link span {

    color: var(--gold-dark);

    font-size: 18px;

    transition: var(--transition);

}


.service-link:hover span {

    transform: translate(4px, -4px);

}


.section-bottom-link {

    margin-top: 50px;

    display: flex;

    justify-content: flex-end;

}


.dark-button {

    display: inline-flex;

    align-items: center;

    gap: 25px;

    min-height: 56px;

    padding: 0 25px;

    background: var(--navy);

    color: var(--white);

    font-size: 10px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 1px;

    transition: var(--transition);

}


.dark-button span {

    color: var(--gold);

    font-size: 18px;

}


.dark-button:hover {

    background: var(--gold);

    color: var(--navy);

    transform: translateY(-3px);

}


.dark-button:hover span {

    color: var(--navy);

}


/* =========================================
   INDUSTRIES
========================================= */

.industries-section {

    padding: 140px 0;

    background: var(--navy);

    color: var(--white);

}


.industries-header h2 {

    color: var(--white);

}


.industries-grid {

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    margin-top: 80px;

    border-top: 1px solid var(--border-dark);

    border-left: 1px solid var(--border-dark);

}


.industry-item {

    min-height: 190px;

    padding: 30px;

    display: grid;

    grid-template-columns: 50px 1fr 30px;

    gap: 25px;

    align-items: start;

    border-right: 1px solid var(--border-dark);

    border-bottom: 1px solid var(--border-dark);

    transition: var(--transition);

}


.industry-item:hover {

    background: rgba(255,255,255,0.04);

}


.industry-number {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 18px;

    color: var(--gold);

}


.industry-item h3 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 30px;

    font-weight: 500;

    text-transform: uppercase;

    line-height: 1;

    margin-bottom: 15px;

}


.industry-item p {

    max-width: 340px;

    font-size: 12px;

    line-height: 1.7;

    color: rgba(255,255,255,0.48);

}


.industry-arrow {

    font-size: 20px;

    color: var(--gold);

    transition: var(--transition);

}


.industry-item:hover .industry-arrow {

    transform:
        translate(4px, -4px);

}


/* =========================================
   INTERNATIONAL
========================================= */

.international-preview {

    padding: 140px 0;

    background: var(--off-white);

}


.international-intro {

    max-width: 720px;

    margin-top: 30px;

    font-size: 15px;

    line-height: 1.8;

    color: var(--dark-grey);

}


.international-grid {

    display: grid;

    grid-template-columns:
        repeat(12, 1fr);

    grid-auto-rows: 300px;

    gap: 4px;

    margin-top: 70px;

}


.country-card {

    position: relative;

    overflow: hidden;

    background-size: cover;

    background-position: center;

    color: var(--white);

}


.country-card::before {

    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(3,10,16,0.92),
            rgba(3,10,16,0.10)
        );

    z-index: 1;

}


.country-card:hover {

    z-index: 2;

}


.country-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            135deg,
            rgba(8,19,31,0.1),
            transparent
        );

    transition: var(--transition);

}


.country-card:hover .country-overlay {

    background:
        rgba(214,168,79,0.10);

}


.country-content {

    position: absolute;

    z-index: 2;

    left: 28px;

    right: 28px;

    bottom: 28px;

}


.country-number {

    display: block;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 17px;

    color: var(--gold);

    margin-bottom: 5px;

}


.country-region {

    display: block;

    font-size: 8px;

    letter-spacing: 2px;

    color: rgba(255,255,255,0.6);

    margin-bottom: 8px;

}


.country-content h3 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 52px;

    text-transform: uppercase;

    line-height: 0.9;

    margin-bottom: 12px;

}


.country-content p {

    max-width: 280px;

    font-size: 11px;

    line-height: 1.6;

    color: rgba(255,255,255,0.72);

}


.country-content a {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    margin-top: 18px;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 1px;

    text-transform: uppercase;

}


.country-content a span {

    color: var(--gold);

    font-size: 17px;

}


/* COUNTRY GRID POSITIONS */

.country-qatar {

    grid-column:
        span 7;

    background-image:
        url("../images/international/qatar.png");

}


.country-pakistan {

    grid-column:
        span 5;

    background-image:
        url("../images/international/pakistan.png");

}


.country-africa {

    grid-column:
        span 5;

    background-image:
        url("../images/international/africa.png");

}


.country-dubai {

    grid-column:
        span 7;

    background-image:
        url("../images/international/dubai.png");

}


.country-china {

    grid-column:
        1 / -1;

    background-image:
        url("../images/international/china.png");

}


/* =========================================
   GLOBAL SECTION
========================================= */

.global-section {

    position: relative;

    min-height: 780px;

    color: var(--white);

    overflow: hidden;

}


.global-background {

    position: absolute;

    inset: 0;

    background-image:
        url("../images/home/global-construction.png");

    background-size: cover;

    background-position: center;

}


.global-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(5,12,18,0.96),
            rgba(5,12,18,0.72),
            rgba(5,12,18,0.30)
        );

}


.global-container {

    position: relative;

    min-height: 780px;

    display: flex;

    align-items: center;

}


.global-content {

    width: min(900px, 100%);

}


.global-label {

    display: block;

    font-size: 10px;

    letter-spacing: 2.5px;

    font-weight: 700;

    color: var(--gold);

    margin-bottom: 25px;

}


.global-content h2 {

    max-width: 850px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(55px, 7vw, 105px);

    line-height: 0.9;

    text-transform: uppercase;

}


.global-content h2 span {

    display: block;

    color: var(--gold);

}


.global-content > p {

    max-width: 650px;

    margin-top: 35px;

    font-size: 15px;

    line-height: 1.8;

    color: rgba(255,255,255,0.68);

}


.global-offices {

    display: grid;

    grid-template-columns: 1fr 1fr;

    margin-top: 55px;

    max-width: 800px;

    border-top: 1px solid var(--border-dark);

}


.global-office {

    padding: 25px 30px 25px 0;

}


.global-office + .global-office {

    padding-left: 30px;

    border-left: 1px solid var(--border-dark);

}


.global-office > span {

    display: block;

    font-size: 9px;

    letter-spacing: 2px;

    color: var(--gold);

    margin-bottom: 10px;

}


.global-office strong {

    display: block;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 25px;

    font-weight: 500;

    line-height: 1.05;

    text-transform: uppercase;

}


.global-office p {

    margin-top: 12px;

    font-size: 11px;

    line-height: 1.7;

    color: rgba(255,255,255,0.48);

}


/* =========================================
   WHY BURMAH
========================================= */

.why-burmah {

    padding: 140px 0;

    background: var(--white);

}


.why-grid {

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    margin-top: 80px;

    border-top: 1px solid var(--border-light);

    border-left: 1px solid var(--border-light);

}


.why-item {

    min-height: 260px;

    padding: 35px;

    border-right: 1px solid var(--border-light);

    border-bottom: 1px solid var(--border-light);

    transition: var(--transition);

}


.why-item:hover {

    background: var(--off-white);

}


.why-number {

    display: block;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 18px;

    color: var(--gold-dark);

    margin-bottom: 35px;

}


.why-item h3 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 29px;

    text-transform: uppercase;

    line-height: 1;

    margin-bottom: 18px;

}


.why-item p {

    font-size: 12px;

    line-height: 1.8;

    color: var(--dark-grey);

    max-width: 300px;

}


/* =========================================
   CAPABILITIES STRIP
========================================= */

.capabilities-strip {

    background: var(--gold);

    color: var(--navy);

}


.capabilities-grid {

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

}


.capability-item {

    min-height: 190px;

    padding: 30px;

    display: flex;

    flex-direction: column;

    justify-content: center;

    border-right:
        1px solid rgba(8,19,31,0.15);

}


.capability-item:last-child {

    border-right: none;

}


.capability-icon {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 20px;

    margin-bottom: 5px;

}


.capability-item strong {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 65px;

    line-height: 0.9;

    font-weight: 600;

}


.capability-item > span:last-child {

    margin-top: 10px;

    font-size: 9px;

    text-transform: uppercase;

    letter-spacing: 1.5px;

    font-weight: 700;

}


/* =========================================
   HOME CTA
========================================= */

.home-cta {

    position: relative;

    min-height: 650px;

    display: flex;

    align-items: center;

    color: var(--white);

    overflow: hidden;

}


.home-cta-background {

    position: absolute;

    inset: 0;

    background-image:
        linear-gradient(
            rgba(5,12,18,0.78),
            rgba(5,12,18,0.90)
        ),
        url("../images/home/cta-construction.png");

    background-size: cover;

    background-position: center;

}


.home-cta-container {

    position: relative;

}


.home-cta-content {

    max-width: 900px;

}


.cta-label {

    display: block;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2.5px;

    color: var(--gold);

    margin-bottom: 25px;

}


.home-cta h2 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(70px, 10vw, 140px);

    line-height: 0.82;

    text-transform: uppercase;

}


.home-cta h2 span {

    display: block;

    color: var(--gold);

}


.home-cta-content > p {

    max-width: 600px;

    margin-top: 35px;

    font-size: 15px;

    line-height: 1.8;

    color: rgba(255,255,255,0.65);

}


.cta-buttons {

    display: flex;

    gap: 15px;

    margin-top: 35px;

}
/* =========================================
   PART 3
   ABOUT PAGE
========================================= */


/* =========================================
   PAGE HERO
========================================= */

.page-hero {

    position: relative;

    min-height: 680px;

    display: flex;

    align-items: flex-end;

    color: var(--white);

    overflow: hidden;

}


.page-hero-background {

    position: absolute;

    inset: 0;

    background-size: cover;

    background-position: center;

}


.about-hero .page-hero-background {

    background-image:
        url("../images/about/about-banner.png");

}


.page-hero-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(5,12,18,0.94),
            rgba(5,12,18,0.58),
            rgba(5,12,18,0.18)
        );

}


.page-hero-container {

    position: relative;

    width: 100%;

    padding-bottom: 80px;

    display: flex;

    justify-content: space-between;

    align-items: flex-end;

}


.page-hero-content {

    max-width: 900px;

}


.page-hero-label {

    display: block;

    margin-bottom: 25px;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2.5px;

    color: var(--gold);

}


.page-hero-content h1 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(80px, 11vw, 155px);

    line-height: 0.8;

    text-transform: uppercase;

    font-weight: 600;

}


.page-hero-content h1 span {

    display: block;

    color: var(--gold);

}


.page-hero-content p {

    max-width: 550px;

    margin-top: 35px;

    font-size: 16px;

    line-height: 1.7;

    color: rgba(255,255,255,0.68);

}


.page-hero-meta {

    display: flex;

    align-items: center;

    gap: 15px;

    padding-bottom: 10px;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;

    color: rgba(255,255,255,0.6);

}


.hero-meta-line {

    width: 35px;

    height: 1px;

    background: var(--gold);

}


/* =========================================
   ABOUT INTRO
========================================= */

.about-introduction {

    padding: 150px 0;

    background: var(--white);

}


.about-intro-grid {

    display: grid;

    grid-template-columns:
        0.35fr 1fr;

    gap: 100px;

}


.about-side-label {

    display: flex;

    gap: 18px;

    align-items: flex-start;

    padding-top: 10px;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2px;

    color: var(--dark-grey);

}


.about-intro-content {

    max-width: 1000px;

}


.large-intro {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(42px, 5vw, 72px);

    line-height: 1;

    text-transform: uppercase;

    color: var(--navy);

}


.about-text-columns {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 60px;

    margin-top: 50px;

    padding-top: 40px;

    border-top:
        1px solid var(--border-light);

}


.about-text-columns p {

    font-size: 14px;

    line-height: 1.9;

    color: var(--dark-grey);

}


/* =========================================
   OPERATING MODEL
========================================= */

.about-operating-model {

    padding: 140px 0;

    background: var(--navy);

    color: var(--white);

}


.operating-heading {

    display: grid;

    grid-template-columns:
        0.35fr 1fr;

    gap: 100px;

}


.operating-heading h2 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(55px, 7vw, 100px);

    line-height: 0.9;

    text-transform: uppercase;

}


.operating-heading h2 span {

    display: block;

    color: var(--gold);

}


.operating-grid {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 4px;

    margin-top: 80px;

}


.operating-card {

    background:
        rgba(255,255,255,0.035);

    border:
        1px solid rgba(255,255,255,0.08);

}


.operating-image {

    position: relative;

    height: 360px;

    background-size: cover;

    background-position: center;

}


.china-operation-image {

    background-image:
        url("../images/about/china-operations.png");

}


.uk-operation-image {

    background-image:
        url("../images/about/uk-operations.png");

}


.operating-image::after {

    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(5,12,18,0.65),
            transparent
        );

}


.operating-number {

    position: absolute;

    z-index: 2;

    right: 20px;

    top: 20px;

    width: 48px;

    height: 48px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: var(--gold);

    color: var(--navy);

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 20px;

}


.operating-content {

    padding: 40px;

}


.operating-region {

    display: block;

    margin-bottom: 15px;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;

    color: var(--gold);

}


.operating-content h3 {

    max-width: 450px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 48px;

    line-height: 0.9;

    text-transform: uppercase;

}


.operating-content > p {

    margin-top: 25px;

    max-width: 500px;

    font-size: 13px;

    line-height: 1.8;

    color: rgba(255,255,255,0.58);

}


.operating-content ul {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 10px 30px;

    margin-top: 30px;

    padding-top: 25px;

    border-top:
        1px solid rgba(255,255,255,0.08);

}


.operating-content li {

    font-size: 10px;

    text-transform: uppercase;

    letter-spacing: 1px;

    color: rgba(255,255,255,0.65);

}


.operating-content li::before {

    content: "—";

    margin-right: 8px;

    color: var(--gold);

}


/* =========================================
   MISSION / VISION
========================================= */

.mission-vision {

    padding: 140px 0;

    background: var(--off-white);

}


.mission-vision-grid {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 2px;

    background: var(--border-light);

}


.mission-block,
.vision-block {

    background: var(--white);

    padding: 70px 60px;

}


.vision-block {

    background: var(--navy);

    color: var(--white);

}


.mv-number {

    display: block;

    margin-bottom: 50px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 18px;

    color: var(--gold-dark);

}


.vision-block .mv-number {

    color: var(--gold);

}


.mission-block h2,
.vision-block h2 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(50px, 5vw, 75px);

    line-height: 0.9;

    text-transform: uppercase;

}


.mission-block h2 span,
.vision-block h2 span {

    display: block;

    color: var(--gold-dark);

}


.vision-block h2 span {

    color: var(--gold);

}


.mission-block p,
.vision-block p {

    max-width: 500px;

    margin-top: 35px;

    font-size: 14px;

    line-height: 1.9;

    color: var(--dark-grey);

}


.vision-block p {

    color: rgba(255,255,255,0.58);

}


/* =========================================
   VALUES
========================================= */

.values-section {

    padding: 140px 0;

    background: var(--white);

}


.values-heading {

    display: grid;

    grid-template-columns:
        0.35fr 1fr;

    gap: 100px;

}


.values-heading h2 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(55px, 7vw, 95px);

    line-height: 0.9;

    text-transform: uppercase;

}


.values-heading h2 span {

    color: var(--gold-dark);

}


.values-grid {

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    margin-top: 80px;

    border-top:
        1px solid var(--border-light);

    border-left:
        1px solid var(--border-light);

}


.value-card {

    min-height: 300px;

    padding: 35px;

    border-right:
        1px solid var(--border-light);

    border-bottom:
        1px solid var(--border-light);

    transition: var(--transition);

}


.value-card:hover {

    background: var(--off-white);

    transform: translateY(-4px);

}


.value-number {

    display: block;

    color: var(--gold-dark);

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 18px;

}


.value-icon {

    margin-top: 35px;

    font-size: 30px;

    color: var(--gold-dark);

}


.value-card h3 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 34px;

    text-transform: uppercase;

}


.value-card p {

    max-width: 310px;

    margin-top: 15px;

    font-size: 12px;

    line-height: 1.8;

    color: var(--dark-grey);

}


/* =========================================
   ENGINEERING
========================================= */

.engineering-section {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    min-height: 800px;

}


.engineering-image {

    position: relative;

    background-image:
        url("../images/about/engineering-capability.png");

    background-size: cover;

    background-position: center;

}


.engineering-image-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(5,12,18,0.1),
            rgba(5,12,18,0.45)
        );

}


.engineering-content {

    display: flex;

    align-items: center;

    background: var(--navy);

    color: var(--white);

}


.engineering-inner {

    width: min(700px, 100%);

    padding: 80px;

}


.engineering-inner h2 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(55px, 6vw, 90px);

    line-height: 0.88;

    text-transform: uppercase;

}


.engineering-inner h2 span {

    display: block;

    color: var(--gold);

}


.engineering-inner > p {

    max-width: 550px;

    margin-top: 35px;

    font-size: 14px;

    line-height: 1.8;

    color: rgba(255,255,255,0.6);

}


.engineering-list {

    margin-top: 45px;

    border-top:
        1px solid rgba(255,255,255,0.1);

}


.engineering-list-item {

    display: flex;

    align-items: center;

    gap: 25px;

    padding: 18px 0;

    border-bottom:
        1px solid rgba(255,255,255,0.1);

}


.engineering-list-item span {

    width: 30px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 15px;

    color: var(--gold);

}


.engineering-list-item strong {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 22px;

    font-weight: 400;

    text-transform: uppercase;

}


/* =========================================
   INTERNATIONAL MODEL
========================================= */

.international-model {

    padding: 150px 0;

    background: var(--white);

}


.international-model-grid {

    display: grid;

    grid-template-columns:
        0.7fr 1fr;

    gap: 120px;

}


.international-model-title {

    position: relative;

}


.international-model-title > span:first-child {

    display: block;

    margin-bottom: 40px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    color: var(--gold-dark);

    font-size: 18px;

}


.international-model-title h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(65px, 8vw, 110px);

    line-height: 0.85;

    text-transform: uppercase;

}


.international-model-title h2 span {

    display: block;

    color: var(--gold-dark);

}


.international-model-content {

    padding-top: 55px;

}


.international-model-lead {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 35px;

    line-height: 1.05;

    text-transform: uppercase;

    color: var(--navy);

}


.international-model-content > p:not(.international-model-lead) {

    max-width: 650px;

    margin-top: 25px;

    font-size: 14px;

    line-height: 1.9;

    color: var(--dark-grey);

}


.international-model-content .dark-button {

    margin-top: 35px;

}


/* =========================================
   QUALITY
========================================= */

.quality-section {

    padding: 140px 0;

    background: var(--navy);

    color: var(--white);

}


.quality-heading {

    display: grid;

    grid-template-columns:
        0.35fr 1fr;

    gap: 100px;

}


.quality-heading h2 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(60px, 7vw, 100px);

    line-height: 0.85;

    text-transform: uppercase;

}


.quality-heading h2 span {

    display: block;

    color: var(--gold);

}


.quality-grid {

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    margin-top: 80px;

    border-top:
        1px solid rgba(255,255,255,0.1);

    border-left:
        1px solid rgba(255,255,255,0.1);

}


.quality-card {

    min-height: 310px;

    padding: 30px;

    border-right:
        1px solid rgba(255,255,255,0.1);

    border-bottom:
        1px solid rgba(255,255,255,0.1);

}


.quality-number {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 18px;

    color: var(--gold);

}


.quality-card h3 {

    margin-top: 70px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 29px;

    line-height: 1;

    text-transform: uppercase;

}


.quality-card p {

    margin-top: 20px;

    font-size: 12px;

    line-height: 1.8;

    color: rgba(255,255,255,0.48);

}


/* =========================================
   ABOUT CTA
========================================= */

.about-cta {

    padding: 150px 0;

    background:
        linear-gradient(
            120deg,
            var(--gold),
            #e3bd69
        );

    color: var(--navy);

}


.about-cta-content {

    max-width: 1000px;

}


.about-cta .cta-label {

    color: var(--navy);

}


.about-cta h2 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(75px, 10vw, 145px);

    line-height: 0.8;

    text-transform: uppercase;

}


.about-cta h2 span {

    display: block;

    color: var(--white);

}


.about-cta-content > p {

    max-width: 650px;

    margin-top: 35px;

    font-size: 15px;

    line-height: 1.8;

}


.about-cta .btn-primary {

    background: var(--navy);

    color: var(--white);

}


.about-cta .btn-outline {

    border-color: var(--navy);

    color: var(--navy);

}


.about-cta .btn-outline:hover {

    background: var(--navy);

    color: var(--white);

}
/* =========================================
   PART 4
   SERVICES PAGE
========================================= */


/* =========================================
   SERVICES HERO
========================================= */

.services-hero .page-hero-background {

    background-image:
        url("../images/services/services-banner.png");

}


/* =========================================
   SERVICES INTRO
========================================= */

.services-introduction {

    padding: 150px 0;

    background: var(--white);

}


.services-intro-grid {

    display: grid;

    grid-template-columns:
        0.35fr 1fr;

    gap: 100px;

}


.services-intro-title {

    max-width: 900px;

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(60px, 8vw, 115px);

    line-height: 0.84;

    text-transform: uppercase;

    color: var(--navy);

}


.services-intro-title span {

    display: block;

    color: var(--gold-dark);

}


.services-intro-text {

    max-width: 750px;

    margin-top: 45px;

    font-size: 15px;

    line-height: 1.9;

    color: var(--dark-grey);

}


.services-intro-stats {

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    max-width: 800px;

    margin-top: 60px;

    border-top:
        1px solid var(--border-light);

}


.services-intro-stats div {

    padding: 30px 20px;

    border-right:
        1px solid var(--border-light);

}


.services-intro-stats div:first-child {

    padding-left: 0;

}


.services-intro-stats strong {

    display: block;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 45px;

    font-weight: 500;

    color: var(--navy);

}


.services-intro-stats span {

    display: block;

    margin-top: 5px;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 1.5px;

    color: var(--dark-grey);

}


/* =========================================
   CORE SERVICES
========================================= */

.core-services {

    padding: 150px 0;

    background: var(--off-white);

}


.services-heading {

    display: grid;

    grid-template-columns:
        0.35fr 1fr;

    gap: 100px;

}


.services-heading h2 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(65px, 8vw, 115px);

    line-height: 0.82;

    text-transform: uppercase;

}


.services-heading h2 span {

    display: block;

    color: var(--gold-dark);

}


/* =========================================
   SERVICE FEATURE
========================================= */

.services-list {

    margin-top: 90px;

}


.service-feature {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    min-height: 650px;

    background: var(--white);

}


.service-feature + .service-feature {

    margin-top: 4px;

}


.service-feature-reverse {

    direction: rtl;

}


.service-feature-reverse
.service-feature-content {

    direction: ltr;

}


.service-feature-image {

    position: relative;

    min-height: 650px;

    background-size: cover;

    background-position: center;

}


.service-feature-image::after {

    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            135deg,
            rgba(5,12,18,0.05),
            rgba(5,12,18,0.45)
        );

}


.road-service-image {

    background-image:
        url("../images/services/road-construction.png");

}


.bridge-service-image {

    background-image:
        url("../images/services/bridge-engineering.png");

}


.industrial-service-image {

    background-image:
        url("../images/services/industrial-buildings.png");

}


.residential-service-image {

    background-image:
        url("../images/services/residential-projects.png");

}


.mining-service-image {

    background-image:
        url("../images/services/mining-drilling.png");

}


.commercial-service-image {

    background-image:
        url("../images/services/commercial-buildings.png");

}


.service-feature-number {

    position: absolute;

    z-index: 2;

    top: 25px;

    left: 25px;

    width: 58px;

    height: 58px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: var(--gold);

    color: var(--navy);

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 22px;

}


.service-feature-content {

    display: flex;

    flex-direction: column;

    justify-content: center;

    padding: 75px;

}


.service-category {

    display: block;

    margin-bottom: 18px;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;

    color: var(--gold-dark);

}


.service-feature-content h3 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(60px, 6vw, 90px);

    line-height: 0.82;

    text-transform: uppercase;

    color: var(--navy);

}


.service-feature-content h3 span {

    display: block;

    color: var(--gold-dark);

}


.service-feature-content > p {

    max-width: 600px;

    margin-top: 35px;

    font-size: 14px;

    line-height: 1.9;

    color: var(--dark-grey);

}


.service-capabilities {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 12px 30px;

    max-width: 600px;

    margin-top: 35px;

    padding-top: 30px;

    border-top:
        1px solid var(--border-light);

}


.service-capabilities li {

    font-size: 10px;

    font-weight: 600;

    letter-spacing: 0.5px;

    text-transform: uppercase;

    color: var(--dark-grey);

}


.service-capabilities li::before {

    content: "—";

    margin-right: 8px;

    color: var(--gold-dark);

}


.service-link {

    display: inline-flex;

    align-items: center;

    gap: 12px;

    width: fit-content;

    margin-top: 40px;

    padding-bottom: 8px;

    border-bottom:
        1px solid var(--navy);

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    color: var(--navy);

}


.service-link span {

    font-size: 16px;

    transition: var(--transition);

}


.service-link:hover span {

    transform:
        translate(4px, -4px);

}


/* =========================================
   DELIVERY APPROACH
========================================= */

.delivery-approach {

    padding: 150px 0;

    background: var(--navy);

    color: var(--white);

}


.delivery-heading {

    display: grid;

    grid-template-columns:
        0.35fr 1fr;

    gap: 100px;

}


.delivery-heading h2 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(65px, 8vw, 115px);

    line-height: 0.82;

    text-transform: uppercase;

}


.delivery-heading h2 span {

    display: block;

    color: var(--gold);

}


.delivery-process {

    margin-top: 90px;

    border-top:
        1px solid rgba(255,255,255,0.12);

}


.delivery-step {

    display: grid;

    grid-template-columns:
        100px 1fr;

    gap: 40px;

    padding: 45px 0;

    border-bottom:
        1px solid rgba(255,255,255,0.12);

}


.delivery-step-number {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 25px;

    color: var(--gold);

}


.delivery-step h3 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 42px;

    font-weight: 400;

    text-transform: uppercase;

}


.delivery-step p {

    max-width: 650px;

    margin-top: 12px;

    font-size: 13px;

    line-height: 1.8;

    color: rgba(255,255,255,0.52);

}


/* =========================================
   TECHNICAL CAPABILITY
========================================= */

.technical-capability {

    padding: 150px 0;

    background: var(--white);

}


.technical-grid {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    min-height: 700px;

}


.technical-image {

    position: relative;

    background-image:
        url("../images/services/technical-capability.png");

    background-size: cover;

    background-position: center;

}


.technical-image-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(5,12,18,0.35)
        );

}


.technical-content {

    padding: 70px;

    background: var(--off-white);

}


.technical-content h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(60px, 7vw, 95px);

    line-height: 0.84;

    text-transform: uppercase;

    color: var(--navy);

}


.technical-content h2 span {

    display: block;

    color: var(--gold-dark);

}


.technical-content > p {

    max-width: 600px;

    margin-top: 35px;

    font-size: 14px;

    line-height: 1.9;

    color: var(--dark-grey);

}


.capability-grid {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    margin-top: 45px;

    border-top:
        1px solid var(--border-light);

    border-left:
        1px solid var(--border-light);

}


.capability-item {

    display: flex;

    flex-direction: column;

    gap: 12px;

    padding: 22px;

    border-right:
        1px solid var(--border-light);

    border-bottom:
        1px solid var(--border-light);

}


.capability-item span {

    font-family: 'Barlow Condensed',
                 sans-serif;

    color: var(--gold-dark);

}


.capability-item strong {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 20px;

    font-weight: 400;

    text-transform: uppercase;

    color: var(--navy);

}


/* =========================================
   GLOBAL SERVICES
========================================= */

.services-global {

    position: relative;

    min-height: 700px;

    display: flex;

    align-items: center;

    color: var(--white);

    overflow: hidden;

}


.services-global-background {

    position: absolute;

    inset: 0;

    background-image:
        url("../images/services/global-delivery.png");

    background-size: cover;

    background-position: center;

}


.services-global-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(5,12,18,0.93),
            rgba(5,12,18,0.65),
            rgba(5,12,18,0.3)
        );

}


.services-global .container {

    position: relative;

}


.services-global-content {

    max-width: 900px;

}


.services-global-content h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(70px, 9vw, 130px);

    line-height: 0.8;

    text-transform: uppercase;

}


.services-global-content h2 span {

    display: block;

    color: var(--gold);

}


.services-global-content p {

    max-width: 650px;

    margin-top: 40px;

    font-size: 15px;

    line-height: 1.8;

    color: rgba(255,255,255,0.62);

}


.light-button {

    display: inline-flex;

    align-items: center;

    gap: 15px;

    margin-top: 40px;

    padding: 16px 24px;

    border: 1px solid
           rgba(255,255,255,0.5);

    color: var(--white);

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    transition: var(--transition);

}


.light-button:hover {

    background: var(--gold);

    border-color: var(--gold);

    color: var(--navy);

}


/* =========================================
   SERVICES CTA
========================================= */

.services-cta {

    padding: 150px 0;

    background: var(--gold);

    color: var(--navy);

}


.services-cta-inner {

    max-width: 1000px;

}


.services-cta h2 {

    margin-top: 15px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(75px, 10vw, 145px);

    line-height: 0.8;

    text-transform: uppercase;

}


.services-cta h2 span {

    display: block;

    color: var(--white);

}


.services-cta-inner > p {

    max-width: 650px;

    margin-top: 35px;

    font-size: 15px;

    line-height: 1.8;

}
/* =========================================
   PART 5
   INDUSTRIES PAGE
========================================= */


/* =========================================
   INDUSTRIES HERO
========================================= */

.industries-hero .page-hero-background {

    background-image:
        url("../images/industries/industries-banner.png");

}


/* =========================================
   INDUSTRIES INTRO
========================================= */

.industries-intro {

    padding: 150px 0;

    background: var(--white);

}


.industries-intro-grid {

    display: grid;

    grid-template-columns:
        0.35fr 1fr;

    gap: 100px;

}


.industries-intro h2 {

    max-width: 900px;

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(65px, 8vw, 115px);

    line-height: 0.82;

    text-transform: uppercase;

    color: var(--navy);

}


.industries-intro h2 span {

    display: block;

    color: var(--gold-dark);

}


.industries-intro p {

    max-width: 760px;

    margin-top: 35px;

    font-size: 15px;

    line-height: 1.9;

    color: var(--dark-grey);

}


.industries-intro p + p {

    margin-top: 18px;

}


/* =========================================
   INDUSTRY SECTORS
========================================= */

.industry-sectors {

    padding: 150px 0;

    background: var(--off-white);

}


.industries-heading {

    display: grid;

    grid-template-columns:
        0.35fr 1fr;

    gap: 100px;

}


.industries-heading h2 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(65px, 8vw, 115px);

    line-height: 0.82;

    text-transform: uppercase;

}


.industries-heading h2 span {

    display: block;

    color: var(--gold-dark);

}


/* =========================================
   INDUSTRY GRID
========================================= */

.industry-grid {

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap: 4px;

    margin-top: 90px;

}


.industry-card {

    background: var(--white);

    overflow: hidden;

}


.industry-card-image {

    position: relative;

    height: 360px;

    background-size: cover;

    background-position: center;

    transition: transform .7s ease;

}


.industry-card:hover
.industry-card-image {

    transform: scale(1.03);

}


.industry-card-image::after {

    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(5,12,18,0.05),
            rgba(5,12,18,0.55)
        );

}


.industry-number {

    position: absolute;

    z-index: 2;

    top: 20px;

    left: 20px;

    display: flex;

    align-items: center;

    justify-content: center;

    width: 55px;

    height: 55px;

    background: var(--gold);

    color: var(--navy);

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 20px;

}


.transportation-image {

    background-image:
        url("../images/industries/transportation.png");

}


.mining-industry-image {

    background-image:
        url("../images/industries/mining.png");

}


.oilgas-image {

    background-image:
        url("../images/industries/oil-gas.png");

}


.manufacturing-image {

    background-image:
        url("../images/industries/manufacturing.png");

}


.residential-industry-image {

    background-image:
        url("../images/industries/residential.png");

}


.commercial-industry-image {

    background-image:
        url("../images/industries/commercial.png");

}


.government-image {

    background-image:
        url("../images/industries/government.png");

}


.renewable-image {

    background-image:
        url("../images/industries/renewable-energy.png");

}


.industry-card-content {

    padding: 45px;

}


.industry-label {

    display: block;

    margin-bottom: 15px;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;

    color: var(--gold-dark);

}


.industry-card h3 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 48px;

    line-height: 0.9;

    font-weight: 400;

    text-transform: uppercase;

    color: var(--navy);

}


.industry-card p {

    max-width: 600px;

    margin-top: 22px;

    font-size: 13px;

    line-height: 1.8;

    color: var(--dark-grey);

}


.industry-card ul {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 10px;

    margin-top: 25px;

    padding-top: 25px;

    border-top:
        1px solid var(--border-light);

}


.industry-card li {

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 0.7px;

    text-transform: uppercase;

    color: var(--dark-grey);

}


.industry-card li::before {

    content: "—";

    margin-right: 7px;

    color: var(--gold-dark);

}


/* =========================================
   CROSS-SECTOR CAPABILITY
========================================= */

.sector-capability {

    padding: 150px 0;

    background: var(--white);

}


.sector-capability-grid {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 100px;

    align-items: center;

}


.sector-capability-content h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(65px, 7vw, 105px);

    line-height: 0.82;

    text-transform: uppercase;

    color: var(--navy);

}


.sector-capability-content h2 span {

    display: block;

    color: var(--gold-dark);

}


.sector-capability-content p {

    max-width: 650px;

    margin-top: 30px;

    font-size: 14px;

    line-height: 1.9;

    color: var(--dark-grey);

}


.sector-capability-content p + p {

    margin-top: 15px;

}


.dark-button {

    display: inline-flex;

    align-items: center;

    gap: 15px;

    margin-top: 40px;

    padding: 17px 25px;

    background: var(--navy);

    color: var(--white);

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    transition: var(--transition);

}


.dark-button:hover {

    background: var(--gold);

    color: var(--navy);

}


/* =========================================
   CAPABILITY VISUAL
========================================= */

.sector-capability-visual {

    padding: 60px;

    background: var(--navy);

}


.sector-visual-box {

    display: flex;

    align-items: center;

    justify-content: center;

    min-height: 100px;

    border:
        1px solid rgba(255,255,255,0.15);

}


.sector-visual-box span {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 27px;

    letter-spacing: 2px;

    color: var(--white);

}


.sector-visual-box:nth-of-type(3) span {

    color: var(--gold);

}


.sector-visual-line {

    width: 1px;

    height: 30px;

    margin: auto;

    background: var(--gold);

}


/* =========================================
   INDUSTRY STATS
========================================= */

.industry-stats {

    padding: 80px 0;

    background: var(--gold);

}


.industry-stats-grid {

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

}


.industry-stat {

    padding: 15px 35px;

    border-right:
        1px solid rgba(5,12,18,0.2);

}


.industry-stat:first-child {

    padding-left: 0;

}


.industry-stat:last-child {

    border-right: none;

}


.industry-stat strong {

    display: block;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 58px;

    line-height: 1;

    font-weight: 500;

    color: var(--navy);

}


.industry-stat span {

    display: block;

    margin-top: 8px;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 1.5px;

    color: var(--navy);

}


/* =========================================
   GLOBAL INDUSTRIES
========================================= */

.industry-global {

    position: relative;

    min-height: 700px;

    display: flex;

    align-items: center;

    overflow: hidden;

    color: var(--white);

}


.industry-global-background {

    position: absolute;

    inset: 0;

    background-image:
        url("../images/industries/global-industries.png");

    background-size: cover;

    background-position: center;

}


.industry-global-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(5,12,18,0.95),
            rgba(5,12,18,0.65),
            rgba(5,12,18,0.25)
        );

}


.industry-global .container {

    position: relative;

}


.industry-global-content {

    max-width: 900px;

}


.industry-global-content h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(70px, 9vw, 130px);

    line-height: 0.8;

    text-transform: uppercase;

}


.industry-global-content h2 span {

    display: block;

    color: var(--gold);

}


.industry-global-content p {

    max-width: 650px;

    margin-top: 40px;

    font-size: 15px;

    line-height: 1.8;

    color: rgba(255,255,255,0.62);

}


/* =========================================
   INDUSTRY CTA
========================================= */

.industry-cta {

    padding: 150px 0;

    background: var(--off-white);

}


.industry-cta-inner {

    max-width: 1000px;

}


.industry-cta h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(75px, 10vw, 145px);

    line-height: 0.8;

    text-transform: uppercase;

    color: var(--navy);

}


.industry-cta h2 span {

    display: block;

    color: var(--gold-dark);

}


.industry-cta p {

    max-width: 650px;

    margin-top: 35px;

    font-size: 15px;

    line-height: 1.8;

    color: var(--dark-grey);

}


.industry-cta .btn {

    margin-top: 35px;

}
/* =========================================
   PART 6
   INTERNATIONAL PROJECTS
========================================= */


/* =========================================
   INTERNATIONAL HERO
========================================= */

.international-hero .page-hero-background {

    background-image:
        url("../images/international/international-banner.png");

}


/* =========================================
   INTERNATIONAL INTRO
========================================= */

.international-intro {

    padding: 150px 0;

    background: var(--white);

}


.international-intro-grid {

    display: grid;

    grid-template-columns:
        0.35fr 1fr;

    gap: 100px;

}


.international-intro h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(65px, 8vw, 115px);

    line-height: 0.82;

    text-transform: uppercase;

    color: var(--navy);

}


.international-intro h2 span {

    display: block;

    color: var(--gold-dark);

}


.international-intro p {

    max-width: 760px;

    margin-top: 35px;

    font-size: 15px;

    line-height: 1.9;

    color: var(--dark-grey);

}


.international-intro p + p {

    margin-top: 18px;

}


/* =========================================
   INTERNATIONAL MODEL
========================================= */

.international-model {

    padding: 150px 0;

    background: var(--off-white);

}


.international-model-heading {

    display: grid;

    grid-template-columns:
        0.35fr 1fr;

    gap: 100px;

}


.international-model-heading h2 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(65px, 8vw, 115px);

    line-height: 0.82;

    text-transform: uppercase;

}


.international-model-heading h2 span {

    display: block;

    color: var(--gold-dark);

}


/* =========================================
   OPERATING MODEL
========================================= */

.international-model-grid {

    display: grid;

    grid-template-columns:
        1fr 160px 1fr;

    align-items: stretch;

    margin-top: 90px;

}


.operating-region {

    padding: 60px;

    background: var(--white);

}


.uk-region {

    background: var(--navy);

    color: var(--white);

}


.region-number {

    width: 55px;

    height: 55px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: var(--gold);

    color: var(--navy);

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 20px;

}


.region-label {

    display: block;

    margin-top: 45px;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 2px;

    color: var(--gold-dark);

}


.uk-region .region-label {

    color: var(--gold);

}


.operating-region h3 {

    margin-top: 15px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 65px;

    line-height: .9;

    font-weight: 400;

    text-transform: uppercase;

}


.operating-region p {

    margin-top: 30px;

    font-size: 13px;

    line-height: 1.9;

    color: var(--dark-grey);

}


.uk-region p {

    color: rgba(255,255,255,.55);

}


.operating-region ul {

    margin-top: 35px;

    padding-top: 30px;

    border-top:
        1px solid var(--border-light);

}


.uk-region ul {

    border-color:
        rgba(255,255,255,.15);

}


.operating-region li {

    margin-bottom: 12px;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 1px;

    text-transform: uppercase;

}


.operating-region li::before {

    content: "—";

    margin-right: 8px;

    color: var(--gold-dark);

}


.operating-connection {

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    gap: 20px;

    background: var(--gold);

    color: var(--navy);

}


.operating-connection span {

    font-size: 7px;

    font-weight: 700;

    letter-spacing: 1.5px;

    text-align: center;

}


.operating-connection strong {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 45px;

}


.connection-line {

    width: 1px;

    height: 70px;

    background: var(--navy);

}


/* =========================================
   INTERNATIONAL MARKETS
========================================= */

.international-markets {

    padding: 150px 0;

    background: var(--white);

}


.markets-heading {

    display: grid;

    grid-template-columns:
        0.35fr 1fr;

    gap: 100px;

}


.markets-heading h2 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(65px, 8vw, 115px);

    line-height: .82;

    text-transform: uppercase;

}


.markets-heading h2 span {

    display: block;

    color: var(--gold-dark);

}


.market-list {

    margin-top: 90px;

}


.market-row {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    min-height: 580px;

}


.market-row + .market-row {

    margin-top: 4px;

}


.market-row-reverse {

    direction: rtl;

}


.market-row-reverse
.market-content {

    direction: ltr;

}


.market-image {

    position: relative;

    min-height: 580px;

    background-size: cover;

    background-position: center;

}


.market-image::after {

    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            135deg,
            rgba(5,12,18,.05),
            rgba(5,12,18,.5)
        );

}


.qatar-image {

    background-image:
        url("../images/international/qatar.png");

}


.pakistan-image {

    background-image:
        url("../images/international/pakistan.png");

}


.africa-image {

    background-image:
        url("../images/international/africa.png");

}


.dubai-image {

    background-image:
        url("../images/international/dubai.png");

}


.china-image {

    background-image:
        url("../images/international/china.png");

}


.market-number {

    position: absolute;

    z-index: 2;

    top: 25px;

    left: 25px;

    width: 60px;

    height: 60px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: var(--gold);

    color: var(--navy);

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 22px;

}


.market-content {

    display: flex;

    flex-direction: column;

    justify-content: center;

    padding: 70px;

    background: var(--off-white);

}


.market-country {

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 2px;

    color: var(--gold-dark);

}


.market-content h3 {

    margin-top: 15px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(70px, 8vw, 120px);

    line-height: .8;

    font-weight: 400;

    text-transform: uppercase;

    color: var(--navy);

}


.market-content p {

    max-width: 600px;

    margin-top: 35px;

    font-size: 14px;

    line-height: 1.9;

    color: var(--dark-grey);

}


.market-focus {

    display: flex;

    flex-wrap: wrap;

    gap: 10px;

    margin-top: 35px;

    padding-top: 30px;

    border-top:
        1px solid var(--border-light);

}


.market-focus span {

    width: 100%;

    margin-bottom: 5px;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 1.5px;

    color: var(--gold-dark);

}


.market-focus strong {

    padding: 9px 12px;

    border:
        1px solid var(--border-light);

    font-size: 8px;

    font-weight: 700;

    letter-spacing: .7px;

    text-transform: uppercase;

    color: var(--navy);

}


/* =========================================
   INTERNATIONAL DELIVERY
========================================= */

.international-delivery {

    position: relative;

    min-height: 760px;

    display: flex;

    align-items: center;

    overflow: hidden;

    color: var(--white);

}


.international-delivery-background {

    position: absolute;

    inset: 0;

    background-image:
        url("../images/international/global-project.png");

    background-size: cover;

    background-position: center;

}


.international-delivery-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(5,12,18,.96),
            rgba(5,12,18,.72),
            rgba(5,12,18,.25)
        );

}


.international-delivery .container {

    position: relative;

}


.international-delivery-content {

    max-width: 1000px;

}


.international-delivery-content h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(70px, 9vw, 135px);

    line-height: .78;

    text-transform: uppercase;

}


.international-delivery-content h2 span {

    display: block;

    color: var(--gold);

}


.international-delivery-content > p {

    max-width: 680px;

    margin-top: 45px;

    font-size: 15px;

    line-height: 1.9;

    color: rgba(255,255,255,.62);

}


.international-delivery-points {

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    max-width: 750px;

    margin-top: 60px;

    border-top:
        1px solid rgba(255,255,255,.15);

    border-left:
        1px solid rgba(255,255,255,.15);

}


.international-delivery-points div {

    display: flex;

    flex-direction: column;

    gap: 15px;

    padding: 25px;

    border-right:
        1px solid rgba(255,255,255,.15);

    border-bottom:
        1px solid rgba(255,255,255,.15);

}


.international-delivery-points span {

    color: var(--gold);

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 20px;

}


.international-delivery-points strong {

    font-size: 9px;

    letter-spacing: 1px;

}


/* =========================================
   INTERNATIONAL ENQUIRY
========================================= */

.international-enquiry {

    padding: 150px 0;

    background: var(--gold);

}


.international-enquiry-grid {

    display: grid;

    grid-template-columns:
        1.2fr .8fr;

    gap: 100px;

    align-items: center;

}


.international-enquiry h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(65px, 8vw, 120px);

    line-height: .8;

    text-transform: uppercase;

    color: var(--navy);

}


.international-enquiry h2 span {

    display: block;

    color: var(--white);

}


.international-enquiry p {

    font-size: 14px;

    line-height: 1.9;

    color: var(--navy);

}


/* =========================================
   INTERNATIONAL CTA
========================================= */

.international-cta {

    padding: 150px 0;

    background: var(--navy);

    color: var(--white);

}


.international-cta-inner {

    max-width: 1000px;

}


.international-cta h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(75px, 10vw, 145px);

    line-height: .78;

    text-transform: uppercase;

}


.international-cta h2 span {

    display: block;

    color: var(--gold);

}


.international-cta p {

    max-width: 650px;

    margin-top: 35px;

    font-size: 15px;

    line-height: 1.8;

    color: rgba(255,255,255,.6);

}
/* =========================================
   PART 7
   CAREERS PAGE
========================================= */


/* =========================================
   CAREERS HERO
========================================= */

.careers-hero .page-hero-background {

    background-image:
        url("../images/careers/careers-banner.png");

}


/* =========================================
   CAREERS INTRO
========================================= */

.careers-intro {

    padding: 150px 0;

    background: var(--white);

}


.careers-intro-grid {

    display: grid;

    grid-template-columns:
        .35fr 1fr;

    gap: 100px;

}


.careers-intro h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(65px, 8vw, 115px);

    line-height: .82;

    text-transform: uppercase;

    color: var(--navy);

}


.careers-intro h2 span {

    display: block;

    color: var(--gold-dark);

}


.careers-intro p {

    max-width: 760px;

    margin-top: 30px;

    font-size: 15px;

    line-height: 1.9;

    color: var(--dark-grey);

}


/* =========================================
   CAREER VALUES
========================================= */

.careers-values {

    padding: 150px 0;

    background: var(--off-white);

}


.careers-values-heading {

    display: grid;

    grid-template-columns:
        .35fr 1fr;

    gap: 100px;

}


.careers-values-heading h2,
.career-disciplines-heading h2,
.recruitment-heading h2 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(65px, 8vw, 115px);

    line-height: .82;

    text-transform: uppercase;

}


.careers-values-heading h2 span,
.career-disciplines-heading h2 span,
.recruitment-heading h2 span {

    display: block;

    color: var(--gold-dark);

}


.career-values-grid {

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    margin-top: 90px;

}


.career-value {

    padding: 55px;

    min-height: 300px;

    background: var(--white);

    border-right:
        1px solid var(--border-light);

    border-bottom:
        1px solid var(--border-light);

}


.career-value-number {

    display: block;

    margin-bottom: 35px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 24px;

    color: var(--gold-dark);

}


.career-value h3 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 42px;

    font-weight: 400;

    text-transform: uppercase;

    color: var(--navy);

}


.career-value p {

    max-width: 520px;

    margin-top: 20px;

    font-size: 13px;

    line-height: 1.8;

    color: var(--dark-grey);

}


/* =========================================
   GLOBAL CAREERS
========================================= */

.career-global {

    position: relative;

    min-height: 760px;

    display: flex;

    align-items: center;

    overflow: hidden;

    color: var(--white);

}


.career-global-background {

    position: absolute;

    inset: 0;

    background-image:
        url("../images/careers/global-careers.png");

    background-size: cover;

    background-position: center;

}


.career-global-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(5,12,18,.96),
            rgba(5,12,18,.72),
            rgba(5,12,18,.25)
        );

}


.career-global .container {

    position: relative;

}


.career-global-content {

    max-width: 1100px;

}


.career-global-content h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(70px, 9vw, 135px);

    line-height: .78;

    text-transform: uppercase;

}


.career-global-content h2 span {

    display: block;

    color: var(--gold);

}


.career-global-content > p {

    max-width: 650px;

    margin-top: 40px;

    font-size: 15px;

    line-height: 1.9;

    color: rgba(255,255,255,.62);

}


.career-location-grid {

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    margin-top: 60px;

    border-top:
        1px solid rgba(255,255,255,.15);

    border-left:
        1px solid rgba(255,255,255,.15);

}


.career-location-grid > div {

    padding: 30px;

    min-height: 210px;

    border-right:
        1px solid rgba(255,255,255,.15);

    border-bottom:
        1px solid rgba(255,255,255,.15);

}


.career-location-grid span {

    display: block;

    margin-bottom: 25px;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 2px;

    color: var(--gold);

}


.career-location-grid strong {

    display: block;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 27px;

    line-height: .95;

    font-weight: 400;

    text-transform: uppercase;

}


.career-location-grid p {

    margin-top: 20px;

    font-size: 11px;

    line-height: 1.6;

    color: rgba(255,255,255,.5);

}


/* =========================================
   CAREER DISCIPLINES
========================================= */

.career-disciplines {

    padding: 150px 0;

    background: var(--white);

}


.career-disciplines-heading {

    display: grid;

    grid-template-columns:
        .35fr 1fr;

    gap: 100px;

}


.discipline-list {

    margin-top: 90px;

}


.discipline-item {

    display: grid;

    grid-template-columns:
        70px 1fr 1.2fr 150px;

    gap: 30px;

    align-items: center;

    padding: 35px 0;

    border-top:
        1px solid var(--border-light);

}


.discipline-item:last-child {

    border-bottom:
        1px solid var(--border-light);

}


.discipline-item > span {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 22px;

    color: var(--gold-dark);

}


.discipline-item h3 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 34px;

    font-weight: 400;

    text-transform: uppercase;

    color: var(--navy);

}


.discipline-item p {

    font-size: 12px;

    line-height: 1.7;

    color: var(--dark-grey);

}


.discipline-item a {

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    color: var(--navy);

}


.discipline-item a:hover {

    color: var(--gold-dark);

}


/* =========================================
   GRADUATE SECTION
========================================= */

.graduate-section {

    padding: 150px 0;

    background: var(--off-white);

}


.graduate-grid {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    min-height: 650px;

}


.graduate-image {

    position: relative;

    background-image:
        url("../images/careers/graduate.png");

    background-size: cover;

    background-position: center;
					
}


.graduate-image::after {

    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            135deg,
            rgba(5,12,18,.05),
            rgba(5,12,18,.45)
        );

}


.graduate-image span {

    position: absolute;

    z-index: 2;

    top: 25px;

    left: 25px;

    width: 60px;

    height: 60px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: var(--gold);

    color: var(--navy);

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 22px;

}


.graduate-content {

    display: flex;

    flex-direction: column;

    justify-content: center;

    padding: 75px;

    background: var(--white);

}


.graduate-content h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(65px, 7vw, 105px);

    line-height: .8;

    text-transform: uppercase;

    color: var(--navy);

}


.graduate-content h2 span {

    display: block;

    color: var(--gold-dark);

}


.graduate-content p {

    max-width: 600px;

    margin-top: 30px;

    font-size: 13px;

    line-height: 1.9;

    color: var(--dark-grey);

}


/* =========================================
   INTERNATIONAL ASSIGNMENTS
========================================= */

.career-assignments {

    padding: 150px 0;

    background: var(--gold);

}


.career-assignments-inner {

    max-width: 1100px;

}


.career-assignments h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(70px, 9vw, 130px);

    line-height: .78;

    text-transform: uppercase;

    color: var(--navy);

}


.career-assignments h2 span {

    display: block;

    color: var(--white);

}


.career-assignments > .container
p {

    max-width: 650px;

}


.career-assignments-inner > p {

    max-width: 650px;

    margin-top: 40px;

    font-size: 14px;

    line-height: 1.8;

    color: var(--navy);

}


.assignment-points {

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    margin-top: 60px;

}


.assignment-points div {

    display: flex;

    flex-direction: column;

    gap: 15px;

    padding: 30px;

    border-top:
        1px solid rgba(5,12,18,.2);

    border-right:
        1px solid rgba(5,12,18,.2);

}


.assignment-points div:first-child {

    border-left:
        1px solid rgba(5,12,18,.2);

}


.assignment-points strong {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 25px;

}


.assignment-points span {

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 1px;

}


/* =========================================
   RECRUITMENT PROCESS
========================================= */

.recruitment-process {

    padding: 150px 0;

    background: var(--white);

}


.recruitment-heading {

    display: grid;

    grid-template-columns:
        .35fr 1fr;

    gap: 100px;

}


.recruitment-steps {

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    margin-top: 90px;

}


.recruitment-step {

    min-height: 320px;

    padding: 40px;

    border-top:
        3px solid var(--gold);

    border-right:
        1px solid var(--border-light);

}


.recruitment-step > span {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 25px;

    color: var(--gold-dark);

}


.recruitment-step h3 {

    margin-top: 55px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 34px;

    font-weight: 400;

    text-transform: uppercase;

    color: var(--navy);

}


.recruitment-step p {

    margin-top: 20px;

    font-size: 12px;

    line-height: 1.8;

    color: var(--dark-grey);

}


/* =========================================
   OPPORTUNITIES
========================================= */

.career-opportunities {

    padding: 150px 0;

    background: var(--off-white);

}


.opportunities-header {

    display: grid;

    grid-template-columns:
        1fr .7fr;

    gap: 100px;

    align-items: end;

}


.opportunities-header h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(70px, 8vw, 120px);

    line-height: .8;

    text-transform: uppercase;

    color: var(--navy);

}


.opportunities-header h2 span {

    display: block;

    color: var(--gold-dark);

}


.opportunities-header > p {

    font-size: 13px;

    line-height: 1.8;

    color: var(--dark-grey);

}


.opportunity-table {

    margin-top: 70px;

}


.opportunity-row {

    display: grid;

    grid-template-columns:
        2fr 1fr 1fr 100px;

    gap: 25px;

    align-items: center;

    padding: 30px 0;

    border-top:
        1px solid var(--border-light);

}


.opportunity-row:last-child {

    border-bottom:
        1px solid var(--border-light);

}


.opportunity-row span {

    display: block;

    margin-bottom: 10px;

    font-size: 7px;

    font-weight: 700;

    letter-spacing: 1.5px;

    color: var(--gold-dark);

}


.opportunity-row h3 {

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: 32px;

    font-weight: 400;

    text-transform: uppercase;

    color: var(--navy);

}


.opportunity-row > div:not(:first-child) {

    font-size: 10px;

    font-weight: 600;

    color: var(--dark-grey);

}


.opportunity-row > a {

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 1px;

    text-transform: uppercase;

    color: var(--navy);

}


/* =========================================
   CAREER CTA
========================================= */

.career-cta {

    padding: 150px 0;

    background: var(--navy);

    color: var(--white);

}


.career-cta-inner {

    max-width: 1000px;

}


.career-cta h2 {

    margin-top: 20px;

    font-family: 'Barlow Condensed',
                 sans-serif;

    font-size: clamp(75px, 10vw, 145px);

    line-height: .78;

    text-transform: uppercase;

}


.career-cta h2 span {

    display: block;

    color: var(--gold);

}


.career-cta p {

    max-width: 650px;

    margin-top: 35px;

    font-size: 15px;

    line-height: 1.8;

    color: rgba(255,255,255,.6);

}


.career-cta .btn {

    margin-top: 35px;

}
/* =========================================
   PART 8
   CONTACT PAGE
========================================= */


/* =========================================
   CONTACT HERO
========================================= */

.contact-hero .page-hero-background {

    background-image:
        url("../images/contact/contact-banner.png");

}


/* =========================================
   CONTACT INTRO
========================================= */

.contact-intro {

    padding: 150px 0;

    background: var(--white);

}


.contact-intro-grid {

    display: grid;

    grid-template-columns:
        .35fr 1fr;

    gap: 100px;

}


.contact-intro h2 {

    margin-top: 20px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(65px, 8vw, 115px);

    line-height: .82;

    text-transform: uppercase;

    color: var(--navy);

}


.contact-intro h2 span {

    display: block;

    color: var(--gold-dark);

}


.contact-intro p {

    max-width: 760px;

    margin-top: 30px;

    font-size: 14px;

    line-height: 1.9;

    color: var(--dark-grey);

}


/* =========================================
   CONTACT OFFICES
========================================= */

.contact-offices {

    padding: 150px 0;

    background: var(--off-white);

}


.contact-offices-heading {

    display: grid;

    grid-template-columns:
        .35fr 1fr;

    gap: 100px;

}


.contact-offices-heading h2 {

    margin-top: 20px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(65px, 8vw, 110px);

    line-height: .8;

    text-transform: uppercase;

    color: var(--navy);

}


.contact-offices-heading h2 span {

    display: block;

    color: var(--gold-dark);

}


.office-grid {

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    margin-top: 80px;

}


.office-card {

    padding: 60px;

    min-height: 570px;

    background: var(--white);

}


.office-card-dark {

    background: var(--navy);

    color: var(--white);

}


.office-card-top {

    display: flex;

    justify-content:
        space-between;

    padding-bottom: 25px;

    border-bottom:
        1px solid var(--border-light);

}


.office-card-dark .office-card-top {

    border-color:
        rgba(255,255,255,.15);

}


.office-card-top span {

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 2px;

}


.office-card-top span:last-child {

    color: var(--gold-dark);

}


.office-card-dark
.office-card-top span:last-child {

    color: var(--gold);

}


.office-card h3 {

    margin-top: 70px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 58px;

    line-height: .85;

    font-weight: 400;

    text-transform: uppercase;

}


.office-card p {

    max-width: 550px;

    margin-top: 30px;

    font-size: 13px;

    line-height: 1.8;

    color: var(--dark-grey);

}


.office-card-dark p {

    color: rgba(255,255,255,.6);

}


.office-details {

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    margin-top: 50px;

    border-top:
        1px solid var(--border-light);

}


.office-card-dark
.office-details {

    border-color:
        rgba(255,255,255,.15);

}


.office-details div {

    padding-top: 25px;

}


.office-details div + div {

    padding-left: 25px;

    border-left:
        1px solid var(--border-light);

}


.office-card-dark
.office-details div + div {

    border-color:
        rgba(255,255,255,.15);

}


.office-details span {

    display: block;

    margin-bottom: 10px;

    font-size: 7px;

    font-weight: 700;

    letter-spacing: 1.5px;

    color: var(--gold-dark);

}


.office-card-dark
.office-details span {

    color: var(--gold);

}


.office-details strong {

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 21px;

    font-weight: 400;

    line-height: 1;

    text-transform: uppercase;

}


.office-link {

    display: inline-flex;

    gap: 15px;

    align-items: center;

    margin-top: 50px;

    padding-bottom: 10px;

    border-bottom:
        1px solid currentColor;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 1.5px;

    text-transform: uppercase;

}


/* =========================================
   PROJECT ENQUIRY
========================================= */

.project-enquiry {

    padding: 150px 0;

    background: var(--navy);

    color: var(--white);

}


.enquiry-header {

    display: grid;

    grid-template-columns:
        1fr .7fr;

    gap: 100px;

    align-items: end;

}


.enquiry-header h2 {

    margin-top: 20px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(70px, 9vw, 125px);

    line-height: .78;

    text-transform: uppercase;

}


.enquiry-header h2 span {

    display: block;

    color: var(--gold);

}


.enquiry-header > p {

    font-size: 13px;

    line-height: 1.8;

    color: rgba(255,255,255,.55);

}


/* =========================================
   FORM
========================================= */

.project-form {

    margin-top: 100px;

}


.form-section {

    padding: 65px 0;

    border-top:
        1px solid rgba(255,255,255,.12);

}


.form-section-heading {

    display: grid;

    grid-template-columns:
        70px 1fr;

    gap: 25px;

    margin-bottom: 50px;

}


.form-section-heading > span {

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 24px;

    color: var(--gold);

}


.form-section-heading small {

    display: block;

    font-size: 7px;

    font-weight: 700;

    letter-spacing: 2px;

    color: var(--gold);

}


.form-section-heading h3 {

    margin-top: 12px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 38px;

    line-height: 1;

    font-weight: 400;

    text-transform: uppercase;

}


.form-grid {

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap: 35px;

}


.form-field {

    display: flex;

    flex-direction: column;

}


.form-field.full-width {

    width: 100%;

}


.form-field label {

    margin-bottom: 12px;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    color: rgba(255,255,255,.65);

}


.form-field input,
.form-field select,
.form-field textarea {

    width: 100%;

    padding: 17px 18px;

    border:
        1px solid rgba(255,255,255,.18);

    border-radius: 0;

    outline: none;

    background:
        rgba(255,255,255,.04);

    color: var(--white);

    font-family: inherit;

    font-size: 13px;

    transition:
        border-color .3s ease,
        background .3s ease;

}


.form-field input::placeholder,
.form-field textarea::placeholder {

    color:
        rgba(255,255,255,.3);

}


.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus {

    border-color: var(--gold);

    background:
        rgba(255,255,255,.07);

}


.form-field select option {

    color: var(--navy);

}


.form-field textarea {

    resize: vertical;

    min-height: 220px;

}


/* =========================================
   FILE UPLOAD
========================================= */

.file-upload label {

    position: relative;

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    min-height: 230px;

    padding: 40px;

    text-align: center;

    border:
        1px dashed rgba(255,255,255,.25);

    cursor: pointer;

    transition:
        border-color .3s ease,
        background .3s ease;

}


.file-upload label:hover {

    border-color: var(--gold);

    background:
        rgba(255,255,255,.03);

}


.file-upload input {

    position: absolute;

    width: 1px;

    height: 1px;

    opacity: 0;

}


.upload-icon {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 55px;

    height: 55px;

    margin-bottom: 20px;

    border:
        1px solid var(--gold);

    color: var(--gold);

    font-size: 25px;

}


.file-upload strong {

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 27px;

    font-weight: 400;

    text-transform: uppercase;

}


.file-upload small {

    max-width: 500px;

    margin-top: 12px;

    font-size: 10px;

    line-height: 1.6;

    color:
        rgba(255,255,255,.4);

}


/* =========================================
   ROUTING
========================================= */

.routing-options {

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 20px;

}


.routing-option {

    position: relative;

    display: block;

    cursor: pointer;

}


.routing-option input {

    position: absolute;

    opacity: 0;

}


.routing-option > span {

    display: block;

    min-height: 180px;

    padding: 30px;

    border:
        1px solid rgba(255,255,255,.15);

    transition:
        border-color .3s ease,
        background .3s ease;

}


.routing-option:hover > span {

    border-color:
        rgba(255,255,255,.35);

}


.routing-option input:checked + span {

    border-color: var(--gold);

    background:
        rgba(210,166,72,.08);

}


.routing-option strong {

    display: block;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 27px;

    font-weight: 400;

    text-transform: uppercase;

}


.routing-option small {

    display: block;

    margin-top: 20px;

    font-size: 10px;

    line-height: 1.7;

    color:
        rgba(255,255,255,.45);

}


/* =========================================
   CONSENT
========================================= */

.form-consent {

    margin-top: 40px;

}


.form-consent label {

    display: flex;

    align-items: flex-start;

    gap: 15px;

    cursor: pointer;

}


.form-consent input {

    width: 18px;

    height: 18px;

    margin-top: 2px;

    accent-color: var(--gold);

}


.form-consent span {

    max-width: 850px;

    font-size: 10px;

    line-height: 1.7;

    color:
        rgba(255,255,255,.5);

}


.form-submit {

    display: inline-flex;

    align-items: center;

    gap: 25px;

    margin-top: 45px;

    padding: 22px 35px;

    border: none;

    cursor: pointer;

    background: var(--gold);

    color: var(--navy);

    font-family: inherit;

    font-size: 9px;

    font-weight: 800;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    transition:
        background .3s ease,
        transform .3s ease;

}


.form-submit:hover {

    background: var(--white);

    transform:
        translateY(-3px);

}


.form-submit span {

    font-size: 18px;

}


.form-note {

    margin-top: 20px;

    font-size: 9px;

    color:
        rgba(255,255,255,.3);

}


/* =========================================
   DIRECT CONTACT
========================================= */

.direct-contact {

    padding: 150px 0;

    background: var(--off-white);

}


.direct-contact-grid {

    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 100px;

}


.direct-contact h2 {

    margin-top: 20px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(65px, 8vw, 110px);

    line-height: .8;

    text-transform: uppercase;

    color: var(--navy);

}


.direct-contact h2 span {

    display: block;

    color: var(--gold-dark);

}


.direct-contact p {

    max-width: 550px;

    margin-top: 35px;

    font-size: 13px;

    line-height: 1.8;

    color: var(--dark-grey);

}


.direct-contact-details {

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap: 25px;

}


.direct-contact-details > div {

    padding: 35px;

    background: var(--white);

    border-top:
        3px solid var(--gold);

}


.direct-contact-details span {

    display: block;

    font-size: 7px;

    font-weight: 700;

    letter-spacing: 1.5px;

    color: var(--gold-dark);

}


.direct-contact-details strong {

    display: block;

    margin-top: 35px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 29px;

    font-weight: 400;

    text-transform: uppercase;

    color: var(--navy);

}


.direct-contact-details small {

    display: block;

    margin-top: 15px;

    font-size: 10px;

    line-height: 1.6;

    color: var(--dark-grey);

}


/* =========================================
   CONTACT CTA
========================================= */

.contact-cta {

    padding: 150px 0;

    background: var(--gold);

}


.contact-cta-inner {

    text-align: center;

}


.contact-cta-inner > span {

    font-size: 8px;

    font-weight: 800;

    letter-spacing: 3px;

    color: var(--navy);

}


.contact-cta h2 {

    margin: 30px auto 0;

    max-width: 1000px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(70px, 10vw, 145px);

    line-height: .78;

    text-transform: uppercase;

    color: var(--navy);

}


.contact-cta h2 strong {

    display: block;

    color: var(--white);

}


.contact-cta .btn {

    margin-top: 50px;

}
/* =========================================
   FORM STATUS
========================================= */

.form-status-wrapper {

    position: fixed;

    z-index: 9999;

    top: 100px;

    right: 25px;

    max-width: 450px;

}


.form-status {

    display: none;

    padding: 22px 25px;

    font-size: 12px;

    line-height: 1.6;

    box-shadow:
        0 15px 40px
        rgba(0,0,0,.2);

}


.form-status.success {

    display: block;

    background: var(--gold);

    color: var(--navy);

}


.form-status.error {

    display: block;

    background: #b92b2b;

    color: var(--white);

}
/* =========================================
   PART 9
   PROJECTS / CASE STUDIES
========================================= */


/* =========================================
   PROJECT HERO
========================================= */

.projects-hero .page-hero-background {

    background-image:
        url("../images/projects/projects-banner.png");

}


/* =========================================
   PROJECT INTRO
========================================= */

.projects-intro {

    padding: 150px 0;

    background: var(--white);

}


.projects-intro-grid {

    display: grid;

    grid-template-columns:
        .35fr 1fr;

    gap: 100px;

}


.projects-intro h2 {

    margin-top: 20px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(60px, 8vw, 110px);

    line-height: .82;

    text-transform: uppercase;

    color: var(--navy);

}


.projects-intro h2 span {

    display: block;

    color: var(--gold-dark);

}


.projects-intro p {

    max-width: 750px;

    margin-top: 30px;

    font-size: 14px;

    line-height: 1.9;

    color: var(--dark-grey);

}


/* =========================================
   PROJECT STATISTICS
========================================= */

.project-statistics {

    background: var(--navy);

    color: var(--white);

}


.project-stat-grid {

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

}


.project-stat {

    min-height: 220px;

    padding: 55px 40px;

    border-right:
        1px solid
        rgba(255,255,255,.12);

}


.project-stat:last-child {

    border-right: none;

}


.project-stat strong {

    display: block;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 70px;

    font-weight: 400;

    line-height: .8;

    color: var(--gold);

}


.project-stat span {

    display: block;

    margin-top: 35px;

    font-size: 7px;

    font-weight: 700;

    letter-spacing: 2px;

    color:
        rgba(255,255,255,.55);

}


/* =========================================
   PORTFOLIO
========================================= */

.project-portfolio {

    padding: 150px 0;

    background: var(--off-white);

}


.portfolio-header {

    display: grid;

    grid-template-columns:
        1fr .5fr;

    gap: 80px;

    align-items: end;

}


.portfolio-header h2 {

    margin-top: 20px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(70px, 9vw, 125px);

    line-height: .75;

    text-transform: uppercase;

    color: var(--navy);

}


.portfolio-header h2 span {

    display: block;

    color: var(--gold-dark);

}


.portfolio-header p {

    font-size: 12px;

    line-height: 1.8;

    color: var(--dark-grey);

}


/* =========================================
   FILTERS
========================================= */

.project-filters {

    display: flex;

    flex-wrap: wrap;

    gap: 10px;

    margin-top: 70px;

    padding-bottom: 35px;

    border-bottom:
        1px solid var(--border-light);

}


.project-filter {

    padding: 12px 20px;

    border:
        1px solid var(--border-light);

    background: transparent;

    cursor: pointer;

    font-family: inherit;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    color: var(--dark-grey);

    transition:
        all .3s ease;

}


.project-filter:hover,
.project-filter.active {

    border-color: var(--navy);

    background: var(--navy);

    color: var(--white);

}


/* =========================================
   PROJECT GRID
========================================= */

.project-grid {

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap: 25px;

    margin-top: 50px;

}


.project-card {

    background: var(--white);

    overflow: hidden;

}


.project-card.project-featured {

    grid-column:
        span 2;

}


.project-card.project-wide {

    grid-column:
        span 2;

}


.project-card > a {

    display: block;

}


/* =========================================
   PROJECT IMAGE
========================================= */

.project-image {

    position: relative;

    height: 500px;

    overflow: hidden;

}


.project-featured .project-image {

    height: 650px;

}


.project-wide .project-image {

    height: 580px;

}


.project-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition:
        transform .8s
        cubic-bezier(.2,.7,.2,1);

}


.project-card:hover
.project-image img {

    transform:
        scale(1.06);

}


.project-image-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(7,18,30,.75),
            transparent 55%
        );

}


.project-number {

    position: absolute;

    top: 25px;

    left: 25px;

    display: flex;

    align-items: center;

    justify-content: center;

    width: 48px;

    height: 48px;

    border:
        1px solid
        rgba(255,255,255,.45);

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 17px;

    color: var(--white);

}


.project-arrow {

    position: absolute;

    right: 25px;

    bottom: 25px;

    display: flex;

    align-items: center;

    justify-content: center;

    width: 55px;

    height: 55px;

    background: var(--gold);

    color: var(--navy);

    font-size: 20px;

    transform:
        translateY(15px);

    opacity: 0;

    transition:
        all .4s ease;

}


.project-card:hover
.project-arrow {

    transform:
        translateY(0);

    opacity: 1;

}


/* =========================================
   PROJECT CARD CONTENT
========================================= */

.project-card-content {

    padding: 35px;

}


.project-card-meta {

    display: flex;

    justify-content:
        space-between;

    gap: 20px;

    padding-bottom: 18px;

    border-bottom:
        1px solid var(--border-light);

}


.project-card-meta span {

    font-size: 7px;

    font-weight: 700;

    letter-spacing: 1.5px;

}


.project-card-meta span:first-child {

    color: var(--gold-dark);

}


.project-card h3 {

    max-width: 650px;

    margin-top: 35px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 48px;

    line-height: .88;

    font-weight: 400;

    text-transform: uppercase;

    color: var(--navy);

}


.project-card p {

    max-width: 650px;

    margin-top: 22px;

    font-size: 11px;

    line-height: 1.8;

    color: var(--dark-grey);

}


.project-link {

    display: inline-block;

    margin-top: 30px;

    padding-bottom: 8px;

    border-bottom:
        1px solid var(--navy);

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    color: var(--navy);

}


/* =========================================
   CAPABILITY STRIP
========================================= */

.project-capability {

    padding: 150px 0;

    background: var(--navy);

    color: var(--white);

}


.project-capability-grid {

    display: grid;

    grid-template-columns:
        .9fr 1fr;

    gap: 120px;

}


.project-capability h2 {

    margin-top: 20px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(65px, 8vw, 110px);

    line-height: .78;

    text-transform: uppercase;

}


.project-capability h2 span {

    display: block;

    color: var(--gold);

}


.capability-list {

    border-top:
        1px solid
        rgba(255,255,255,.15);

}


.capability-list div {

    display: grid;

    grid-template-columns: 50px 1fr;

    gap: 20px;

    align-items: center;

    padding: 24px 0;

    border-bottom:
        1px solid
        rgba(255,255,255,.15);

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 25px;

    text-transform: uppercase;

}


.capability-list span {

    font-size: 9px;

    color: var(--gold);

}


/* =========================================
   PROJECT CTA
========================================= */

.projects-cta {

    padding: 150px 0;

    background: var(--gold);

}


.projects-cta-inner {

    text-align: center;

}


.projects-cta-inner > span {

    font-size: 8px;

    font-weight: 800;

    letter-spacing: 3px;

    color: var(--navy);

}


.projects-cta h2 {

    margin-top: 30px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(70px, 10vw, 145px);

    line-height: .75;

    text-transform: uppercase;

    color: var(--navy);

}


.projects-cta h2 strong {

    display: block;

    color: var(--white);

}


.projects-cta .btn {

    margin-top: 50px;

}
/* =========================================
   PART 10
   CASE STUDY SYSTEM
========================================= */


/* =========================================
   HERO
========================================= */

.case-study-hero {

    position: relative;

    min-height: 780px;

    display: flex;

    align-items: flex-end;

    overflow: hidden;

    color: var(--white);

}


.case-study-hero-image {

    position: absolute;

    inset: 0;

}


.case-study-hero-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

}


.case-study-hero-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(5,15,25,.88),
            rgba(5,15,25,.35),
            rgba(5,15,25,.15)
        );

}


.case-study-hero-container {

    position: relative;

    z-index: 2;

    width: 100%;

    padding-bottom: 100px;

}


.case-study-breadcrumb {

    display: flex;

    gap: 15px;

    margin-bottom: 50px;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 2px;

    text-transform: uppercase;

}


.case-study-breadcrumb a {

    color: var(--gold);

}


.case-study-location {

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 3px;

    color: var(--gold);

}


.case-study-hero h1 {

    max-width: 950px;

    margin-top: 25px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(75px, 12vw, 170px);

    line-height: .72;

    font-weight: 400;

    text-transform: uppercase;

}


.case-study-hero h1 span {

    display: block;

    color: var(--gold);

}


.case-study-hero-content p {

    max-width: 550px;

    margin-top: 40px;

    font-size: 13px;

    line-height: 1.8;

    color:
        rgba(255,255,255,.75);

}


/* =========================================
   INFORMATION
========================================= */

.case-study-information {

    padding: 150px 0;

    background: var(--white);

}


.case-study-information-grid {

    display: grid;

    grid-template-columns:
        1fr .7fr;

    gap: 120px;

}


.case-study-intro h2 {

    margin-top: 25px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(65px, 8vw, 110px);

    line-height: .75;

    text-transform: uppercase;

}


.case-study-intro h2 span {

    display: block;

    color: var(--gold-dark);

}


.case-study-intro p {

    max-width: 700px;

    margin-top: 30px;

    font-size: 13px;

    line-height: 1.9;

    color: var(--dark-grey);

}


.project-details {

    border-top:
        1px solid
        var(--border-light);

}


.project-detail-row {

    display: grid;

    grid-template-columns:
        .7fr 1fr;

    gap: 20px;

    padding: 25px 0;

    border-bottom:
        1px solid
        var(--border-light);

}


.project-detail-row span {

    font-size: 7px;

    font-weight: 800;

    letter-spacing: 1.5px;

    color: var(--gold-dark);

}


.project-detail-row strong {

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 22px;

    font-weight: 400;

    text-transform: uppercase;

    color: var(--navy);

}


/* =========================================
   FEATURE IMAGE
========================================= */

.case-study-feature {

    padding-bottom: 150px;

    background: var(--white);

}


.case-study-large-image {

    height: 700px;

    overflow: hidden;

}


.case-study-large-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

}


/* =========================================
   SCOPE
========================================= */

.case-study-scope {

    padding: 150px 0;

    background: var(--off-white);

}


.case-study-scope-grid {

    display: grid;

    grid-template-columns:
        .7fr 1fr;

    gap: 120px;

}


.case-study-scope h2 {

    margin-top: 25px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(65px, 8vw, 110px);

    line-height: .75;

    text-transform: uppercase;

}


.case-study-scope h2 span {

    display: block;

    color: var(--gold-dark);

}


.scope-list {

    border-top:
        1px solid
        var(--border-light);

}


.scope-item {

    display: grid;

    grid-template-columns:
        60px 1fr;

    gap: 25px;

    padding: 35px 0;

    border-bottom:
        1px solid
        var(--border-light);

}


.scope-item > span {

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 18px;

    color: var(--gold-dark);

}


.scope-item h3 {

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 32px;

    font-weight: 400;

    text-transform: uppercase;

}


.scope-item p {

    max-width: 600px;

    margin-top: 12px;

    font-size: 11px;

    line-height: 1.8;

    color: var(--dark-grey);

}


/* =========================================
   GALLERY
========================================= */

.case-study-gallery {

    padding: 150px 0;

    background: var(--white);

}


.case-study-gallery-header {

    display: grid;

    grid-template-columns:
        1fr .5fr;

    gap: 100px;

    align-items: end;

}


.case-study-gallery-header h2 {

    margin-top: 20px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(65px, 8vw, 110px);

    line-height: .75;

    text-transform: uppercase;

}


.case-study-gallery-header h2 span {

    display: block;

    color: var(--gold-dark);

}


.case-study-gallery-header p {

    font-size: 11px;

    line-height: 1.8;

    color: var(--dark-grey);

}


.case-study-gallery-grid {

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap: 25px;

    margin-top: 70px;

}


.case-study-gallery-grid figure {

    height: 450px;

    overflow: hidden;

}


.case-study-gallery-grid figure.gallery-wide {

    grid-column:
        span 2;

    height: 600px;

}


.case-study-gallery-grid img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition:
        transform .8s ease;

}


.case-study-gallery-grid figure:hover img {

    transform:
        scale(1.04);

}


/* =========================================
   CHALLENGE
========================================= */

.case-study-challenge {

    padding: 150px 0;

    background: var(--navy);

    color: var(--white);

}


.case-study-challenge-grid {

    display: grid;

    grid-template-columns:
        .25fr 1fr;

    gap: 100px;

}


.challenge-number span {

    display: block;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 100px;

    line-height: .7;

    color: var(--gold);

}


.challenge-number small {

    display: block;

    margin-top: 35px;

    font-size: 7px;

    font-weight: 700;

    letter-spacing: 2px;

    line-height: 1.5;

}


.case-study-challenge h2 {

    max-width: 900px;

    margin-top: 25px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(60px, 8vw, 110px);

    line-height: .76;

    text-transform: uppercase;

}


.case-study-challenge h2 span {

    display: block;

    color: var(--gold);

}


.case-study-challenge p {

    max-width: 750px;

    margin-top: 35px;

    font-size: 13px;

    line-height: 1.9;

    color:
        rgba(255,255,255,.65);

}


/* =========================================
   APPROACH
========================================= */

.case-study-approach {

    padding: 150px 0;

    background: var(--off-white);

}


.approach-header {

    max-width: 900px;

}


.approach-header h2 {

    margin-top: 25px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(70px, 10vw, 130px);

    line-height: .72;

    text-transform: uppercase;

}


.approach-header h2 span {

    color: var(--gold-dark);

}


.approach-grid {

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 1px;

    margin-top: 80px;

    background:
        var(--border-light);

}


.approach-card {

    min-height: 330px;

    padding: 35px;

    background: var(--white);

}


.approach-card > span {

    font-size: 8px;

    font-weight: 800;

    color: var(--gold-dark);

}


.approach-card h3 {

    margin-top: 90px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 35px;

    font-weight: 400;

    text-transform: uppercase;

}


.approach-card p {

    margin-top: 20px;

    font-size: 10px;

    line-height: 1.8;

    color: var(--dark-grey);

}


/* =========================================
   OUTCOME
========================================= */

.case-study-outcome {

    padding: 170px 0;

    background: var(--gold);

}


.outcome-inner {

    max-width: 1000px;

}


.outcome-inner h2 {

    margin-top: 25px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(75px, 11vw, 150px);

    line-height: .7;

    text-transform: uppercase;

    color: var(--navy);

}


.outcome-inner h2 span {

    display: block;

    color: var(--white);

}


.outcome-inner p {

    max-width: 700px;

    margin-top: 50px;

    font-size: 13px;

    line-height: 1.9;

    color: var(--navy);

}


/* =========================================
   NEXT PROJECT
========================================= */

.next-project {

    background: var(--white);

}


.next-project-link {

    display: flex;

    align-items: center;

    justify-content:
        space-between;

    padding: 120px 0;

}


.next-project-link > div:first-child span {

    font-size: 8px;

    font-weight: 800;

    letter-spacing: 2px;

    color: var(--gold-dark);

}


.next-project-link h2 {

    margin-top: 20px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(70px, 10vw, 140px);

    line-height: .7;

    text-transform: uppercase;

    color: var(--navy);

}


.next-project-link h2 strong {

    display: block;

    color: var(--gold-dark);

}


.next-project-arrow {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 100px;

    height: 100px;

    border:
        1px solid
        var(--navy);

    font-size: 30px;

    transition:
        all .4s ease;

}


.next-project-link:hover
.next-project-arrow {

    background: var(--navy);

    color: var(--white);

    transform:
        rotate(45deg);

}


/* =========================================
   CTA
========================================= */

.case-study-cta {

    padding: 150px 0;

    background: var(--navy);

    color: var(--white);

    text-align: center;

}


.case-study-cta-inner > span {

    font-size: 8px;

    font-weight: 800;

    letter-spacing: 3px;

    color: var(--gold);

}


.case-study-cta h2 {

    margin-top: 30px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(70px, 10vw, 140px);

    line-height: .72;

    text-transform: uppercase;

}


.case-study-cta h2 span {

    display: block;

    color: var(--gold);

}


.case-study-cta .btn {

    margin-top: 55px;

}
/* =========================================
   PART 12
   CONTACT
========================================= */


/* =========================================
   CONTACT HERO
========================================= */

.contact-hero {

    position: relative;

    min-height: 720px;

    display: flex;

    align-items: center;

    overflow: hidden;

    color: var(--white);

}


.contact-hero-image {

    position: absolute;

    inset: 0;

}


.contact-hero-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

}


.contact-hero-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(4,15,25,.94),
            rgba(4,15,25,.60),
            rgba(4,15,25,.15)
        );

}


.contact-hero-container {

    position: relative;

    z-index: 2;

}


.contact-hero h1 {

    max-width: 1000px;

    margin-top: 30px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(80px, 12vw, 165px);

    line-height: .7;

    font-weight: 400;

    text-transform: uppercase;

}


.contact-hero h1 span {

    display: block;

    color: var(--gold);

}


.contact-hero p {

    max-width: 620px;

    margin-top: 45px;

    font-size: 13px;

    line-height: 1.9;

    color:
        rgba(255,255,255,.72);

}


.contact-hero .btn {

    margin-top: 40px;

}


/* =========================================
   CONTACT INTRO
========================================= */

.contact-intro {

    padding: 150px 0;

    background: var(--white);

}


.contact-intro-grid {

    display: grid;

    grid-template-columns: .65fr 1fr;

    gap: 120px;

}


.contact-intro h2 {

    margin-top: 25px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(70px, 9vw, 125px);

    line-height: .72;

    font-weight: 400;

    text-transform: uppercase;

}


.contact-intro h2 span {

    display: block;

    color: var(--gold-dark);

}


.contact-intro p {

    max-width: 700px;

    margin-bottom: 30px;

    font-size: 13px;

    line-height: 1.9;

    color: var(--dark-grey);

}


/* =========================================
   OFFICES
========================================= */

.contact-offices {

    padding: 150px 0;

    background: var(--off-white);

}


.contact-offices-header h2 {

    margin-top: 25px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(70px, 9vw, 125px);

    line-height: .72;

    font-weight: 400;

    text-transform: uppercase;

}


.contact-offices-header h2 span {

    color: var(--gold-dark);

}


.office-grid {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 1px;

    margin-top: 80px;

    background: var(--border-light);

}


.office-card {

    min-height: 480px;

    padding: 40px;

    background: var(--white);

}


.office-card-dark {

    background: var(--navy);

    color: var(--white);

}


.office-card-top {

    display: flex;

    justify-content: space-between;

    padding-bottom: 25px;

    border-bottom:
        1px solid
        var(--border-light);

}


.office-card-dark .office-card-top {

    border-color:
        rgba(255,255,255,.2);

}


.office-card-top span {

    font-size: 8px;

    font-weight: 800;

    letter-spacing: 2px;

    color: var(--gold-dark);

}


.office-card-dark .office-card-top span {

    color: var(--gold);

}


.office-card-content {

    padding-top: 80px;

}


.office-card h3 {

    max-width: 500px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 55px;

    line-height: .8;

    font-weight: 400;

    text-transform: uppercase;

}


.office-card p {

    max-width: 500px;

    margin-top: 25px;

    font-size: 11px;

    line-height: 1.8;

    color: var(--dark-grey);

}


.office-card-dark p {

    color:
        rgba(255,255,255,.65);

}


.office-details {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 30px;

    margin-top: 60px;

}


.office-details span {

    display: block;

    font-size: 7px;

    font-weight: 800;

    letter-spacing: 1.5px;

    color: var(--gold-dark);

}


.office-card-dark .office-details span {

    color: var(--gold);

}


.office-details strong {

    display: block;

    margin-top: 8px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 20px;

    font-weight: 400;

    text-transform: uppercase;

}


/* =========================================
   PROJECT ENQUIRY
========================================= */

.project-enquiry {

    padding: 160px 0;

    background: var(--white);

}


.project-enquiry-heading {

    max-width: 1000px;

}


.project-enquiry-heading h2 {

    margin-top: 25px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(75px, 10vw, 140px);

    line-height: .7;

    font-weight: 400;

    text-transform: uppercase;

}


.project-enquiry-heading h2 span {

    display: block;

    color: var(--gold-dark);

}


.project-enquiry-heading p {

    max-width: 650px;

    margin-top: 40px;

    font-size: 12px;

    line-height: 1.9;

    color: var(--dark-grey);

}


.project-form-layout {

    display: grid;

    grid-template-columns: 1fr .3fr;

    gap: 100px;

    margin-top: 90px;

    align-items: start;

}


.project-form-wrapper {

    padding: 55px;

    background: var(--off-white);

}


.project-form {

    display: flex;

    flex-direction: column;

    gap: 35px;

}


.project-form .form-section-title {

    margin-top: 10px;

}


.service-checkbox-grid {

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap: 10px;

    margin-top: 5px;

}


.service-checkbox {

    position: relative;

    display: flex;

    align-items: center;

    cursor: pointer;

}


.service-checkbox input {

    position: absolute;

    opacity: 0;

}


.service-checkbox span {

    width: 100%;

    padding: 17px;

    border:
        1px solid
        var(--border-light);

    background: var(--white);

    font-size: 9px;

    transition:
        all .25s ease;

}


.service-checkbox input:checked + span {

    background: var(--navy);

    color: var(--white);

    border-color: var(--navy);

}


.project-enquiry-sidebar {

    position: sticky;

    top: 120px;

}


.enquiry-sidebar-block {

    padding: 30px 0;

    border-top:
        1px solid
        var(--border-light);

}


.enquiry-sidebar-block:last-child {

    border-bottom:
        1px solid
        var(--border-light);

}


.enquiry-sidebar-block > span {

    font-size: 7px;

    font-weight: 800;

    letter-spacing: 1.5px;

    color: var(--gold-dark);

}


.enquiry-sidebar-block ol {

    margin-top: 25px;

    padding-left: 20px;

}


.enquiry-sidebar-block li {

    margin-bottom: 15px;

    font-size: 10px;

    line-height: 1.7;

    color: var(--dark-grey);

}


.enquiry-sidebar-block p {

    margin-top: 20px;

    font-size: 10px;

    line-height: 1.8;

    color: var(--dark-grey);

}


.sidebar-markets {

    display: flex;

    flex-wrap: wrap;

    gap: 7px;

    margin-top: 25px;

}


.sidebar-markets span {

    padding: 8px 10px;

    border:
        1px solid
        var(--border-light);

    font-size: 7px;

    font-weight: 800;

}


/* =========================================
   HONEYPOT
========================================= */

.form-honeypot {

    position: absolute;

    left: -9999px;

    width: 1px;

    height: 1px;

    overflow: hidden;

}


/* =========================================
   FINAL CONTACT CTA
========================================= */

.contact-final {

    padding: 160px 0;

    background: var(--gold);

}


.contact-final h2 {

    margin-top: 25px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(80px, 11vw, 150px);

    line-height: .7;

    font-weight: 400;

    text-transform: uppercase;

    color: var(--navy);

}


.contact-final h2 span {

    display: block;

    color: var(--white);

}


.contact-final .btn {

    margin-top: 45px;

}
/* =========================================
   FORM SUCCESS
========================================= */

.form-success {

    min-height: 80vh;

    display: flex;

    align-items: center;

    padding: 150px 0;

    background: var(--navy);

    color: var(--white);

}


.form-success h1 {

    max-width: 1000px;

    margin-top: 30px;

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size:
        clamp(80px, 12vw, 165px);

    line-height: .7;

    font-weight: 400;

    text-transform: uppercase;

}


.form-success h1 span {

    display: block;

    color: var(--gold);

}


.form-success p {

    max-width: 650px;

    margin-top: 45px;

    font-size: 13px;

    line-height: 1.9;

    color:
        rgba(255,255,255,.7);

}


.success-actions {

    display: flex;

    align-items: center;

    gap: 35px;

    margin-top: 45px;

}
.site-logo {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}

.site-logo img {
    display: block;
    width: auto;
    height: 58px;
    max-width: 220px;
    object-fit: contain;
}
@media (max-width: 768px) {

    .site-logo img {
        height: 48px;
        max-width: 190px;
    }

}
.footer-logo img {
    display: block;
    width: auto;
    height: 58px;
    max-width: 220px;
    object-fit: contain;
}

@media (max-width: 768px) {

    .footer-logo img {
        height: 48px;
        max-width: 190px;
    }

}
/* =========================================
   HERO SLIDER - FINAL OVERRIDE
========================================= */

.hero-slider {
    position: relative;
    width: 100%;
    height: 100vh;
    min-height: 720px;
    overflow: hidden;
    background: #08131f;
}

.hero-slider .hero-slide {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    z-index: 0;

    transition:
        opacity 0.9s ease,
        visibility 0.9s ease;
}

.hero-slider .hero-slide.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    z-index: 2;
}

.hero-slider .hero-background {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

    transform: scale(1.06);

    transition:
        transform 6.5s ease;
}

.hero-slider .hero-slide.active .hero-background {
    transform: scale(1);
}

.hero-slider .hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;

    background:
        linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.86) 0%,
            rgba(0, 0, 0, 0.62) 42%,
            rgba(0, 0, 0, 0.24) 100%
        );
}

.hero-slider .hero-container {
    position: relative;
    z-index: 3;
    height: 100%;
}

.hero-slider .hero-bottom {
    z-index: 5;
}

.hero-slider-controls,
.hero-slider-dots {
    z-index: 20;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .hero-slider {
        height: 100svh;
        min-height: 620px;
    }

    .hero-slider .hero-background {
        background-position: center center;
        transform: scale(1.03);
    }

    .hero-slider .hero-content {
        width: 100%;
        max-width: 100%;
    }

    .hero-slider .hero-slide h1 {
        font-size: clamp(46px, 13vw, 68px);
        line-height: 0.92;
        letter-spacing: -1.5px;
    }

    .hero-slider .hero-description {
        font-size: 14px;
        max-width: 100%;
    }

}
/* =========================================
   COOKIE CONSENT
========================================= */

.cookie-consent {
    position: fixed;

    left: 24px;
    right: 24px;
    bottom: 24px;

    z-index: 9998;

    background: rgba(8, 19, 31, 0.97);

    border: 1px solid rgba(255, 255, 255, 0.14);

    box-shadow:
        0 15px 45px rgba(0, 0, 0, 0.30);

    padding: 18px 22px;

    opacity: 0;
    visibility: hidden;

    transform: translateY(25px);

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;

    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}


.cookie-consent.show {
    opacity: 1;
    visibility: visible;

    transform: translateY(0);
}


.cookie-consent-content {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 30px;

    max-width: 1200px;

    margin: 0 auto;
}


.cookie-consent-text {
    flex: 1;
}


.cookie-consent-text strong {
    display: block;

    margin-bottom: 5px;

    color: var(--white);

    font-family:
        'Barlow Condensed',
        sans-serif;

    font-size: 20px;

    letter-spacing: 0.5px;
}


.cookie-consent-text p {
    margin: 0;

    color: rgba(255, 255, 255, 0.70);

    font-size: 13px;

    line-height: 1.5;
}


/* =========================================
   BUTTONS
========================================= */

.cookie-consent-actions {
    display: flex;

    align-items: center;

    gap: 10px;

    flex-shrink: 0;
}


.cookie-btn {
    min-width: 90px;

    padding: 11px 18px;

    border: 1px solid transparent;

    font-family: 'Inter', sans-serif;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 0.5px;

    text-transform: uppercase;

    cursor: pointer;

    transition:
        background 0.25s ease,
        color 0.25s ease,
        border-color 0.25s ease;
}


/* Decline */

.cookie-decline {
    background: transparent;

    color: var(--white);

    border-color:
        rgba(255, 255, 255, 0.25);
}


.cookie-decline:hover {
    background: rgba(255, 255, 255, 0.08);

    border-color:
        rgba(255, 255, 255, 0.45);
}


/* Accept */

.cookie-accept {
    background: var(--gold);

    color: var(--navy);

    border-color: var(--gold);
}


.cookie-accept:hover {
    background: #ffffff;

    border-color: #ffffff;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 700px) {

    .cookie-consent {
        left: 12px;
        right: 12px;
        bottom: 12px;

        padding: 18px;
    }


    .cookie-consent-content {
        display: block;
    }


    .cookie-consent-text {
        margin-bottom: 16px;
    }


    .cookie-consent-text strong {
        font-size: 19px;
    }


    .cookie-consent-actions {
        width: 100%;
    }


    .cookie-btn {
        flex: 1;

        min-width: 0;
    }

}