@font-face {
    font-family: "HK Grotesk";
    src: url("../fonts/hkgrotesk-regular.woff2") format("woff2");
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: "HK Grotesk";
    src: url("../fonts/hkgrotesk-semibold.woff2") format("woff2");
    font-weight: 600;
    font-display: swap;
}

@font-face {
    font-family: "HK Grotesk";
    src: url("../fonts/hkgrotesk-bold.woff2") format("woff2");
    font-weight: 700;
    font-display: swap;
}

.onz-companies-page {
    --onz-companies-ink: #172d3c;
    --onz-companies-deep: #0a202d;
    --onz-companies-paper: #f3f5f2;
    --onz-companies-soft: #e4ebe8;
    --onz-companies-white: #fff;
    --onz-companies-line: rgba(23, 45, 60, .17);
    --onz-companies-muted: #5e6f78;
    --onz-companies-accent: #f9a515;
    --onz-companies-green: #1ec999;
    color: var(--onz-companies-ink);
    background: var(--onz-companies-paper);
    font-family: "HK Grotesk", sans-serif;
}

.onz-companies-page .layout-wrapper.landing { overflow: clip; }

.onz-companies-main,
.onz-companies-main h1,
.onz-companies-main h2,
.onz-companies-main h3,
.onz-companies-main p,
.onz-companies-main a,
.onz-companies-main span,
.onz-companies-main li,
.onz-companies-main strong { font-family: "HK Grotesk", sans-serif; }

.onz-companies-shell {
    width: min(1240px, calc(100% - 48px));
    margin-inline: auto;
}

.onz-companies-page .navbar-landing > .container,
.onz-companies-page .layout-wrapper.landing > section.bg-warning > .container,
.onz-companies-page .custom-footer > .container {
    width: min(1240px, calc(100% - 48px));
    max-width: none;
    padding-inline: 0;
}

.onz-companies-page .navbar-landing {
    min-height: 72px;
    border-bottom: 1px solid rgba(23, 45, 60, .1);
    background: rgba(246, 248, 247, .95);
    box-shadow: none;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.onz-companies-kicker {
    margin: 0 0 19px;
    color: #a85f00;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .16em;
    line-height: 1.2;
    text-transform: uppercase;
}

.onz-companies-actions { display: flex; gap: 28px; align-items: center; flex-wrap: wrap; }

.onz-companies-button {
    display: inline-flex;
    min-height: 56px;
    padding: 14px 24px;
    gap: 14px;
    align-items: center;
    justify-content: center;
    border: 1px solid transparent;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    transition: color 180ms ease, background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.onz-companies-button:hover { transform: translateY(-2px); }
.onz-companies-button--accent { color: var(--onz-companies-deep); background: var(--onz-companies-accent); }
.onz-companies-button--accent:hover { color: var(--onz-companies-white); border-color: rgba(255, 255, 255, .62); background: transparent; }
.onz-companies-button--light { color: var(--onz-companies-deep); background: var(--onz-companies-white); }
.onz-companies-button--light:hover { color: var(--onz-companies-white); border-color: rgba(255, 255, 255, .62); background: transparent; }

.onz-companies-text-link {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    padding-block: 8px;
    border-bottom: 1px solid currentColor;
    color: var(--onz-companies-ink);
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    transition: color 180ms ease;
}

.onz-companies-text-link--light { color: var(--onz-companies-white); }
.onz-companies-text-link:hover { color: var(--onz-companies-accent); }
.onz-companies-button i,
.onz-companies-text-link i { transition: transform 180ms ease; }
.onz-companies-button:hover i,
.onz-companies-text-link:hover i { transform: translateX(3px); }

.onz-companies-hero {
    position: relative;
    min-height: 700px;
    overflow: hidden;
    isolation: isolate;
    color: var(--onz-companies-white);
    background: var(--onz-companies-deep);
}

.onz-companies-hero__image,
.onz-companies-hero__shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.onz-companies-hero__image {
    z-index: -2;
    object-fit: cover;
    object-position: 62% center;
    filter: saturate(.72) contrast(1.03);
    transform: scale(1.025);
}

.onz-companies-hero__shade {
    z-index: -1;
    background:
        linear-gradient(90deg, rgba(5, 24, 34, .98) 0%, rgba(5, 24, 34, .91) 43%, rgba(5, 24, 34, .52) 70%, rgba(5, 24, 34, .2) 100%),
        linear-gradient(0deg, rgba(5, 24, 34, .54) 0%, transparent 48%);
}

.onz-companies-hero__inner { display: flex; min-height: 700px; align-items: center; padding-block: 130px 70px; }
.onz-companies-hero__copy { max-width: 870px; }
.onz-companies-hero .onz-companies-kicker { color: var(--onz-companies-accent); }

.onz-companies-hero__copy > * {
    opacity: 0;
    transform: translateY(24px);
    animation: onz-companies-rise 720ms cubic-bezier(.2, .7, .2, 1) forwards;
}

.onz-companies-hero__copy > :nth-child(1) { animation-delay: 90ms; }
.onz-companies-hero__copy > :nth-child(2) { animation-delay: 200ms; }
.onz-companies-hero__copy > :nth-child(3) { animation-delay: 320ms; }
.onz-companies-hero__copy > :nth-child(4) { animation-delay: 430ms; }

.onz-companies-hero h1 {
    margin: 0;
    color: var(--onz-companies-white);
    font-size: clamp(58px, 6.4vw, 90px);
    font-weight: 600;
    letter-spacing: -.062em;
    line-height: .91;
}

.onz-companies-hero h1 span { color: var(--onz-companies-accent); }
.onz-companies-hero__copy > p:not(.onz-companies-kicker) {
    max-width: 720px;
    margin: 30px 0 36px;
    color: rgba(255, 255, 255, .83);
    font-size: 20px;
    line-height: 1.57;
}

.onz-companies-heading {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(330px, .52fr);
    gap: 86px;
    align-items: end;
    padding-bottom: 58px;
    border-bottom: 1px solid var(--onz-companies-line);
}

.onz-companies-heading h2,
.onz-companies-sectors h2,
.onz-companies-value h2,
.onz-companies-workflow h2,
.onz-companies-brand h2,
.onz-companies-final h2 {
    margin: 0;
    color: var(--onz-companies-ink);
    font-size: clamp(44px, 5.2vw, 72px);
    font-weight: 600;
    letter-spacing: -.057em;
    line-height: .96;
}

.onz-companies-heading h2 span,
.onz-companies-sectors h2 span,
.onz-companies-value h2 span,
.onz-companies-workflow h2 span,
.onz-companies-brand h2 span,
.onz-companies-final h2 span { color: #b66a00; }

.onz-companies-heading > p {
    margin: 0;
    color: var(--onz-companies-muted);
    font-size: 18px;
    line-height: 1.62;
}

.onz-companies-sectors { padding-block: 105px 116px; background: var(--onz-companies-paper); }
.onz-companies-sectors__header { max-width: 900px; }
.onz-companies-sectors__list {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    margin: 58px 0 0;
    padding: 0;
    border-top: 1px solid var(--onz-companies-line);
    border-bottom: 1px solid var(--onz-companies-line);
    list-style: none;
}

.onz-companies-sectors__list li { min-width: 0; min-height: 145px; padding: 28px 20px; border-right: 1px solid var(--onz-companies-line); }
.onz-companies-sectors__list li:first-child { padding-left: 0; }
.onz-companies-sectors__list li:last-child { padding-right: 0; border-right: 0; }
.onz-companies-sectors__list span { display: block; margin-bottom: 34px; color: #a85f00; font-size: 12px; font-weight: 700; letter-spacing: .1em; }
.onz-companies-sectors__list strong { color: var(--onz-companies-ink); font-size: 20px; font-weight: 600; line-height: 1.2; }

.onz-companies-value { padding-block: 112px 124px; color: var(--onz-companies-white); background: var(--onz-companies-deep); }
.onz-companies-value .onz-companies-kicker { color: var(--onz-companies-accent); }
.onz-companies-value__header { max-width: 980px; }
.onz-companies-value h2 { color: var(--onz-companies-white); }
.onz-companies-value h2 span { color: var(--onz-companies-accent); }
.onz-companies-value__header > p:last-child { max-width: 720px; margin: 28px 0 0; color: rgba(255, 255, 255, .72); font-size: 19px; line-height: 1.63; }
.onz-companies-value__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 70px; border-top: 1px solid rgba(255, 255, 255, .2); }
.onz-companies-value__column { padding: 36px 48px 0 0; }
.onz-companies-value__column + .onz-companies-value__column { padding-right: 0; padding-left: 48px; border-left: 1px solid rgba(255, 255, 255, .2); }
.onz-companies-value__column > span { display: block; margin-bottom: 40px; color: var(--onz-companies-accent); font-size: 13px; font-weight: 700; letter-spacing: .12em; }
.onz-companies-value__column h3 { margin: 0 0 13px; color: var(--onz-companies-white); font-size: clamp(31px, 3.5vw, 44px); font-weight: 600; letter-spacing: -.045em; }
.onz-companies-value__column > p { max-width: 520px; margin: 0 0 28px; color: rgba(255, 255, 255, .66); font-size: 17px; line-height: 1.55; }
.onz-companies-value__column ul { margin: 0; padding: 0; list-style: none; }
.onz-companies-value__column li { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 10px; padding-block: 14px; border-top: 1px solid rgba(255, 255, 255, .16); color: rgba(255, 255, 255, .86); font-size: 17px; }
.onz-companies-value__column li i { color: var(--onz-companies-green); font-size: 20px; }

.onz-companies-workflow { padding-block: 126px; background: var(--onz-companies-soft); }
.onz-companies-workflow__grid { display: grid; grid-template-columns: minmax(300px, .78fr) minmax(0, 1.22fr); gap: clamp(70px, 9vw, 140px); align-items: start; }
.onz-companies-workflow__media { position: sticky; top: 104px; margin: 0; }
.onz-companies-workflow__media img { display: block; width: 100%; height: min(700px, 72vh); object-fit: cover; object-position: center; filter: saturate(.76); }
.onz-companies-workflow__media figcaption { display: flex; gap: 18px; align-items: center; padding-top: 18px; color: var(--onz-companies-muted); font-size: 13px; }
.onz-companies-workflow__media figcaption span { color: #a85f00; font-weight: 700; }
.onz-companies-workflow__content > header > p:last-child { max-width: 680px; margin: 28px 0 48px; color: var(--onz-companies-muted); font-size: 19px; line-height: 1.62; }
.onz-companies-workflow__steps { margin: 0 0 34px; padding: 0; border-top: 1px solid var(--onz-companies-line); list-style: none; }
.onz-companies-workflow__step { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 17px; padding-block: 26px; border-bottom: 1px solid var(--onz-companies-line); }
.onz-companies-workflow__step > span { padding-top: 5px; color: #a85f00; font-size: 13px; font-weight: 700; letter-spacing: .1em; }
.onz-companies-workflow__step h3 { margin: 0 0 7px; color: var(--onz-companies-ink); font-size: 25px; font-weight: 600; letter-spacing: -.03em; }
.onz-companies-workflow__step p { margin: 0; color: var(--onz-companies-muted); font-size: 16px; line-height: 1.55; }

.onz-companies-capabilities { padding-block: 116px 126px; background: var(--onz-companies-paper); }
.onz-companies-capabilities__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-bottom: 1px solid var(--onz-companies-line); }
.onz-companies-capability { display: grid; grid-template-columns: 48px minmax(0, 1fr) 32px; gap: 16px; align-items: start; min-height: 152px; padding: 28px 36px 28px 0; border-top: 1px solid var(--onz-companies-line); }
.onz-companies-capability:nth-child(even) { padding-right: 0; padding-left: 36px; border-left: 1px solid var(--onz-companies-line); }
.onz-companies-capability > span { padding-top: 5px; color: #a85f00; font-size: 13px; font-weight: 700; }
.onz-companies-capability h3 { margin: 0 0 7px; color: var(--onz-companies-ink); font-size: 24px; font-weight: 600; letter-spacing: -.03em; }
.onz-companies-capability p { margin: 0; color: var(--onz-companies-muted); font-size: 16px; line-height: 1.5; }
.onz-companies-capability > i { color: var(--onz-companies-ink); font-size: 22px; }

.onz-companies-brand { padding-block: 112px 124px; background: var(--onz-companies-accent); }
.onz-companies-brand .onz-companies-kicker { color: var(--onz-companies-deep); }
.onz-companies-brand__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(370px, .72fr); gap: clamp(80px, 11vw, 160px); align-items: start; }
.onz-companies-brand h2 span { color: var(--onz-companies-deep); }
.onz-companies-brand__copy > p:last-child { max-width: 660px; margin: 28px 0 0; color: rgba(10, 32, 45, .75); font-size: 19px; line-height: 1.63; }
.onz-companies-brand__reasons { margin: 0; padding: 0; border-top: 1px solid rgba(10, 32, 45, .28); list-style: none; }
.onz-companies-brand__reasons li { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 14px; padding-block: 23px; border-bottom: 1px solid rgba(10, 32, 45, .28); }
.onz-companies-brand__reasons li > span { padding-top: 4px; color: var(--onz-companies-deep); font-size: 13px; font-weight: 700; }
.onz-companies-brand__reasons h3 { margin: 0 0 5px; color: var(--onz-companies-deep); font-size: 23px; font-weight: 600; letter-spacing: -.025em; }
.onz-companies-brand__reasons p { margin: 0; color: rgba(10, 32, 45, .7); font-size: 16px; line-height: 1.5; }

.onz-companies-onboarding { padding-block: 116px 126px; background: var(--onz-companies-soft); }
.onz-companies-onboarding .onz-companies-heading { border-bottom: 0; }
.onz-companies-onboarding__steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 62px 0 0; padding: 0; border-top: 1px solid var(--onz-companies-line); list-style: none; }
.onz-companies-onboarding__step { min-height: 260px; padding: 34px 28px 24px; border-right: 1px solid var(--onz-companies-line); }
.onz-companies-onboarding__step:first-child { padding-left: 0; }
.onz-companies-onboarding__step:last-child { padding-right: 0; border-right: 0; }
.onz-companies-onboarding__step > span { display: block; margin-bottom: 48px; color: #a85f00; font-size: 13px; font-weight: 700; }
.onz-companies-onboarding__step h3 { margin: 0 0 12px; color: var(--onz-companies-ink); font-size: 23px; font-weight: 600; letter-spacing: -.03em; line-height: 1.15; }
.onz-companies-onboarding__step p { margin: 0; color: var(--onz-companies-muted); font-size: 16px; line-height: 1.52; }

.onz-companies-final { padding-block: 116px 122px; color: var(--onz-companies-white); background: #152f3e; }
.onz-companies-final .onz-companies-kicker { color: var(--onz-companies-accent); }
.onz-companies-final h2 { max-width: 990px; color: var(--onz-companies-white); }
.onz-companies-final h2 span { color: var(--onz-companies-accent); }
.onz-companies-final > .onz-companies-shell > p:not(.onz-companies-kicker) { max-width: 720px; margin: 28px 0 38px; color: rgba(255, 255, 255, .75); font-size: 19px; line-height: 1.62; }

.onz-companies-motion .onz-companies-reveal { opacity: 0; transform: translateY(25px); transition: opacity 650ms ease, transform 650ms cubic-bezier(.2, .7, .2, 1); }
.onz-companies-motion .onz-companies-reveal.is-visible { opacity: 1; transform: translateY(0); }

@keyframes onz-companies-rise { to { opacity: 1; transform: translateY(0); } }

@media (max-width: 1050px) {
    .onz-companies-sectors__list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .onz-companies-sectors__list li { border-bottom: 1px solid var(--onz-companies-line); }
    .onz-companies-sectors__list li:nth-child(3n) { border-right: 0; }
    .onz-companies-onboarding__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .onz-companies-onboarding__step:nth-child(2n) { border-right: 0; }
    .onz-companies-onboarding__step:nth-child(-n+2) { border-bottom: 1px solid var(--onz-companies-line); }
}

@media (max-width: 900px) {
    .onz-companies-heading,
    .onz-companies-brand__grid { grid-template-columns: 1fr; gap: 34px; }
    .onz-companies-workflow__grid { grid-template-columns: .75fr 1fr; gap: 52px; }
    .onz-companies-workflow__media { position: static; }
}

@media (max-width: 767.98px) {
    .onz-companies-shell,
    .onz-companies-page .navbar-landing > .container,
    .onz-companies-page .layout-wrapper.landing > section.bg-warning > .container,
    .onz-companies-page .custom-footer > .container { width: min(100% - 32px, 1240px); }

    .onz-companies-hero,
    .onz-companies-hero__inner { min-height: 700px; }
    .onz-companies-hero__inner { align-items: flex-end; padding-block: 125px 62px; }
    .onz-companies-hero__image { object-position: 58% center; }
    .onz-companies-hero__shade {
        background:
            linear-gradient(0deg, rgba(5, 24, 34, .98) 0%, rgba(5, 24, 34, .91) 56%, rgba(5, 24, 34, .47) 100%),
            linear-gradient(90deg, rgba(5, 24, 34, .58), rgba(5, 24, 34, .16));
    }
    .onz-companies-hero h1 { font-size: clamp(45px, 13vw, 61px); line-height: .94; }
    .onz-companies-hero__copy > p:not(.onz-companies-kicker) { margin-block: 24px 30px; font-size: 18px; line-height: 1.5; }

    .onz-companies-heading h2,
    .onz-companies-sectors h2,
    .onz-companies-value h2,
    .onz-companies-workflow h2,
    .onz-companies-brand h2,
    .onz-companies-final h2 { font-size: clamp(40px, 12vw, 56px); }

    .onz-companies-sectors,
    .onz-companies-value,
    .onz-companies-workflow,
    .onz-companies-capabilities,
    .onz-companies-brand,
    .onz-companies-onboarding,
    .onz-companies-final { padding-block: 84px 92px; }

    .onz-companies-sectors__list { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 42px; }
    .onz-companies-sectors__list li { min-height: 122px; padding: 24px 16px; }
    .onz-companies-sectors__list li:nth-child(3n) { border-right: 1px solid var(--onz-companies-line); }
    .onz-companies-sectors__list li:nth-child(2n) { border-right: 0; }
    .onz-companies-sectors__list span { margin-bottom: 24px; }
    .onz-companies-sectors__list strong { font-size: 18px; }

    .onz-companies-value__grid { grid-template-columns: 1fr; margin-top: 52px; }
    .onz-companies-value__column { padding: 30px 0 42px; }
    .onz-companies-value__column + .onz-companies-value__column { padding: 42px 0 0; border-top: 1px solid rgba(255, 255, 255, .2); border-left: 0; }

    .onz-companies-workflow__grid { display: flex; flex-direction: column-reverse; gap: 54px; }
    .onz-companies-workflow__media img { height: 500px; object-position: center 42%; }

    .onz-companies-capabilities__list { display: block; }
    .onz-companies-capability,
    .onz-companies-capability:nth-child(even) { min-height: auto; padding: 26px 0; border-left: 0; }

    .onz-companies-onboarding__steps { display: block; margin-top: 46px; }
    .onz-companies-onboarding__step {
        display: grid;
        grid-template-columns: 46px minmax(0, 1fr);
        min-height: auto;
        padding: 28px 0;
        border-right: 0;
        border-bottom: 1px solid var(--onz-companies-line);
    }
    .onz-companies-onboarding__step:last-child { border-bottom: 0; }
    .onz-companies-onboarding__step > span { grid-row: 1 / 3; margin: 4px 0 0; }
}

@media (max-width: 460px) {
    .onz-companies-actions { flex-direction: column; align-items: flex-start; gap: 18px; }
    .onz-companies-button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
    .onz-companies-hero__copy > * { opacity: 1; transform: none; animation: none; }
    .onz-companies-button,
    .onz-companies-text-link { transition: none; }
}
