/*
Theme Name: ARG Construction
Description: Custom WordPress theme for Gibson Ads
Version: 1.0
Author: Krish Patel
*/

@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

body,
html {
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden;
    overflow-x: clip;
    background-color: #fff;
    font-weight: normal;
    font-family: "Inter", sans-serif;
}

html {
    scroll-behavior: smooth;
}

/* Prevent CSS smooth scrolling from fighting the frame-by-frame wheel engine.
   Anchor links still pass behavior: "smooth" explicitly in JavaScript. */
html.smooth-wheel-active {
    scroll-behavior: auto;
}

body {
    overscroll-behavior-y: none;
}

a {
    outline: none;
    transition: all 0.5s;
    text-decoration: none;
}

a:hover {
    text-decoration: none;
    outline: none;
    transition: all 0.5s;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    color: #f76a11;
}

a:focus {
    text-decoration: none;
    outline: none;
}

img {
    max-width: 100%;
    border: 0px;
    transition: all 0.5s;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}

iframe {
    max-width: 100%;
    border: 0px;
    width: 100%;
}

.site-header {
    width: 100%;
    background: #fff;
    padding: 20px 0px;
    position: relative;
    top: 0;
    z-index: 1000;
    transition: transform .4s ease, box-shadow .25s ease;
}

.site-header.is-hero-sticky {
    position: fixed;
    left: 0;
    right: 0;
    box-shadow: 0 3px 14px rgba(0, 0, 0, .12);
}

.site-header.is-hero-leaving {
    position: fixed;
    left: 0;
    right: 0;
    transform: translateY(-105%);
    box-shadow: none;
}

body.is-header-fixed {
    padding-top: var(--site-header-height, 127px) !important;
}

/* ============================================
   SCROLL ANIMATIONS & TEXT EFFECTS
   ============================================ */

/* Visibility-safe fade-up animation.
   Elements remain fully visible until JS adds .animate-in, so a delayed or
   failed observer can never leave site content hidden. */
.animate-on-scroll,
.site-reveal,
.site-media-reveal,
.stagger-children > * {
    opacity: 1;
    transform: none;
    clip-path: none;
}

@keyframes site-fade-up {
    from {
        opacity: 0;
        transform: translate3d(0, 38px, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes site-title-reveal {
    from {
        opacity: 0;
        clip-path: inset(0 0 100% 0);
        transform: translate3d(0, 54px, 0);
    }
    to {
        opacity: 1;
        clip-path: inset(0 0 0 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes site-image-reveal {
    from {
        opacity: .35;
        clip-path: inset(0 0 100% 0);
        transform: scale(1.055);
    }
    to {
        opacity: 1;
        clip-path: inset(0 0 0 0);
        transform: scale(1);
    }
}

.animate-on-scroll.animate-in,
.site-reveal.animate-in {
    animation: site-fade-up .9s cubic-bezier(.16, 1, .3, 1) var(--reveal-delay, 0ms) both;
}

.site-reveal--title.animate-in {
    animation-name: site-title-reveal;
    animation-duration: 1.05s;
}

.site-media-reveal.animate-in {
    animation: site-image-reveal 1.15s cubic-bezier(.16, 1, .3, 1) var(--reveal-delay, 0ms) both;
}

.stagger-children.animate-in>*:nth-child(1) {
    animation-delay: .04s;
}

.stagger-children.animate-in>*:nth-child(2) {
    animation-delay: .1s;
}

.stagger-children.animate-in>*:nth-child(3) {
    animation-delay: .16s;
}

.stagger-children.animate-in>*:nth-child(4) {
    animation-delay: .22s;
}

.stagger-children.animate-in>*:nth-child(5) {
    animation-delay: .28s;
}

.stagger-children.animate-in>*:nth-child(6) {
    animation-delay: .34s;
}

.stagger-children.animate-in>*:nth-child(7) {
    animation-delay: .4s;
}

.stagger-children.animate-in>*:nth-child(8) {
    animation-delay: .46s;
}

.stagger-children.animate-in>*:nth-child(9) {
    animation-delay: .52s;
}

.stagger-children.animate-in>*:nth-child(10) {
    animation-delay: .58s;
}

.stagger-children.animate-in>* {
    animation-name: site-fade-up;
    animation-duration: .9s;
    animation-timing-function: cubic-bezier(.16, 1, .3, 1);
    animation-fill-mode: both;
}

:target {
    scroll-margin-top: calc(var(--site-header-height, 110px) + 20px);
}

@media (prefers-reduced-motion: reduce) {
    .animate-on-scroll,
    .site-reveal,
    .site-media-reveal,
    .stagger-children > * {
        opacity: 1;
        clip-path: none;
        transform: none;
        transition: none;
        animation: none !important;
    }
}

.container,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
    max-width: 1596px;
}



.div-header {
    display: flex;
    justify-content: space-between;
}

.contactbar a {
    background-color: #f76a11;
    text-align: center;
    font-size: 22px;
    color: #ffffff;
    font-weight: 600;
    text-transform: uppercase;
    display: block;
    padding: 5px 10px;
}

.contactbar {
    display: flex;
    align-items: center;
}

/* Home hero */
.wrp-hero {
    position: relative;
    min-height: calc(100vh - 127px);
    min-height: calc(100svh - 127px);
    overflow: hidden;
    isolation: isolate;
    color: #fff;
}

.hero-media,
.hero-image,
.hero-video,
.hero-overlay {
    position: absolute;
    inset: 0;
}

.hero-media {
    z-index: -2;
    background: #222;
}

.hero-image {
    background: url('assets/images/hero-arg.jpg') center center / cover no-repeat;
}

.hero-video {
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 0;
    opacity: 0;
    transition: opacity .6s ease;
}

.hero-video.is-active {
    opacity: 1;
}

.hero-media iframe.hero-video {
    top: 50%;
    left: 50%;
    right: auto;
    bottom: auto;
    width: 177.78vh;
    height: 56.25vw;
    min-width: 100%;
    min-height: 100%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.hero-overlay {
    z-index: -1;
    background: linear-gradient(180deg, rgba(0, 0, 0, .08) 0%, rgba(0, 0, 0, .18) 42%, rgba(0, 0, 0, .94) 100%);
    pointer-events: none;
}

.hero-container {
    min-height: inherit;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-top: clamp(80px, 12vh, 150px);
    padding-right: clamp(24px, 4vw, 50px);
    padding-bottom: clamp(35px, 5vh, 72px);
    padding-left: clamp(24px, 4vw, 50px);
}

.hero-content {
    max-width: 790px;
}

.hero-content h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(54px, 5.35vw, 103px);
    font-weight: 800;
    line-height: .98;
}

.hero-actions {
    display: flex;
    gap: 40px;
    margin-top: clamp(52px, 7vh, 88px);
}

.hero-button {
    width: 208px;
    padding: 10px 18px;
    border: 3px solid #f76a11;
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
}

.hero-button--primary {
    background: #f76a11;
}

.hero-button:hover,
.hero-button:focus {
    background: #fff;
    border-color: #fff;
    color: #111;
}

.hero-links {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 32px;
}

.hero-links{
    display : none !important;
}
.hero-link {
    display: grid;
    grid-template-columns: 1fr auto;
    color: #fff;
}
.cls-title {
	z-index: 999999;
	position: absolute;
	top: 0;
	right: 0;
	color: #fff;
}
.hero-link:hover,
.hero-link:focus {
    color: #fff;
    transform: translateY(-4px);
}

.hero-link-number,
.hero-link-arrow {
    font-size: 31px;
    font-weight: 800;
    line-height: 1;
}
.cls-title {
	margin-right: 80px;
	margin-top: 12px;
	background: #f76a11;
	font-size: 14px;
	padding: 19px;
	text-transform: uppercase;
	font-weight: 600;
}

.hero-link-arrow {
    font-size: 32px;
}

.hero-link-line {
    grid-column: 1 / -1;
    position: relative;
    height: 3px;
    margin: 10px 0 12px;
    background: #f76a11;
}

.hero-link-progress {
    position: absolute;
    inset: -1px auto -1px 0;
    width: 0;
    background: #fff;
}

.hero-link--active .hero-link-progress {
    animation: hero-progress-fill var(--hero-progress-duration, 7s) linear forwards;
}

@keyframes hero-progress-fill {
    from {
        width: 0;
    }

    to {
        width: 100%;
    }
}

.hero-link-title,
.hero-link-subtitle {
    grid-column: 1 / -1;
}

.hero-link-title {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
}

/* Orange statistics strip */
.wrp-call-to-action {
    background: #f76a11;
    color: #fff;
}

.cta-container {
    min-height: 137px;
    padding-top: 0;
    padding-bottom: 0;
}

.cta-container>.row {
    min-height: 137px;
    align-items: center;
}

.cta-column {
    display: flex;
    align-items: center;
}

.cta-stat {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 18px 24px;
}

.cta-stat strong {
    color: #fff;
    font-size: clamp(42px, 3.7vw, 72px);
    font-weight: 800;
    line-height: .95;
}

.cta-stat span {
    margin-top: 7px;
    color: #fff;
    font-size: clamp(16px, 1.2vw, 23px);
    font-weight: 600;
    line-height: 1.1;
}

/* Footer */
.site-footer {
    background: #000;
    color: #fff;
}

.footer-inner {
    padding-top: clamp(70px, 8vw, 125px);
    padding-bottom: clamp(75px, 8vw, 125px);
}

.footer-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
}

.footer-cta h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(52px, 5.2vw, 100px);
    font-weight: 700;
    line-height: 1.05;
}

.footer-cta-button {
    flex: 0 0 auto;
    padding: 15px 40px;
    background: #f76a11;
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.1;
    text-transform: uppercase;
}

.footer-cta-button:hover,
.footer-cta-button:focus {
    background: #fff;
    color: #000;
}

.footer-rule {
    height: 2px;
    margin: clamp(75px, 8vw, 130px) 0 clamp(70px, 7vw, 105px);
    background: #f76a11;
    opacity: .85;
}

.footer-columns {
    display: grid;
    grid-template-columns: 1.35fr 1.35fr 1fr 1.35fr;
    gap: 48px;
}

.footer-brand img {
    width: 245px;
    max-width: 100%;
}

.footer-column {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 17px;
}

.footer-column h3 {
    margin: 0 0 8px;
    color: #f76a11;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.1;
    text-transform: uppercase;
}

.footer-column a,
.footer-column span {
    color: #eee;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.2;
    text-transform: uppercase;
}

.footer-contact a {
    text-transform: none;
}

.footer-column a:hover,
.footer-column a:focus {
    color: #f76a11;
}

.footer-bottom {
    background: #f76a11;
    color: #fff;
}

.footer-bottom .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    min-height: 60px;
}

.footer-bottom span,
.footer-bottom a {
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
}

.footer-bottom a {
    color: #000;
}

/* Home industries */
.wrp-home-industry {
    background: #101010;
    color: #fff;
}

.home-industry-container {
    padding-top: clamp(78px, 8vw, 145px);
    padding-bottom: clamp(85px, 8vw, 150px);
}

.home-industry-title {
    margin: 0;
    color: #fff;
    font-size: clamp(54px, 6vw, 100px);
    font-weight: 700;
}

.home-industry-subtitle {
    margin: clamp(44px, 4.5vw, 76px) 0 0;
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    line-height: 30px;
}

.home-industry-grid {
    margin-top: clamp(42px, 4vw, 68px);
    row-gap: clamp(27px, 2.7vw, 46px);
}

.home-industry-column {
    display: flex;
    padding: 0px 25px;
}

.home-industry-grid.animate-in .home-industry-column {
    animation-name: site-fade-up;
    animation-duration: .95s;
    animation-timing-function: cubic-bezier(.16, 1, .3, 1);
    animation-fill-mode: both;
}

.home-industry-item {
    position: relative;
    display: block;
    width: 100%;
    padding: 0 0 17px;
    border-bottom: 2px solid rgba(247, 106, 17, .38);
    color: #fff;
    font-size: clamp(32px, 2.75vw, 54px);
    font-weight: 300;
    line-height: 1.1;
    text-decoration: none;
}

.home-industry-item::after {
    position: absolute;
    right: 0;
    bottom: -2px;
    left: 0;
    height: 2px;
    background: #f76a11;
    content: '';
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform .65s cubic-bezier(.16, 1, .3, 1);
}

.home-industry-item:hover,
.home-industry-item:focus {
    color: #f76a11;
}

.home-industry-item:hover::after,
.home-industry-item:focus::after {
    transform: scaleX(1);
}

/* Why choose ARG */
.wrp-why-choose {
    background: #fff;
    color: #080808;
}

.why-choose-container {
    padding-top: clamp(75px, 8vw, 145px);
    padding-bottom: clamp(75px, 8vw, 145px);
}

.why-choose-row {
    --bs-gutter-x: clamp(50px, 8vw, 145px);
}

.why-choose-eyebrow {
    margin: 0 0 clamp(35px, 3.5vw, 58px);
    color: #080808;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.15;
    text-transform: uppercase;
}

.why-choose-title {
    margin: 0;
    color: #000;
    font-size: 100px;
    font-weight: 700;
    line-height: 1.14;
    letter-spacing: -.035em;
}

.why-choose-description {
    margin-top: clamp(45px, 4vw, 72px);
    color: #080808;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
}

.why-choose-description p {
    margin: 0;
}

.why-choose-button {
    display: inline-block;
    min-width: 278px;
    margin-top: clamp(40px, 4vw, 66px);
    padding: 17px 30px;
    background: #f76a11;
    color: #fff;
    font-size: clamp(17px, 1.25vw, 23px);
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
}

.why-choose-button:hover,
.why-choose-button:focus {
    background: #080808;
    color: #fff;
}

.why-choose-media img {
    display: block;
    width: 100%;
    min-height: 420px;
    max-height: 655px;
    object-fit: cover;
}

/* Start building */
.wrp-start-building {
    background: #f2f5f9;
    color: #000;
}

.start-building-container {
    padding-top: clamp(75px, 8vw, 145px);
    padding-bottom: clamp(75px, 8vw, 145px);
}

.start-building-row {
    --bs-gutter-x: clamp(54px, 8vw, 140px);
}

.start-building-gallery .row {
    --bs-gutter-x: 24px;
    --bs-gutter-y: 24px;
}

.start-building-gallery-cell img {
    display: block;
    width: 100%;
    height: 320px;
    object-fit: cover;
}

.start-building-title {
    margin: 0;
    color: #000;
    font-size: 90px;
    font-weight: 700;
    line-height: 1.15;
}

.start-building-description {
    margin-top: clamp(46px, 4.5vw, 78px);
    color: #080808;
    font-size: 18px;
    font-weight: 500;
    line-height: 30px;
}

.start-building-content {
    padding-left: 0px;
}

.start-building-description p {
    margin: 0;
}

.start-building-button {
    display: inline-block;
    margin-top: clamp(38px, 4vw, 66px);
    padding: 17px 31px;
    background: #f76a11;
    color: #fff;
    font-size: clamp(17px, 1.25vw, 23px);
    font-weight: 700;
    line-height: 1.1;
    text-decoration: none;
    text-transform: uppercase;
}

.start-building-button:hover,
.start-building-button:focus {
    background: #080808;
    color: #fff;
}

/* Signature projects slider */
.wrp-signature-project {
    border-top: 3px solid #f76a11;
    background: #fff;
    color: #080808;
}

.signature-container {
    padding-top: clamp(70px, 7vw, 125px);
    padding-bottom: clamp(70px, 7vw, 125px);
}

.signature-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: clamp(65px, 7vw, 110px);
}

.signature-heading h2 {
    margin: 0;
    color: #080808;
    font-size: clamp(54px, 5.4vw, 104px);
    font-weight: 800;
}

.signature-explore {
    padding: 15px 27px;
    background: #f76a11;
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.1;
    text-transform: uppercase;
}

.signature-explore:hover,
.signature-explore:focus {
    background: #080808;
    color: #fff;
}

.signature-slide {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 26px;
    min-height: 0;
}

.signature-slide[hidden] {
    display: none;
}

.signature-featured,
.signature-secondary {
    position: relative;
    display: block;
    overflow: hidden;
    background: #ddd;
}

.signature-featured {
    min-height: 580px;
}

.signature-secondary {
    min-height: 275px;
}

.signature-featured img,
.signature-secondary img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .5s ease;
}

.signature-featured:hover img,
.signature-secondary:hover img {
    transform: scale(1.04);
}

.signature-side {
    display: grid;
    grid-template-rows: repeat(2, 1fr);
    gap: 26px;
}

.signature-arrow {
    position: absolute;
    top: 18px;
    right: 18px;
    display: grid;
    width: 47px;
    height: 47px;
    place-items: center;
    border: 3px solid #f76a11;
    outline: 3px solid #f76a11;
    outline-offset: 4px;
    background: #f76a11;
    color: #fff;
    font-size: 21px;
}

.signature-dots {
    display: flex;
    justify-content: center;
    gap: 13px;
    margin-top: 58px;
}

.signature-dot {
    width: 26px;
    height: 26px;
    padding: 0;
    border: 3px solid #f76a11;
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
}

.signature-dot.is-active {
    box-shadow: inset 0 0 0 5px #fff;
    background: #f76a11;
}


.signature-project-set {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 26px;
    height:auto;
}

.signature-project-featured,
.signature-project-small,
.signature-project-mobile {
    position: relative;
    display: block;
    overflow: hidden;
    background: #ddd;
}

.signature-project-featured img,
.signature-project-small img,
.signature-project-mobile img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .5s ease;
}

.signature-project-featured:hover img,
.signature-project-small:hover img,
.signature-project-mobile:hover img {
    transform: scale(1.04);
}

.signature-mobile-carousel {
    display: none !important;
}

.signature-project-side {
    display: grid;
    grid-template-rows: repeat(2, 1fr);
    gap: 26px;
}
/*
.signature-owl-carousel .owl-nav {
    display: none !important;
}

.signature-owl-carousel .owl-prev,
.signature-owl-carousel .owl-next {
    position: absolute;
    top: 50%;
    width: 44px;
    height: 44px;
    margin: -22px 0 0;
    border: 2px solid #f76a11 !important;
    border-radius: 0 !important;
    background: #f76a11 !important;
    color: #fff !important;
    font-size: 18px !important;
}

.signature-owl-carousel .owl-prev {
    left: 0;
}

.signature-owl-carousel .owl-next {
    right: 0;
}
*/
.signature-owl-carousel .owl-dots {
    margin-top: 60px !important;
}

.signature-owl-carousel .owl-dot {
    width: 24px;
    height: 24px;
    margin: 0px auto;
    border-radius: 50%;
    text-align: center;
}

.signature-owl-carousel .owl-dot span {
    background: #fff;
    width: 14px;
    height: 14px;
    margin: 0 auto;
    border-radius: 50%;
    text-align: center;
}

.signature-owl-carousel .owl-dot.active {
    background: #f76a11 !important;
}

.signature-owl-carousel .owl-dots .owl-dot span {
    width: 16px;
    height: 16px;
    margin: 5px 5px;
    background: #f76a11 !important;
    display: block;
    -webkit-backface-visibility: visible;
    transition: opacity .2s ease;
    border-radius: 30px;
    border: 3px solid #fff;
    text-align: center;
    margin: 0 auto;
}

.hero-link-subtitle {
    margin-top: 2px;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.2;
}

#mega-menu-wrap-primary #mega-menu-primary>li.mega-menu-item>a.mega-menu-link {
    font-weight: 600 !important;
}

ul.nav-menu-footer {
    list-style: none;
    margin: 0px;
    padding: 0px;
}

ul.nav-menu-footer li {
    line-height: 2.5;
}

/* Insight page hero */
.wrp-solution-header {
    position: relative;
    display: flex;
    align-items: flex-end;
    min-height: clamp(520px, 39.6vw, 760px);
    overflow: hidden;
    isolation: isolate;
    color: #fff;
}

.wrp-solution-header::after {
    position: absolute;
    z-index: -1;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .06) 0%, rgba(0, 0, 0, .09) 20%, rgba(0, 0, 0, .99) 100%);
    content: '';
}

.wrp-solution-header .page-hero-image {
    position: absolute;
    z-index: -2;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: center;
}

.wrp-solution-header .container {
    width: 100%;
    padding-bottom: clamp(74px, 7.1vw, 136px);
}

.insight-hero-content {
    padding-left: clamp(24px, 4.6vw, 92px);
}

.insight-hero-eyebrow {
    width: min(350px, 100%);
    margin: 0 0 clamp(42px, 3vw, 58px);
    padding: 12px 20px;
    background: #f76a11;
    color: #fff;
    font-size: clamp(18px, 1.25vw, 24px);
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    text-transform: uppercase;
}

.wrp-solution-header .page-main-title {
    margin: 0;
    color: #fff;
    font-size: 100px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.025em;
}

@media (max-width: 767.98px) {
    .wrp-solution-header {
        min-height: 540px;
    }

    .wrp-solution-header .container {
        padding-bottom: 58px;
    }

    .insight-hero-content {
        padding-right: 24px;
        padding-left: 24px;
    }

    .insight-hero-eyebrow {
        width: min(280px, 100%);
        margin-bottom: 30px;
        padding: 10px 14px;
    }

    .wrp-solution-header .page-main-title {
        font-size: clamp(43px, 11vw, 62px);
        line-height: 1.08;
    }
}

.wrp-insight {
    background: #e2e2e2;
    padding: 100px 0px;
}

.wrp-insight p {
    font-size: 20px;
    line-height: 30px;
    font-weight: 500;
}

.wrp-blog-header {
    background: #0d0d0d;
    font-size: 36px;
    line-height: 60px;
    color: #ffffff;
    margin-top: 0px;
    padding: 50px 0px 100px;
}

.wrp-post-box {
    margin-top: -50px;
}

.cls-fet-img img {
    border: 4px solid #fff;
    border-radius: 10px;
}

.single .lightbox-outer {
    margin: 10px 0px;
}

.single-post-content {
    font-size: 22px;
    line-height: 48px;
    color: #000000;
    font-weight: 500;
}

.single-post-title a {
    color: #fff;
}

p.sub-desc-title {
    margin: 20px 0px;
    font-size: 18px;
    line-height: 30px;
}

a.insight-hero-eyebrow {
    width: min(350px, 100%);
    margin: 40px 20px 0px 0px;
    padding: 12px 0px;
    background: #f76a11;
    color: #fff;
    font-size: clamp(18px, 1.25vw, 24px);
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    text-transform: uppercase;
    display: inline-block;
}

/* Contact page */
.wrp-contact {
    padding: 100px 0;
}

.contact-form-content {
    max-width: 850px;
}

.contact-heading {
    gap: 30px;
    margin-bottom: 35px;
}

.contact-heading-icon {
    color: #f76a11;
    font-size: 50px;
    line-height: 1;
}

.contact-eyebrow,
.contact-detail-label,
.contact-routing h3 {
    display: block;
    color: #f76a11;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
}

.contact-heading h2 {
    margin: 12px 0 20px;
    color: #080808;
    font-size: clamp(34px, 3vw, 48px);
    font-weight: 700;
    line-height: 1.1;
}

.contact-heading p {
    max-width: 540px;
    margin: 0;
    color: #111;
    font-size: 18px;
    line-height: 1.65;
}

.contact-gravity-form .gform_wrapper {
    margin: 0;
}

.contact-gravity-form .gform_fields {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 34px;
}

.contact-gravity-form .gfield {
    grid-column: span 1;
    margin: 0 !important;
}

.contact-gravity-form .gfield:first-child,
.contact-gravity-form .gfield:nth-child(6),
.contact-gravity-form .gfield:nth-child(7) {
    grid-column: 1 / -1;
}

.contact-gravity-form .gfield_label,
.contact-gravity-form .gform-field-label {
    margin-bottom: 8px !important;
    color: #111;
    font-size: 16px !important;
    font-weight: 600 !important;
}

.contact-gravity-form .gfield_required {
    color: #f76a11 !important;
}

.contact-gravity-form input:not([type="submit"]),
.contact-gravity-form select,
.contact-gravity-form textarea {
    width: 100% !important;
    padding: 10px 16px !important;
    border: 1px solid #b8b8b8 !important;
    border-radius: 0 !important;
    box-shadow: 0 3px 4px rgba(0, 0, 0, .12) !important;
    color: #929292 !important;
    font-size: 18px !important;
    line-height: 30px !important;
    filter: drop-shadow(0px 5px 2.5px rgba(94, 95, 95, 0.25));
    height: 45px !important;
    font-weight: 500 !important;
}

.contact-gravity-form textarea {
    min-height: 105px;
    resize: vertical;
}

.contact-gravity-form input::placeholder,
.contact-gravity-form textarea::placeholder {
    color: #949494;
    opacity: 1;
}

.contact-gravity-form .gform_footer,
.contact-gravity-form .gform_footer.top_label {
    display: flex;
    align-items: center;
    gap: 18px;
    margin: 34px 0 0 !important;
    padding: 0 !important;
}

.contact-gravity-form .gform_footer::after {
    color: #8b8b8b;
    content: '🔒  Your information is secure and will never be shared.';
    font-family: "Inter", sans-serif;
    font-size: 18px;
    font-weight: 500 !important;
}

.contact-gravity-form input[type="submit"] {
    min-height: 48px;
    padding: 10px 28px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #f76a11 !important;
    color: #fff !important;
    font-size: 24px !important;
    font-weight: 500 !important;
    line-height: 1.2;
    text-transform: uppercase;
    text-transform: uppercase !important;
}

.contact-details-panel {
    height: 100%;
    padding: 36px;
    border: 1px solid #b9b9b9;
    background: #f0f3f7;
    box-shadow: 0 3px 7px rgba(0, 0, 0, .12);
}

.contact-gravity-form {
    margin-left: 60px;
}

.contact-detail {
    display: flex;
    align-items: flex-start;
    gap: 22px;
    margin-bottom: 28px;
}

.contact-detail-icon {
    display: inline-flex;
    flex: 0 0 47px;
    width: 47px;
    height: 47px;
    align-items: center;
    justify-content: center;
    border: 3px solid #f76a11;
    border-radius: 50%;
    color: #111;
    font-size: 22px;
}

.contact-detail-label {
    margin-bottom: 3px;
    font-size: 16px;
    text-transform: none;
}

.contact-detail a,
.contact-detail-text {
    display: block;
    color: #111;
    font-size: 22px;
    font-weight: 500;
    line-height: 1.25;
}

.contact-detail a:hover {
    color: #f76a11;
}

.contact-routing {
    margin-top: 36px;
    padding-top: 36px;
    border-top: 1px solid #aaa;
}

.contact-routing h3 {
    margin: 0 0 10px;
    font-size: 24px;
    font-weight: 500;
}

.contact-routing p {
    font-weight: 500;
    margin: 0 0 22px;
    color: #111;
    font-size: 18px;
    line-height: 1.55;
}

.contact-routing ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.contact-routing li {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 0 0 12px;
    color: #111;
    font-size: 18px;
    font-weight: 500;
}

.contact-routing li i {
    color: #f76a11;
    font-size: 14px;
}

@media (max-width: 991.98px) {
    .wrp-contact {
        padding: 70px 0;
    }

    .contact-form-content {
        max-width: none;
    }
}

@media (max-width: 575.98px) {
    .wrp-contact {
        padding: 52px 0;
    }

    .contact-heading {
        gap: 18px;
    }

    .contact-heading-icon {
        font-size: 36px;
    }

    .contact-gravity-form .gform_fields {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .contact-gravity-form .gfield {
        grid-column: 1 / -1;
    }

    .contact-gravity-form .gform_footer {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }

    .contact-details-panel {
        padding: 26px 20px;
    }

    .contact-detail {
        gap: 15px;
    }

    .contact-detail a,
    .contact-detail-text {
        font-size: 18px;
    }
}

/* Home page image announcement popup */
body.home-image-popup-open {
    overflow: hidden;
}

.home-image-popup {
    position: fixed;
    z-index: 99999;
    inset: 0;
    display: grid;
    padding: 24px;
    place-items: center;
    background: rgba(0, 0, 0, 0.72);
    animation: home-popup-backdrop-in 0.35s ease-out both;
}

.home-image-popup--closed {
    display: none;
}

.home-image-popup--closing {
    pointer-events: none;
    animation: home-popup-backdrop-out 0.35s ease-in both;
}

.home-image-popup--closing .home-image-popup__content {
    animation: home-popup-content-out 0.35s ease-in both;
}

.home-image-popup__content {
    position: relative;
    width: min(600px, calc(100vw - 48px));
    aspect-ratio: 1 / 1;
    border: 0;
    background: transparent;
    animation: home-popup-content-in 0.55s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.home-image-popup__content img {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    object-fit: cover;
}

.home-image-popup__close {
    position: absolute;
    z-index: 1;
    top: 10px;
    right: 10px;
    display: grid;
    width: 42px;
    height: 42px;
    padding: 0;
    place-items: center;
    overflow: hidden;
    background: #f76a11;
    border: 0;
    border-radius: 50%;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.3);
    cursor: pointer;
    transition: background-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

.home-image-popup__close span,
.home-image-popup__close span::before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 2px;
    border-radius: 2px;
    background: #fff;
    content: '';
    transform: translate(-50%, -50%) rotate(45deg);
    transition: transform 0.3s ease;
}

.home-image-popup__close span::before {
    transform: translate(-50%, -50%) rotate(90deg);
}

.home-image-popup__close:hover {
    background: #111;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
    transform: rotate(90deg) scale(1.08);
}

.home-image-popup__close:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 2px;
}

@keyframes home-popup-backdrop-in {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes home-popup-backdrop-out {
    from { opacity: 1; }
    to { opacity: 0; }
}

@keyframes home-popup-content-in {
    from {
        opacity: 0;
        transform: translateY(24px) scale(0.9);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes home-popup-content-out {
    from {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
    to {
        opacity: 0;
        transform: translateY(18px) scale(0.94);
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-image-popup,
    .home-image-popup__content {
        animation: none;
    }

    .home-image-popup__close {
        transition: none;
    }
}



.map-cnt-outer {
    display: flex;
    justify-content: space-between;
}

.map-wrapper h3 {
    font-size: 36px;
    color: #000000;
    font-weight: 700;
    margin-bottom: 20px;
}

.address-map address {
    margin: 0px;
    font-weight: 500;
}

.address-map {
    display: flex;
    font-size: 18px;
    line-height: 30px;
    color: #0d0d0d;
    gap: 20px;
    align-items: center;
}

.map-iframe iframe {
    filter: drop-shadow(0px 5px 2.5px rgba(94, 95, 95, 0.25));
    border: 1px solid #b0b0b0;
    margin-bottom: 20px !important;
    width: 100% !important;
}

.map-wrapper {
    width: 47%;
}

.wrp-map {
    border-top: 1px solid #929292;
    padding: 100px 0px;
}

.page-template-industires a.insight-hero-eyebrow,
.page-template-services a.insight-hero-eyebrow,
.post-type-archive-project a.insight-hero-eyebrow {
    width: min(400px, 100%);
    margin: 40px 0px;
}

/* Services: comprehensive services */
.wrp-comp-service {
    background: #fff;
    color: #080808;
}

.comp-service-container {
    padding-top: clamp(72px, 7.3vw, 140px);
    padding-bottom: clamp(72px, 7.3vw, 140px);
}

.comp-service-row {
    --bs-gutter-x: clamp(30px, 0.5vw, 30px);
}

.comp-service-title {
    margin: 0;
    color: #080808;
    font-size: 60px;
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -.035em;
}

.comp-service-description {
    margin-top: 20px;
    color: #111;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.7;
}

.comp-service-description p {
    margin: 0 0 28px;
}

.comp-service-description p:last-child {
    margin-bottom: 0;
}

.comp-service-media img {
    display: block;
    width: 100%;
    min-height: 370px;
    max-height: 475px;
    object-fit: cover;
}

@media (max-width: 991.98px) {
    .comp-service-row {
        --bs-gutter-y: 45px;
    }

    .comp-service-description {
        margin-top: 34px;
    }

    .comp-service-media img {
        max-height: 560px;
    }
}

@media (max-width: 575.98px) {
    .comp-service-container {
        padding-top: 55px;
        padding-bottom: 55px;
    }

    .comp-service-description {
        font-size: 16px;
        line-height: 1.65;
    }

    .comp-service-description p {
        margin-bottom: 22px;
    }

    .comp-service-media img {
        min-height: 250px;
    }
}

/* Services: capability */
.wrp-capability {
    background: #000;
    color: #fff;
}

.capability-panel {
    display: flex;
    background: #000;
}

.capability-panel-inner {
    width: min(100%, 800px);
    margin-left: auto;
    padding: 100px 0px;
}

.capability-panel h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(46px, 3.2vw, 60px);
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -.035em;
}

.capability-list {
    display: grid;
    gap: clamp(29px, 2.2vw, 43px);
    margin-top: clamp(40px, 3vw, 57px);
}

.capability-item {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    align-items: start;
    gap: 28px;
}

.capability-item>img {
    width: 72px;
    max-height: 72px;
    object-fit: contain;
    object-position: center;
}

.capability-label {
    display: block;
    margin-bottom: 7px;
    color: #f76a11;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.2;
    text-transform: uppercase;
}

.capability-item strong {
    display: block;
    color: #fff;
    font-size: clamp(34px, 2.2vw, 43px);
    font-weight: 500;
    line-height: 1.12;
}

.capability-item p {
    margin: 10px 0 0;
    color: #fff;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.4;
}

.capability-item .capability-statement {
    font-size: clamp(28px, 2vw, 40px);
    font-weight: 500;
    line-height: 1.22;
}

.capability-media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 675px;
    object-fit: cover;
    object-position: center;
}

@media (max-width: 1199.98px) {
    .capability-panel-inner {
        padding-right: 48px;
    }

    .capability-item {
        grid-template-columns: 62px minmax(0, 1fr);
        gap: 21px;
    }

    .capability-item>img {
        width: 62px;
        max-height: 62px;
    }

    .capability-media img {
        min-height: 620px;
    }
}

@media (max-width: 991.98px) {
    .capability-panel-inner {
        width: min(100%, 760px);
        margin-right: auto;
        padding: 70px 30px;
    }

    .capability-media img {
        height: auto;
        min-height: 450px;
        max-height: 650px;
    }
}

@media (max-width: 575.98px) {
    .capability-panel-inner {
        padding: 55px 24px;
    }

    .capability-list {
        gap: 32px;
    }

    .capability-item {
        grid-template-columns: 52px minmax(0, 1fr);
        gap: 16px;
    }

    .capability-item>img {
        width: 52px;
        max-height: 52px;
    }

    .capability-label {
        font-size: 14px;
    }

    .capability-item p {
        font-size: 15px;
    }

    .capability-media img {
        min-height: 300px;
    }
}

/* Services: service cards */
.wrp-our-services {
    background: #fff;
}

.our-services-container {
    padding-top: clamp(72px, 7vw, 132px);
    padding-bottom: clamp(72px, 7vw, 132px);
}

.our-services-title {
    position: relative;
    width: max-content;
    max-width: 100%;
    margin: 0 auto clamp(52px, 5vw, 95px);
    padding-bottom: 20px;
    color: #080808;
    font-size: clamp(38px, 3.2vw, 62px);
    font-weight: 700;
    line-height: 1.1;
}

.our-services-title::after {
    position: absolute;
    right: 50%;
    bottom: 0;
    width: min(100%, 600px);
    height: 2px;
    background: #f76a11;
    content: '';
    transform: translateX(50%);
}

.our-services-grid {
    --bs-gutter-x: 28px;
    --bs-gutter-y: 28px;
}

.service-card {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    width: 100%;
    min-height: 580px;
    padding: 38px;
    border: 2px solid #505050;
    color: #111;
}

.service-card-heading {
    display: flex;
    align-items: center;
    gap: 15px;
}

.service-card-heading>i {
    flex: 0 0 37px;
    color: #f76a11;
    font-size: 35px;
    text-align: center;
}

.service-card-heading h3 {
    margin: 0;
    color: #111;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    border-bottom: 2px solid #f76a11;
    padding-bottom: 15px;
    display: block;
    width: 100%;
}

.service-card-body {
    flex: 1 1 auto;
    padding: 14px 50px 25px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.65;
}

.service-card-body p {
    margin: 0 0 20px;
}

.service-card-body ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.service-card-body li {
    position: relative;
    margin: 0 0 7px;
    padding-left: 9px;
}

.service-card-body li::before {
    position: absolute;
    left: -5px;
    content: '•';
}

.service-card-link {
    display: inline-flex;
    align-items: center;
    gap: 28px;
    align-self: flex-start;
    color: #111;
    font-size: 16px;
    font-weight: 700;
}

.service-card-link i {
    color: #f76a11;
    font-size: 30px;
    transition: transform .25s ease;
}

.service-card-link:hover,
.service-card-link:focus {
    color: #111;
}

.service-card-link:hover i,
.service-card-link:focus i {
    transform: translateX(7px);
}

@media (max-width: 1199.98px) {
    .service-card {
        min-height: 530px;
    }
}

@media (max-width: 575.98px) {
    .our-services-container {
        padding-top: 55px;
        padding-bottom: 55px;
    }

    .service-card {
        min-height: 0;
        padding: 26px 22px;
    }

    .service-card-body {
        padding: 18px 0 28px;
    }

    .service-card-heading>i {
        flex-basis: 30px;
        font-size: 29px;
    }

    .service-card-heading h3 {
        font-size: 17px;
    }
}

.page-template-industires .why-choose-description p {
    margin-bottom: 15px;
}

/* Who we are hero links */
.whoweare .whoweare-hero-row {
    --bs-gutter-x: clamp(35px, 6vw, 115px);
}

.whoweare .whoweare-hero-links {
    display: grid;
    gap: 30px;
    max-width: 485px;
    margin: 0 0 6px auto;
}

.whoweare .page-main-title {
    font-size: 90px;
}

.whoweare .whoweare-hero-links a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding-top: 10px;
    border-top: 2px solid #f76a11;
    color: #fff;
    font-size: clamp(18px, 1.35vw, 26px);
    font-weight: 400;
    line-height: 1.2;
}

.whoweare .whoweare-hero-links a i {
    color: #fff;
    font-size: 24px;
    transition: transform .25s ease;
    transform: rotate(45deg);
}

.whoweare .whoweare-hero-links a:hover,
.whoweare .whoweare-hero-links a:focus {
    color: #f76a11;
}

.whoweare .whoweare-hero-links a:hover i,
.whoweare .whoweare-hero-links a:focus i {
    color: #f76a11;
    transform: translateX(6px);
}

/* Who we are: project consultation CTA */
.wrp-have-project-in-mind {
    background: #f76a11;
    color: #fff;
}

.have-project-container {
    padding-top: 40px;
    padding-bottom: 40px;
}

.have-project-title {
    margin: 0;
    color: #fff;
    font-size: clamp(34px, 2.5vw, 48px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.03em;
}

.have-project-button {
    display: inline-block;
    min-width: 368px;
    padding: 14px 32px;
    background: #000;
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    text-transform: uppercase;
}

.have-project-button:hover,
.have-project-button:focus {
    background: #fff;
    color: #000;
}

@media (max-width: 991.98px) {
    .have-project-container {
        padding-top: 36px;
        padding-bottom: 36px;
    }
}

@media (max-width: 575.98px) {
    .have-project-container {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .have-project-title {
        font-size: 32px;
    }

    .have-project-button {
        min-width: 0;
        width: 100%;
        max-width: 368px;
        font-size: 16px;
    }
}

/* Who we are: commercial introduction */
.wrp-commercial {
    background: #fff;
    color: #111;
}

.commercial-container {
    padding-top: clamp(75px, 6vw, 116px);
    padding-bottom: clamp(75px, 6vw, 116px);
}

.commercial-row {
    --bs-gutter-x: clamp(48px, 7vw, 134px);
}

.commercial-content {
    max-width: 710px;
}

.commercial-title {
    margin: 0;
    color: #111;
    font-size: clamp(56px, 5vw, 96px);
    font-weight: 700;
    line-height: 1.24;
    letter-spacing: -.035em;
}

.commercial-lead {
    max-width: 680px;
    margin: clamp(42px, 3.5vw, 65px) 0 0;
    color: #111;
    font-size: clamp(22px, 1.35vw, 27px);
    font-weight: 700;
    line-height: 1.35;
}

.commercial-description {
    max-width: 700px;
    margin: clamp(35px, 2.8vw, 52px) 0 0;
    color: #111;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.7;
}

.commercial-image {
    display: block;
    width: 100%;
    min-height: 570px;
    height: min(38vw, 733px);
    object-fit: cover;
}

@media (max-width: 991.98px) {
    .commercial-row {
        --bs-gutter-y: 45px;
    }

    .commercial-content,
    .commercial-lead,
    .commercial-description {
        max-width: none;
    }

    .commercial-image {
        height: auto;
        min-height: 400px;
        max-height: 650px;
    }
}

@media (max-width: 575.98px) {
    .commercial-container {
        padding-top: 55px;
        padding-bottom: 55px;
    }

    .commercial-title {
        font-size: clamp(46px, 14vw, 64px);
        line-height: 1.15;
    }

    .commercial-lead {
        margin-top: 32px;
        font-size: 21px;
    }

    .commercial-description {
        margin-top: 28px;
        font-size: 16px;
        line-height: 1.65;
    }

    .commercial-image {
        min-height: 270px;
    }
}

/* Who we are: ARG approach accordion */
.wrp-why-arg {
    background: #f0f3f5;
    color: #111;
}

.why-arg-container {
    padding: clamp(75px, 6vw, 116px) clamp(24px, 2.9vw, 56px) clamp(75px, 6vw, 116px);
}

.why-arg-title {
    margin: 0;
    color: #111;
    font-size: clamp(58px, 5vw, 96px);
    font-weight: 700;
    letter-spacing: -.04em;
}

.why-arg-lead {
    margin: clamp(45px, 3.4vw, 65px) 0 0;
    color: #111;
    font-size: clamp(24px, 1.45vw, 28px);
    font-weight: 700;
    line-height: 1.3;
}

.why-arg-intro {
    max-width: 690px;
    margin: clamp(35px, 2.7vw, 52px) 0 0;
    color: #111;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.65;
}

.why-arg-accordion {
    margin-top: 35px;
    border-top: 2px solid #f76a11;
    --bs-accordion-border-radius: 0;
    --bs-accordion-inner-border-radius: 0;
}

.why-arg-item {
    border: 0;
    border-bottom: 2px solid #f76a11;
    background: transparent;
}

.why-arg-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 25px 24px;
    background: transparent;
    box-shadow: none;
    color: #111;
    font-size: clamp(27px, 1.65vw, 32px);
    font-weight: 600;
    line-height: 1.1;
}

.why-arg-toggle:not(.collapsed),
.why-arg-toggle:focus,
.why-arg-toggle:hover {
    background: transparent;
    box-shadow: none;
    color: #111;
}

.why-arg-toggle::after {
    display: none;
}

.why-arg-icon {
    position: relative;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 0;
    color: #222;
    font-size: 40px;
}

.why-arg-icon i {
    position: absolute;
    top: 50%;
    left: 50%;
    transition: opacity .25s ease, transform .3s ease;
}

.why-arg-icon .fa-circle-plus {
    transform: translate(-50%, -50%) rotate(0deg);
}

.why-arg-icon .fa-circle-minus {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(-90deg);
}

.why-arg-toggle:not(.collapsed) .fa-circle-plus {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(90deg);
}

.why-arg-toggle:not(.collapsed) .fa-circle-minus {
    opacity: 1;
    transform: translate(-50%, -50%) rotate(0deg);
}

.why-arg-body {
    max-width: 650px;
    padding: 0 24px 32px;
    color: #111;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.4;
}

.why-arg-body p {
    margin: 0;
}

@media (max-width: 991.98px) {
    .why-arg-accordion {
        margin-top: 45px;
    }
}

@media (max-width: 575.98px) {
    .why-arg-container {
        padding-top: 58px;
        padding-bottom: 58px;
    }

    .why-arg-toggle {
        padding: 22px 0;
        font-size: 18px;
    }

    .why-arg-icon {
        flex-basis: 32px;
        width: 32px;
        height: 32px;
        font-size: 32px;
    }

    .why-arg-body {
        padding-right: 0;
        padding-left: 0;
        font-size: 17px;
    }
}

/* Who we are: leadership team */
.wrp-leadership-team {
    background: #111;
    color: #fff;
}

.leadership-container {
    padding: clamp(75px, 5.8vw, 112px) clamp(24px, 1.4vw, 27px) clamp(75px, 5.8vw, 112px);
}

.leadership-title {
    margin: 0;
    color: #fff;
    font-size: clamp(54px, 5vw, 96px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: -.04em;
}

.leadership-intro {
    margin: clamp(24px, 2vw, 38px) 0 0;
    color: #fff;
    font-size: clamp(22px, 1.55vw, 30px);
    font-weight: 500;
    line-height: 1.25;
}

.leadership-grid {
    --bs-gutter-x: 18px;
    --bs-gutter-y: clamp(46px, 3.4vw, 65px);
    margin-top: clamp(44px, 2.8vw, 54px);
}

.leadership-column {
    flex: 0 0 20%;
    max-width: 20%;
}

.leadership-card {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    color: #fff;
    text-align: left;
}

.leadership-photo {
    position: relative;
    display: block;
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

.leadership-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s ease;
}

.leadership-photo i {
    position: absolute;
    right: 16px;
    bottom: 15px;
    color: #f76a11;
    font-size: 24px;
    transform: rotate(45deg);
    transition: transform .3s ease;
}

.leadership-meta {
    display: block;
    margin-top: 47px;
    padding-top: 8px;
    border-top: 2px solid #f76a11;
}

.leadership-name,
.leadership-role {
    display: block;
}

.leadership-name {
    color: #fff;
    font-size: clamp(19px, 1.25vw, 24px);
    font-weight: 700;
    line-height: 1.1;
}

.leadership-role {
    margin-top: 2px;
    color: #fff;
    font-size: clamp(15px, 1vw, 19px);
    font-weight: 400;
    line-height: 1.2;
}

.leadership-card:hover .leadership-photo img,
.leadership-card:focus-visible .leadership-photo img {
    transform: scale(1.06);
}

.leadership-card:hover .leadership-photo i,
.leadership-card:focus-visible .leadership-photo i {
    transform: translate(5px, -5px) rotate(45deg);
}

.leadership-card:focus-visible {
    outline: 2px solid #f76a11;
    outline-offset: 5px;
}

.leadership-modal .modal-content {
    border: 0;
    border-radius: 0;
    background: #111;
    color: #fff;
}

.leadership-modal-close {
    position: absolute;
    top: clamp(20px, 3vw, 56px);
    right: clamp(20px, 3vw, 56px);
    z-index: 10;
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    border: 2px solid #f76a11;
    border-radius: 50%;
    background: #111;
    color: #fff;
    font-size: 25px;
    cursor: pointer;
    pointer-events: auto;
}

.leadership-modal .modal-body {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
    min-height: 100vh;
    padding: 0;
}

.leadership-modal-media {
    min-height: 100%;
    background: #fff;
}

.leadership-modal-media img {
    width: 100%;
    height: 100%;
    min-height: 100vh;
    object-fit: cover;
}

.leadership-modal-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 620px;
    padding: clamp(100px, 10vw, 190px) clamp(35px, 6vw, 115px);
}

.leadership-modal-role {
    color: #f76a11;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.leadership-modal-copy h2 {
    margin: 14px 0 30px;
    color: #fff;
    font-size: clamp(48px, 2.3vw, 72px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: -.04em;
}

.leadership-modal-copy p {
    color: #fff;
    font-size: clamp(14px, 1.10vw, 15px);
    font-weight: 500;
    line-height: 1.3;
}

@media (max-width: 991.98px) {
    .leadership-column {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }
}

@media (max-width: 767.98px) {
    .leadership-modal .modal-body {
        display: block;
    }

    .leadership-modal-media img {
        min-height: 45vh;
    }

    .leadership-modal-copy {
        max-width: none;
        min-height: 55vh;
    }
}

@media (max-width: 575.98px) {
    .leadership-container {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .leadership-column {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .leadership-grid {
        --bs-gutter-y: 38px;
    }

    .leadership-meta {
        margin-top: 25px;
    }
}

/* Who we are: certifications and affiliations */
.wrp-certification {
    border-top: 2px solid #f76a11;
    background: #fff;
    color: #111;
}

#why-arg-construction,
#leadership-team,
#safety-accountability {
    scroll-margin-top: var(--site-header-height, 127px);
}

.certification-container {
    padding: clamp(52px, 3.2vw, 60px) clamp(24px, 2.9vw, 56px) clamp(52px, 3.2vw, 60px);
}

.certification-title {
    margin: 0;
    color: #111;
    font-size: clamp(38px, 2.6vw, 50px);
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -.035em;
}

.certification-intro {
    margin: 33px 0 0;
    color: #111;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.65;
}

.certification-groups {
    margin-top: clamp(50px, 3.4vw, 65px);
    --bs-gutter-x: clamp(38px, 5.1vw, 98px);
}

.certification-group-title {
    display: grid;
    grid-template-columns: minmax(45px, 1fr) auto minmax(45px, 1fr);
    align-items: center;
    gap: clamp(18px, 3.1vw, 60px);
    margin: 0;
    color: #111;
    font-size: clamp(19px, 1.35vw, 26px);
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    text-transform: uppercase;
}

.certification-group-title span {
    height: 2px;
    background: #f76a11;
}

.certification-badges {
    --bs-gutter-x: 18px;
    --bs-gutter-y: 35px;
    margin-top: clamp(42px, 2.75vw, 53px);
}

.certification-badges>div {
    text-align: center;
}

.certification-badge {
    width: clamp(78px, 5.7vw, 108px);
    aspect-ratio: 1.06 / 1;
    margin: 0 auto;
    /*background: #202020;
    clip-path: polygon(50% 0, 100% 37%, 80% 100%, 20% 100%, 0 37%);*/
}

.certification-badges p {
    margin: 23px 0 0;
    color: #111;
    font-size: clamp(15px, 1vw, 19px);
    font-weight: 500;
    line-height: 1.55;
}

@media (max-width: 991.98px) {
    .certification-groups {
        --bs-gutter-y: 55px;
    }
}

@media (max-width: 575.98px) {
    .certification-container {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .certification-intro {
        margin-top: 24px;
        font-size: 16px;
    }

    .certification-group-title {
        grid-template-columns: minmax(22px, 1fr) auto minmax(22px, 1fr);
        gap: 12px;
        font-size: 18px;
    }
}

@media (max-width: 991.98px) {
    .whoweare .whoweare-hero-links {
        max-width: 100%;
        margin: 46px 0 0;
    }
}

@media (max-width: 575.98px) {
    .whoweare .whoweare-hero-links {
        gap: 16px;
        margin-top: 34px;
    }

    .whoweare .whoweare-hero-links a {
        padding-top: 9px;
        font-size: 18px;
    }

    .whoweare .whoweare-hero-links a i {
        font-size: 18px;
    }
}

/* Services: industries we serve */
.wrp-we-serve {
    background: #fff;
}

.we-serve-container {
    padding-top: 0px;
    padding-bottom: clamp(72px, 7vw, 132px);
}

.we-serve-title {
    position: relative;
    width: max-content;
    max-width: 100%;
    margin: 0 auto clamp(52px, 5vw, 94px);
    padding-bottom: 20px;
    color: #080808;
    font-size: clamp(38px, 3.2vw, 62px);
    font-weight: 700;
    line-height: 1.1;
}

.we-serve-title::after {
    position: absolute;
    right: 50%;
    bottom: 0;
    width: min(100%, 625px);
    height: 3px;
    background: #f76a11;
    content: '';
    transform: translateX(50%);
}

.we-serve-grid {
    --bs-gutter-x: 22px;
    --bs-gutter-y: 22px;
}

.industry-card {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    width: 100%;
    border: 2px solid #4d4d4d;
    background: transparent;
}

.industry-card-image {
    min-height: 192px;
    background: #515151;
}

.industry-card-content {
    min-height: 198px;
    padding: 21px 18px 25px;
}

.industry-card-heading {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-bottom: 10px;
}

.industry-card-heading img {
    flex: 0 0 39px;
    width: 39px;
    height: 39px;
    object-fit: contain;
}

.industry-card-heading h3 {
    margin: 0;
    color: #111;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    border-bottom: 2px solid #f76a11;
    padding-bottom: 10px;
    display: block;
    width: 100%;
}

.industry-card-description {
    margin: 12px 0 0 51px;
    color: #111;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
}

.industry-card-description p {
    margin: 0;
    color: inherit;
    font: inherit;
}

@media (max-width: 1199.98px) {
    .industry-card-image {
        min-height: 220px;
    }
}

@media (max-width: 991.98px) {
    .industry-card-image {
        min-height: 250px;
    }
}

@media (max-width: 575.98px) {
    .we-serve-container {
        padding-top: 55px;
        padding-bottom: 55px;
    }

    .industry-card-image {
        min-height: 205px;
    }

    .industry-card-content {
        min-height: 0;
    }

    .industry-card-content p {
        margin-left: 0;
        font-size: 15px;
    }
}

.wrp-com-2 {
    background: #f0f3f5;
}

/* Careers page */
#our-culture,
#benefits,
#open-positions {
    scroll-margin-top: 30px;
}

/* Projects CPT archive and single */
.projects-archive-hero { background: #111; color: #fff; }
.projects-archive-hero .container { padding-top: clamp(70px, 8vw, 140px); padding-bottom: clamp(70px, 8vw, 140px); }
.projects-archive-hero span, .single-project-category { color: #f76a11; font-size: 15px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.projects-archive-hero h1 { margin: 18px 0 22px; font-size: clamp(54px, 7vw, 112px); font-weight: 800; line-height: .95; }
.projects-archive-hero p { max-width: 650px; margin: 0; color: #ddd; font-size: 18px; line-height: 1.6; }
.projects-archive-container { padding-top: clamp(65px, 7vw, 120px); padding-bottom: clamp(65px, 7vw, 120px); }
.projects-archive-grid { --bs-gutter-x: 24px; --bs-gutter-y: 45px; }
.project-archive-card { display: flex; width: 100%; flex-direction: column; background: #fff; }
.project-archive-image { position: relative; display: block; height: 360px; overflow: hidden; background: #242424; }
.project-archive-image img, .project-image-placeholder { display: grid; width: 100%; height: 100%; place-items: center; object-fit: cover; transition: transform .4s; }
.project-image-placeholder { color: #f76a11; font-size: 55px; }
.project-archive-card:hover .project-archive-image img { transform: scale(1.04); }
.project-card-arrow { position: absolute; right: 20px; bottom: 20px; display: grid; width: 48px; height: 48px; place-items: center; border-radius: 50%; background: #f76a11; color: #111; }
.project-archive-copy { display: flex; flex: 1; flex-direction: column; padding: 26px 0 0; border-top: 3px solid #f76a11; }
.project-card-category { color: #f76a11; font-size: 12px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.project-archive-copy h2 { margin: 11px 0 15px; font-size: clamp(25px, 2vw, 34px); font-weight: 800; line-height: 1.12; }
.project-archive-copy h2 a { color: #111; text-decoration: none; }
.project-archive-copy p { margin: 0 0 20px; color: #555; line-height: 1.6; }
.project-card-link { margin-top: auto; color: #111; font-size: 13px; font-weight: 800; text-decoration: none; text-transform: uppercase; }
.project-card-link i { margin-left: 8px; color: #f76a11; }
.projects-pagination { margin-top: 70px; }
.projects-pagination .page-numbers { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin: 0; padding: 0; list-style: none; }
.projects-pagination a, .projects-pagination span { display: grid; min-width: 42px; min-height: 42px; place-items: center; padding: 8px 13px; border: 1px solid #bbb; color: #111; text-decoration: none; }
.projects-pagination .current, .projects-pagination a:hover { border-color: #f76a11; background: #f76a11; }
.projects-empty { padding: 60px 0; text-align: center; }

/* Project status carousels */
.projects-status-sections { background: #fff; }
.project-status-container {
    padding-top: clamp(65px, 6vw, 105px);
    padding-bottom: clamp(25px, 3vw, 50px);
}
.project-status-section:last-child .project-status-container {
    padding-top: clamp(35px, 4vw, 70px);
    padding-bottom: clamp(75px, 7vw, 125px);
}
.project-status-heading {
    margin: 0 0 38px;
    padding-bottom: 13px;
    border-bottom: 2px solid #f76a11;
    color: #111;
    font-size: clamp(28px, 2.4vw, 42px);
    font-weight: 800;
    line-height: 1.1;
    text-transform: uppercase;
}
.project-status-carousel { position: relative; }
.project-status-card {
    height: 100%;
    overflow: hidden;
    border: 1px solid #ddd;
    background: #fff;
    box-shadow: 0 3px 8px rgba(0,0,0,.14);
    filter: drop-shadow(2.5px 4.33px 2.5px rgba(94,95,95,0.25));
}
.project-status-image {
    position: relative;
    display: block;
    height: 330px;
    overflow: hidden;
    background: #555;
}
.project-status-image img,
.project-status-placeholder {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s;
}
.project-status-card:hover .project-status-image img { transform: scale(1.035); }
.project-progress-badge {
    position: absolute;
    top: 17px;
    left: 17px;
    padding: 8px 13px;
    background: #f76a11;
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
}
.project-status-content {
    min-height: 178px;
    padding: 25px 28px 28px;
}
.project-status-content h3 {
    margin: 0;
    font-size: 18px;
    font-weight: 800;
    line-height: 30px;
    color:#0d0d0d;
}
.project-status-content h3 a { color: #0d0d0d; text-decoration: none; }
.project-status-rule {
    height: 1px;
    margin: 18px 0 14px;
    background: #f0a06d;
}
.project-status-content p {
    margin: 0 0 5px;
    color: #0d0d0d;
    font-size: 16px;
    line-height: 30px;
    font-weight: 500;
}
.project-status-content strong { font-weight: 800; }
.project-status-empty { padding: 35px 0; color: #555; font-size: 18px; }
.project-status-carousel .owl-stage { display: flex; }
.project-status-carousel .owl-item { display: flex; margin-bottom: 10px; }
.project-status-carousel .owl-nav {
    position: absolute;
    top: 145px;
    right: -62px;
    left: -62px;
    display: flex;
    justify-content: space-between;
    height: 0;
    margin: 0;
}
.project-status-carousel .owl-nav button.owl-prev,
.project-status-carousel .owl-nav button.owl-next {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    margin: 0;
    border: 0;
    background: transparent;
}
.project-status-carousel .owl-nav button img {
    display: block;
    width: 35px;
    height: 35px;
    object-fit: contain;
}
.project-status-carousel .owl-nav .disabled { opacity: .35; }

@media (max-width: 1399.98px) {
    .project-status-carousel .owl-nav { right: -45px; left: -45px; }
}
@media (max-width: 1199.98px) {
    .project-status-carousel { padding: 0 45px; }
    .project-status-carousel .owl-nav { right: 0; left: 0; }
}
@media (max-width: 767.98px) {
    .project-status-carousel { padding: 0 38px; }
    .project-status-image { height: 280px; }
    .project-status-carousel .owl-nav { top: 120px; }
    .project-status-content { min-height: 0; padding: 22px; }
}

/* Completed projects map, filters, and AJAX grid */
.completed-projects-section { background: #fff; }
.completed-projects-container {
    padding-top: 0px;
    padding-bottom: clamp(80px, 8vw, 140px);
}
.completed-projects-heading {
    margin: 0 0 30px;
    padding-bottom: 13px;
    border-bottom: 2px solid #f76a11;
    color: #111;
    font-size: clamp(28px, 2.4vw, 42px);
    font-weight: 800;
    line-height: 1.1;
    text-transform: uppercase;
}
.completed-projects-tools {
    display: grid;
    grid-template-columns: 1fr 1.08fr;
    min-height: 540px;
    border: 1px solid #ddd;
    box-shadow: 0 2px 8px rgba(0,0,0,.12);
}
.completed-projects-map { min-height: 540px; background: #e9e6df; }
.completed-projects-filters {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(32px, 4vw, 68px);
    background: #f9f9f9;
}
.completed-projects-filters h3 {
    margin: 0 0 28px;
    color: #111;
    font-size: 25px;
    font-weight: 800;
    text-transform: uppercase;
}
.completed-projects-filters label {
    margin: 0 0 8px;
    color: #111;
    font-size: 18px;
    font-weight: 800;
}
.completed-projects-filters .form-select {
    min-height: 45px;
    margin-bottom: 17px;
    border-color: #bbb;
    border-radius: 0;
    background-color: #fff;
    color: #222;
    box-shadow: none;
}
.completed-filter-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 35px;
    margin-top: 13px;
}
.completed-filter-actions button,
.completed-projects-more {
    min-height: 46px;
    padding: 10px 22px;
    border: 1px solid #ccc;
    background: #fff;
    color: #f76a11;
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
}
.completed-filter-actions button[type="submit"] {
    border-color: #f76a11;
    background: #f76a11;
    color: #fff;
}
.completed-filter-actions button:hover,
.completed-filter-actions button:focus,
.completed-projects-more:hover,
.completed-projects-more:focus {
    border-color: #111;
    background: #111;
    color: #fff;
}
.completed-projects-grid {
    --bs-gutter-x: 20px;
    --bs-gutter-y: 24px;
    margin-top: 48px;
    transition: opacity .2s;
}
.completed-projects-grid.is-loading { opacity: .45; }
.completed-project-card {
    display: flex;
    width: 100%;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #ddd;
    background: #fff;
    box-shadow: 0 2px 7px rgba(0,0,0,.14);
}
.completed-project-image {
    display: block;
    height: 230px;
    overflow: hidden;
    background: #555;
}
.completed-project-image img,
.completed-project-placeholder {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s;
}
.completed-project-card:hover .completed-project-image img { transform: scale(1.035); }
.completed-project-copy {
    flex: 1;
    min-height: 155px;
    padding: 18px 20px 22px;
}
.completed-project-copy h3 {
    margin: 0;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.25;
}
.completed-project-copy h3 a { color: #111; text-decoration: none; }
.completed-project-rule {
    height: 1px;
    margin: 13px 0 11px;
    background: #ef9a61;
}
.completed-project-copy p {
    margin: 0 0 4px;
    color: #111;
    font-size: 12px;
    line-height: 1.35;
}
.completed-project-copy strong { font-weight: 800; }
.completed-projects-more-wrap { margin-top: 52px; text-align: center; }
.completed-projects-more { min-width: 300px; }
.completed-projects-empty { padding: 45px 0 0; color: #555; font-size: 18px; text-align: center; }
.completed-map-link { color: #111; font-weight: 700; text-decoration: none; }
.wrp-home-map .home-map {
    width: 100%;
    min-height: 560px;
    background: #e9e6df;
}
.wrp-home-map .why-choose-media .home-map img {
    width: auto;
    max-width: none !important;
    height: auto;
    min-height: 0;
    max-height: none;
    object-fit: initial;
}

@media (max-width: 991.98px) {
    .completed-projects-tools { grid-template-columns: 1fr; }
    .completed-projects-map { min-height: 430px; }
    .wrp-home-map .home-map { min-height: 430px; }
}
@media (max-width: 575.98px) {
    .completed-projects-map { min-height: 350px; }
    .wrp-home-map .home-map { min-height: 350px; }
    .completed-projects-filters { padding: 27px 20px; }
    .completed-filter-actions { grid-template-columns: 1fr; gap: 12px; }
    .completed-project-image { height: 250px; }
    .completed-projects-more { width: 100%; min-width: 0; }
}

.single-project-hero { position: relative; min-height: 660px; overflow: hidden; background: #191919; color: #fff; }
.single-project-hero-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.single-project-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.82), rgba(0,0,0,.2)); }
.single-project-hero-container { position: relative; z-index: 1; display: flex; min-height: 660px; align-items: flex-start; flex-direction: column; justify-content: flex-end; padding-bottom: clamp(60px, 7vw, 110px); }
.single-project-back { margin-bottom: auto; padding-top: 45px; color: #fff; font-size: 13px; font-weight: 800; text-decoration: none; text-transform: uppercase; }
.single-project-back i { margin-right: 8px; color: #f76a11; }
.single-project-hero h1 { max-width: 1000px; margin: 18px 0 0; font-size: clamp(48px, 6vw, 96px); font-weight: 800; line-height: 1.2; }
.single-project-container { padding-top: clamp(65px, 7vw, 120px); padding-bottom: clamp(65px, 7vw, 120px); }
.single-project-row { --bs-gutter-y: 45px; }
.single-project-content { color: #222; font-size: 18px; line-height: 1.75; }
.single-project-content > :first-child { margin-top: 0; }
.single-project-content h2, .single-project-content h3 { margin: 1.5em 0 .65em; color: #111; font-weight: 800; }
.single-project-content img { max-width: 100%; height: auto; }
.project-details { padding: 28px; border-top: 4px solid #f76a11; background: #f2f2f2; }
.project-details h2 { margin: 0 0 25px; font-size: 23px; font-weight: 800; }
.project-details > div { padding: 15px 0; border-top: 1px solid #ccc; }
.project-details span, .project-details strong { display: block; }
.project-details span { margin-bottom: 4px; color: #777; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.project-details strong { color: #111; font-size: 15px; }
.single-project-gallery { background: #101010; color: #fff; }
.single-project-gallery-container { padding-top: clamp(65px, 7vw, 110px); padding-bottom: clamp(65px, 7vw, 110px); }
.project-gallery-heading { margin-bottom: 40px; }
.project-gallery-heading span { color: #f76a11; font-weight: 800; text-transform: uppercase; }
.project-gallery-heading h2 { margin: 10px 0 0; font-size: clamp(38px, 4vw, 68px); font-weight: 800; }
.single-project-gallery-item { position: relative; display: block; width: 100%; padding: 0; overflow: hidden; border: 0; background: #222; }
.single-project-gallery-item img { width: 100%; height: 390px; object-fit: cover; transition: transform .35s; }
.single-project-gallery-item span { position: absolute; inset: 0; display: grid; place-items: center; background: rgba(0,0,0,.35); color: #fff; font-size: 30px; opacity: 0; transition: opacity .25s; }
.single-project-gallery-item:hover img { transform: scale(1.035); }
.single-project-gallery-item:hover span { opacity: 1; }
.project-gallery-modal .modal-content { border: 0; border-radius: 0; background: #111; }
.project-gallery-modal .btn-close { position: absolute; z-index: 2; top: 15px; right: 15px; }
.project-gallery-modal img { width: 100%; max-height: 86vh; object-fit: contain; }
.single-project-cta { background: #f76a11; }
.single-project-cta .container { display: flex; align-items: center; justify-content: space-between; gap: 35px; padding-top: 55px; padding-bottom: 55px; }
.single-project-cta span { font-size: 14px; font-weight: 800; text-transform: uppercase; }
.single-project-cta h2 { margin: 6px 0 0; font-size: clamp(30px, 3vw, 52px); font-weight: 800; }
.single-project-cta a { flex: 0 0 auto; padding: 14px 20px; border: 2px solid #111; color: #111; font-weight: 800; text-decoration: none; text-transform: uppercase; }

/* Single project profile content */
.project-profile { background: #fff; color: #111; }
.project-profile-container {
    max-width: 1180px;
    padding-top: clamp(65px, 6vw, 105px);
    padding-bottom: clamp(70px, 7vw, 125px);
}
.project-profile-title {
    margin: 0 0 32px;
    color: #111;
    font-size: clamp(30px, 2.4vw, 42px);
    font-weight: 800;
    line-height: 1.15;
}
.project-taxonomy-line {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    margin-bottom: 30px;
    font-size: 18px;
    line-height: 1.4;
}
.project-taxonomy-line span + span {
    margin-left: 13px;
    padding-left: 13px;
    border-left: 2px solid #f76a11;
}
.project-taxonomy-line strong,
.project-fact strong {
    font-weight: 800;
}
.project-facts {
    --bs-gutter-x: 35px;
    --bs-gutter-y: 23px;
    margin-top: 0;
}
.project-fact {
    display: flex;
    min-height: 48px;
    align-items: center;
    gap: 14px;
    font-size: 18px;
}
.project-fact img {
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    object-fit: contain;
}
.project-fact-address { margin-top: 3px; }
.project-profile-rule {
    margin: 46px 0 58px;
    border: 0;
    border-top: 1px solid #f76a11;
    opacity: 1;
}
.project-profile-gallery h2,
.project-overview h2,
.project-results h2 {
    margin: 0 0 31px;
    color: #111;
    font-size: clamp(28px, 2.2vw, 38px);
    font-weight: 800;
    line-height: 1.2;
}
.project-profile-gallery-item {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden;
    border: 0;
    background: #222;
}
.project-profile-gallery-item img {
    display: block;
    width: 100%;
    height: 330px;
    object-fit: cover;
    transition: transform .35s;
}
.project-profile-gallery-item > span {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    background: rgba(0,0,0,.3);
    color: #fff;
    font-size: 30px;
    opacity: 0;
    transition: opacity .25s;
}
.project-profile-gallery-item:hover img,
.project-profile-gallery-item:focus img { transform: scale(1.035); }
.project-profile-gallery-item:hover > span,
.project-profile-gallery-item:focus > span { opacity: 1; }
.project-gallery-open {
    min-width: 420px;
    margin-top: 37px;
    padding: 16px 35px;
    border: 1px solid #bbb;
    background: #fff;
    color: #f76a11;
    font-size: 18px;
    font-weight: 800;
    text-transform: uppercase;
    transition: border-color .2s, background .2s, color .2s;
}
.project-gallery-open:hover,
.project-gallery-open:focus {
    border-color: #f76a11;
    background: #f76a11;
    color: #111;
}
.project-overview { margin-top: 78px; }
.project-overview .single-project-content {
    color: #151515;
    font-size: 18px;
    line-height: 1.72;
    font-weight: 500;
}
.project-overview .single-project-content p:last-child { margin-bottom: 0; }
.project-results { margin-top: 45px; }
.project-results ul {
    display: grid;
    gap: 17px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.project-results li {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    font-size: 18px;
    line-height: 1.8;
}
.project-results li i {
    display: grid;
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 50%;
    background: #f76a11;
    color: #fff;
    font-size: 16px;
}
.project-results-html {
    color: #151515;
    font-size: 18px;
    line-height: 1.65;
}
.project-results-html > :last-child { margin-bottom: 0; }
.project-results-html ul {
    display: grid;
    gap: 17px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.project-results-html li {
    position: relative;
    display: block;
    padding-left: 45px;
    font-weight: 500;
}
.project-results-html li::before {
    position: absolute;
    top: 0;
    left: 0;
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 50%;
    background: #f76a11;
    color: #fff;
    content: '\2713';
    font-size: 16px;
    font-weight: 800;
    line-height: 1;
}
.project-gallery-modal .carousel-item img {
    display: block;
    width: 100%;
    height: min(82vh, 850px);
    object-fit: contain;
}

@media (max-width: 767.98px) {
    .project-archive-image { height: 290px; }
    .single-project-hero, .single-project-hero-container { min-height: 540px; }
    .single-project-gallery-item img { height: 270px; }
    .single-project-cta .container { align-items: flex-start; flex-direction: column; }
    .project-taxonomy-line { flex-direction: column; gap: 8px; font-size: 16px; }
    .project-taxonomy-line span + span { margin-left: 0; padding-left: 0; border-left: 0; }
    .project-fact { font-size: 16px; }
    .project-profile-rule { margin: 35px 0 45px; }
    .project-profile-gallery-item img { height: 250px; }
    .project-gallery-open { width: 100%; min-width: 0; }
    .project-overview { margin-top: 58px; }
    .project-overview .single-project-content, .project-results li, .project-results-html { font-size: 16px; }
}

.careers-container {
    padding-top: clamp(58px, 6vw, 105px);
    padding-bottom: clamp(58px, 6vw, 105px);
}

.careers-section-label {
    margin-bottom: 60px;
    padding-bottom: 12px;
    border-bottom: 2px solid #f76a11;
    font-weight: 800;
    letter-spacing: .02em;
    text-transform: uppercase;
    font-size: 24px;
    color: #131313;
}

.careers-culture h1,
.careers-heading {
    margin: 0 0 25px;
    color: #111;
    font-size: clamp(36px, 3.2vw, 48px);
    font-weight: 800;
    line-height: 1.05;
}

.careers-culture>.container>p, .careers-team>.container>p, .careers-openings p, .careers-apply p {
    font-size: 18px;
    line-height: 30px;
    color: #0d0d0d;
    font-weight: 500;
}

.careers-values {
    margin-top: 48px;
}

.careers-value {
    padding: 20px 28px;
    border-left: 1px solid #e88745;
    text-align: center;
}

.careers-value:last-child {
    border-right: 1px solid #e88745;
}

.careers-value>i {
    min-height: 50px;
    color: #f76a11;
    font-size: 42px;
    -webkit-text-stroke: 1px #111;
}

.careers-value h2 {
    min-height: 42px;
    margin: 18px auto 13px;
    line-height: 1.25;
    text-transform: uppercase;
    font-size: 18px;
    color: #131313;
    font-weight: 800;
}

.careers-value p {
    margin: 0;
    font-size: 18px;
    line-height: 30px;
    color: #0d0d0d;
    font-weight: 500;
}
.careers-benefits {
    background: #050505;
    color: #fff;
}

.careers-benefits .careers-container {
    padding-top: clamp(48px, 4.5vw, 76px);
    padding-bottom: clamp(58px, 5.4vw, 92px);
}

.careers-benefits .careers-section-label {
    margin-bottom: 60px;
    padding-bottom: 8px;
}

.careers-section-label--dark {
    color: #fff;
}

.careers-benefits-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    column-gap: 18px;
    row-gap: 0;
    margin: 0;
}

.careers-benefits-grid>* {
    width: auto;
    max-width: none;
    padding-right: 0;
    padding-left: 0;
}

.careers-benefit {
    display: flex;
    align-items: center;
    gap: 15px;
    min-height: 100px;
    padding: 11px 0 12px;
    border-bottom: 1px solid #f76a11;
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.35;
    text-transform: uppercase;
}

.careers-benefit i {
    display: grid;
    flex: 0 0 27px;
    width: 27px;
    height: 27px;
    place-items: center;
    border-radius: 50%;
    background: #f76a11;
    color: #080808;
    font-size: 13px;
}

.careers-benefit span {
    display: block;
    font-size: 18px;
    line-height: 30px;
    color: #ffffff;
    font-weight: 600;
}

.careers-gallery {
    margin-top: 42px;
}

.careers-gallery-item {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden;
    border: 0;
    background: #111;
}

.careers-gallery-item img {
    width: 100%;
    height: 290px;
    object-fit: cover;
    transition: opacity .25s, transform .35s;
}

.careers-gallery-item span {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    background: rgba(0, 0, 0, .35);
    color: #fff;
    font-size: 32px;
    opacity: 0;
    transition: opacity .25s;
}

.careers-gallery-item:hover img,
.careers-gallery-item:focus img {
    opacity: .8;
    transform: scale(1.035);
}

.careers-gallery-item:hover span,
.careers-gallery-item:focus span {
    opacity: 1;
}

.careers-openings .careers-container {
    padding-top: 45px;
}

.careers-openings-row {
    align-items: start;
}

.careers-jobs {
    margin-top: 0;
}
.careers-job {
    display: grid;
    grid-template-columns: 1.45fr 1.3fr .8fr 1fr;
    gap: 18px;
    align-items: center;
    min-height: 69px;
    border-bottom: 1px solid #aaa;
    text-decoration: none;
    font-size: 18px;
    font-weight: 500;
    color: #131313;
}

.careers-job:hover {
    color: #f76a11;
}

.careers-job-link {
    color: #f76a11;
    font-weight: 700;
    text-align: right;
    text-transform: uppercase;
}

.careers-apply {
    border-top: 2px solid #f76a11;
    background: #f4f4f4;
}
.careers-apply-label {
    margin-bottom: 25px;
    font-weight: 800;
    text-transform: uppercase;
    font-size: 24px;
    color: #f76a11;
}
.careers-apply .careers-heading {
    font-size: 48px;
    color: #131313;
}
.careers-apply-card {
    display: flex;
    gap: 22px;
    min-height: 165px;
    padding: 28px;
    background: #fff;
    color: #111;
    text-decoration: none;
    transition: transform .2s, box-shadow .2s;
    justify-content: center;
    align-items: center;
}

.careers-apply-card:hover {
    color: #111;
    transform: translateY(-3px);
    box-shadow: 0 12px 28px rgba(0, 0, 0, .08);
}

.careers-apply-card>i {
    display: grid;
    flex: 0 0 62px;
    width: 62px;
    height: 62px;
    place-items: center;
    border-radius: 50%;
    background: #080808;
    color: #f76a11;
    font-size: 28px;
}

.careers-apply-card span {
    display: flex;
    flex-direction: column;
}

.careers-apply-card strong {
    margin-bottom: 8px;
    font-size: 18px;
}

.careers-apply-card small {
    line-height: 1.45;
}

.careers-apply-card b {
    margin-top: auto;
    color: #f76a11;
    font-size: 18px;
    text-transform: uppercase;
}
.careers-apply-card small {
    line-height: 1.45;
    font-size: 18px;
    margin-bottom: 20px;
}
.careers-spotlight {
    overflow: hidden;
    background: #f5650b;
    color: #fff;
    background-image: url('./images/arg-back.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    padding: 30px 0px;
    display: none !important;
}
.careers-spotlight .careers-container {
    position: relative;
    padding-top: 62px;
    padding-bottom: 62px;
}

.careers-spotlight .careers-container::before {
    position: absolute;
    inset: -220px auto -220px -240px;
    width: 600px;
    border: 75px solid rgba(140, 57, 0, .15);
    content: '';
    transform: rotate(-32deg);
}

.careers-spotlight-title {
    position: relative;
    margin-bottom: 50px;
    font-size: 24px;
    font-weight: 800;
    text-transform: uppercase;
}
.careers-spotlight-slide {
    position: relative;
    display: grid;
    grid-template-columns: 400px 140px 1fr;
    gap: 24px;
    align-items: center;
}

.careers-spotlight-person {
    display: flex;
    align-items: center;
    gap: 22px;
}

.careers-spotlight-person img {
    width: 145px !important;
    height: 145px;
    border: 7px solid #fff;
    border-radius: 50%;
    object-fit: cover;
}

.careers-spotlight-person strong,
.careers-spotlight-person span {
    display: block;
}

.careers-spotlight-person strong {
    text-transform: uppercase;
}

.careers-quote {
    color: #080808;
    font-size: 150px;
}

.careers-spotlight blockquote {
    margin: 0;
    font-size: 18px;
    line-height: 30px;
}

.careers-lightbox .modal-content {
    border: 0;
    border-radius: 0;
    background: #111;
}

.careers-lightbox .btn-close {
    position: absolute;
    z-index: 2;
    top: 14px;
    right: 14px;
}

.careers-lightbox img {
    display: block;
    width: 100%;
    max-height: 86vh;
    object-fit: contain;
}

@media (max-width: 991.98px) {
    .careers-benefits-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .careers-value:nth-child(odd) {
        border-right: 1px solid #e88745;
    }

    .careers-value:last-child {
        border-right: 1px solid #e88745;
    }

    .careers-openings-row {
        --bs-gutter-y: 30px;
    }

    .careers-spotlight-slide {
        grid-template-columns: 280px 55px 1fr;
    }
}

@media (max-width: 767.98px) {
    .careers-values {
        row-gap: 18px;
    }

    .careers-value,
    .careers-value:nth-child(odd) {
        border-right: 1px solid #e88745;
    }

    .careers-gallery-item img {
        height: 250px;
    }

    .careers-job {
        grid-template-columns: 1.25fr 1fr;
        padding: 15px 0;
    }

    .careers-job-link {
        text-align: left;
    }

    .careers-spotlight-slide {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .careers-quote {
        display: none;
    }
}

@media (max-width: 575.98px) {
    .careers-benefits-grid {
        grid-template-columns: 1fr;
    }

    .careers-benefit span {
        max-width: none;
    }

    .careers-section-label {
        margin-bottom: 28px;
    }

    .careers-value {
        border-right: 1px solid #e88745;
    }

    .careers-gallery-item img {
        height: 230px;
    }

    .careers-job {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    .careers-apply-card {
        padding: 22px;
    }
}
/* Site-wide back-to-top button */
.back-to-top {
    position: fixed;
    right: clamp(18px, 3vw, 38px);
    bottom: clamp(18px, 3vw, 38px);
    z-index: 999;
    display: grid;
    width: 52px;
    height: 52px;
    padding: 0;
    place-items: center;
    color: #fff;
    background: #111;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 50%;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
    opacity: 0;
    visibility: hidden;
    transform: translateY(18px) scale(0.85);
    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease, background-color 0.2s ease;
    cursor: pointer;
    pointer-events: none;
}

.back-to-top.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
    pointer-events: auto;
}

.back-to-top:hover,
.back-to-top:focus-visible {
    background: #c89b5b;
    transform: translateY(-4px) scale(1.04);
}

.back-to-top:focus-visible {
    outline: 3px solid rgba(200, 155, 91, 0.45);
    outline-offset: 3px;
}

.back-to-top i {
    font-size: 18px;
    animation: back-to-top-arrow 1.4s ease-in-out infinite;
}

@keyframes back-to-top-arrow {
    0%, 100% { transform: translateY(2px); }
    50% { transform: translateY(-3px); }
}

@media (prefers-reduced-motion: reduce) {
    .back-to-top,
    .back-to-top i {
        animation: none;
        transition-duration: 0.01ms;
    }
}

section.page-main-title-wrapper-default {
    background: #000;
    text-align: center;
    color: #fff;
    padding:25px 0px;
}
section.page-main-title-wrapper-default h1 {
    margin: 0px;
    text-transform: uppercase;
    font-weight: 800;
}
.wrp-default-page {
    padding: 60px 0px;
}

/* 404 page */
.error-404 {
    position: relative;
    min-height: 72vh;
    overflow: hidden;
    color: #161616;
    background:
        radial-gradient(circle at 50% 25%, rgba(247, 106, 17, 0.13), transparent 32%),
        linear-gradient(135deg, #fff 0%, #f7f7f5 100%);
}

.error-404::before,
.error-404::after {
    position: absolute;
    width: 260px;
    height: 260px;
    content: "";
    border: 1px solid rgba(247, 106, 17, 0.18);
    transform: rotate(45deg);
    pointer-events: none;
}

.error-404::before {
    top: -145px;
    left: -130px;
}

.error-404::after {
    right: -145px;
    bottom: -150px;
}

.error-404 .container {
    position: relative;
    z-index: 1;
}

.error-404-icon {
    display: grid;
    width: 92px;
    height: 92px;
    place-items: center;
    color: #fff;
    background: #f76a11;
    border-radius: 50%;
    box-shadow: 0 14px 34px rgba(247, 106, 17, 0.25);
}

.error-404-icon i {
    font-size: 40px;
}

.error-404-code {
    color: #f76a11;
    font-size: clamp(5rem, 13vw, 9rem);
    font-weight: 900;
    line-height: 0.9;
    letter-spacing: -0.07em;
}

.error-404-title {
    font-size: clamp(2rem, 5vw, 3.75rem);
    font-weight: 800;
    letter-spacing: -0.04em;
}

.error-404-copy {
    max-width: 650px;
    color: #616161;
    font-size: clamp(1rem, 2vw, 1.15rem);
    line-height: 1.7;
}

.error-404 .btn {
    padding: 13px 24px;
    border-radius: 0;
    font-weight: 700;
}

.error-404-primary-btn {
    color: #fff;
    background: #f76a11;
    border: 2px solid #f76a11;
}

.error-404-primary-btn:hover,
.error-404-primary-btn:focus-visible {
    color: #fff;
    background: #161616;
    border-color: #161616;
}

.error-404-secondary-btn {
    color: #161616;
    background: transparent;
    border: 2px solid #161616;
}

.error-404-secondary-btn:hover,
.error-404-secondary-btn:focus-visible {
    color: #fff;
    background: #161616;
}

.error-404-search {
    max-width: 540px;
}

.error-404-search .form-control {
    min-height: 54px;
    padding-inline: 18px;
    border: 1px solid #d8d8d8;
    border-right: 0;
    border-radius: 0;
    box-shadow: none;
}

.error-404-search .form-control:focus {
    border-color: #f76a11;
}

.error-404-search .btn {
    width: 58px;
    color: #fff;
    background: #161616;
    border: 1px solid #161616;
}

.error-404-search .btn:hover,
.error-404-search .btn:focus-visible {
    background: #f76a11;
    border-color: #f76a11;
}

@media (max-width: 575.98px) {
    .error-404 {
        min-height: 68vh;
    }

    .error-404-icon {
        width: 76px;
        height: 76px;
    }

    .error-404-icon i {
        font-size: 32px;
    }
}

/* Search results page */
.search-results-hero {
    color: #fff;
    background: #161616;
}

.search-results-icon {
    width: 62px;
    height: 62px;
    place-items: center;
    color: #fff;
    background: #f76a11;
    border-radius: 50%;
    font-size: 24px;
}

.search-results-eyebrow {
    color: #f76a11;
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

.search-results-form {
    max-width: 650px;
}

.search-results-form .form-control {
    min-height: 56px;
    padding-inline: 18px;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.search-results-form .form-control:focus {
    box-shadow: inset 0 0 0 2px #f76a11;
}

.search-results-form .btn {
    padding-inline: 24px;
    color: #fff;
    background: #f76a11;
    border: 0;
    border-radius: 0;
    font-weight: 700;
}

.search-results-form .btn:hover,
.search-results-form .btn:focus-visible {
    color: #161616;
    background: #fff;
}

.search-results-content {
    background: #f7f7f5;
}

.search-result-card {
    overflow: hidden;
    border-radius: 0;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.search-result-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 38px rgba(0, 0, 0, 0.13);
}

.search-result-image {
    display: block;
    overflow: hidden;
    background: #ececea;
}

.search-result-image img,
.search-result-placeholder {
    display: grid;
    width: 100%;
    height: 230px;
    object-fit: cover;
    place-items: center;
}

.search-result-card:hover .search-result-image img {
    transform: scale(1.04);
}

.search-result-placeholder {
    color: #f76a11;
    font-size: 48px;
}

.search-result-meta {
    color: #777;
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.search-result-card .card-title a {
    color: #161616;
}

.search-result-card .card-title a:hover {
    color: #f76a11;
}

.search-result-card .card-text {
    color: #656565;
    line-height: 1.65;
}

.search-result-card .card-text p {
    margin-bottom: 0;
}

.search-result-link {
    color: #f76a11;
    font-weight: 800;
    text-transform: uppercase;
}

.search-result-link:hover {
    color: #161616;
}

.search-results-pagination .page-numbers {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.search-results-pagination .page-numbers li > * {
    display: grid;
    min-width: 44px;
    height: 44px;
    padding-inline: 12px;
    place-items: center;
    color: #161616;
    background: #fff;
    border: 1px solid #ddd;
}

.search-results-pagination .page-numbers .current,
.search-results-pagination .page-numbers a:hover,
.search-results-pagination .page-numbers a:focus-visible {
    color: #fff;
    background: #f76a11;
    border-color: #f76a11;
}

.search-no-results {
    background: #fff;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.search-no-results > i {
    color: #f76a11;
    font-size: 60px;
}

.search-home-btn {
    padding: 13px 24px;
    color: #fff;
    background: #f76a11;
    border: 2px solid #f76a11;
    border-radius: 0;
    font-weight: 700;
}

.search-home-btn:hover,
.search-home-btn:focus-visible {
    color: #fff;
    background: #161616;
    border-color: #161616;
}

@media (max-width: 575.98px) {
    .search-results-form .btn {
        width: 58px;
        padding-inline: 0;
    }

    .search-result-image img,
    .search-result-placeholder {
        height: 210px;
    }
}

.signature-owl-carousel {
    position: relative;
    padding-bottom: 100px;
}

.signature-owl-carousel .owl-dots {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	margin: 0;
	bottom: 8px;
}

.signature-owl-carousel .owl-nav {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 180px;
    display: flex;
    justify-content: space-between;
    margin: 0;
}

.signature-owl-carousel .owl-prev,
.signature-owl-carousel .owl-next {
    position: relative;
    z-index: 2;
}

.home-industry-container .industry-card-content {
	background: #101010;
	color: #fff;
}
.home-industry-container .industry-card-heading h3{
    color: #fff;
}
.home-industry-container .industry-card-description{
    color: #fff;
}
.org-text {
	background: transparent !important;
	color: #f76a11 !important;
	border: 2px solid #fff;
}
.industry-card-image .site-reveal {
    width: 100%;
    height: 100%;
}
.hero-content h3 {
	margin-top: 20px;
	font-size: 35px;
	font-weight: 600;
}