/* --- Body Styles --- */
:root {
    --black: #000;
    --white: #fff;
    --light-gray: #f2f2f2;
    --dg-fox-red: #F15B40;
    --dg-fox-red-hover: #b54430;
    --cta-orange: #FF5300;
    --dg-sky-blue: #B2DDF0;
    --dg-beige: #F7F3EC;
    --bs-body-color: #000;
    --dg-sans-serif: Altform, sans-serif;
    --dg-serif: Sabon LT Pro, serif;
    --bs-body-line-height: 165%;
    --bs-body-font-size: 1.6rem;
    --bs-body-font-weight: 400;
    --bs-breadcrumb-divider: ">";
}

/* --- Base --- */
*,
*:after,
*:before {
	box-sizing: border-box;
    -moz-box-sizing: border-box;
    font-smooth: antialiased;
    -moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}
html {
	font-size: 62.5%; /* changes a default 16px font size to 10px */
    scroll-behavior: smooth;
}
body {
    background-color: var(--white);
    color: var(--bs-body-color);
    font-family: var(--dg-sans-serif);
    line-height: var(--bs-body-line-height);
    font-size: var(--bs-body-font-size);
    font-weight: var(--bs-body-font-weight);
    min-width: 100%;
    font-feature-settings: "ss10" 1;
}
body#dgbase a {
	color: var(--dg-fox-red);
    text-decoration: none;
}
body#dgbase a:hover {
	color: #404041
}
body#dgbase p {
    margin-bottom: 3rem;
}
.pl-0 {
    padding-left: 0 !important;
}
.pr-0 {
    padding-right: 0 !important;
}
.pr-5 {
    padding-right: 3rem;
}
.pl-5 {
    padding-left: 3rem;
}
/*
.row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.row>* {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
*/


/* --- Super Header --- */
#super-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 46px;
    line-height: 46px;
    background-color: var(--light-gray);
    transition: 0.3s ease-in-out;
    z-index: 100;
}
#super-header.scrolldown {
    top: -46px;
}
#super-header.scrollup {
    top: 0;
}
#super-header .bg-light {
    justify-content: flex-end;
    line-height: 46px;
    padding: 0;
    background-color: transparent !important;
}
#super-header .navbar-nav {
    justify-content: flex-end;
    margin-left: auto;
    margin-right: inherit !important;
}
#super-header .nav-link {
    padding-top: 0;
    padding-bottom: 0;
    color: var(--black);
    font-size: 1.6rem;
}
#super-header .row > div:first-of-type img {
    width: auto;
    height: 16px !important;
    object-fit: contain;
}
#super-header .row > div:last-of-type > div:first-of-type {
    float: right;
}
#super-header .search-dropdown {
    float: right;
    cursor: pointer;
    color: var(--black);
    font-size: 1.6rem;
}


/* --- Search Bar --- */
#search-bar {
    position: fixed;
    top: -164px;
    width: 100%;
    height: 164px;
    background-color: var(--light-gray);
    transition: ease-in-out 0.3s;
    z-index: 1000;
}
#search-bar.search-on {
    top: 0px;
}
#search-bar .container {
    position: relative;
    height: 100%;
}
#search-bar .d-flex {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    width: 100%;
    margin: 0 !important;
}
#search-bar input[type=search] {
    height: 60px;
    padding: 0 20px;
    border: 0;
    border-radius: 0;
    background-color: var(--white);
    font-size: 1.6rem;
}
#search-bar button.btn {
    padding: 0;
    border: 0;
    border-radius: 0;
    background-color: transparent;
    color: var(--black);
    font-size: 1.6rem;
    font-weight: bold;
    text-transform: uppercase;
}
#search-bar .close-search {
    position: absolute;
    top: 30px;
    right: 30px;
    cursor: pointer;
    border: 0;
    background-color: transparent;
    font-size: 2.5rem;
}


/* --- DG Header --- */
#dg-header {
    position: fixed;
    top: 46px;
    left: 0;
    width: 100%;
    height: 112px;
    line-height: 112px;
    border-bottom: 1px solid var(--light-gray);
    background-color: var(--white);
    transition: 0.3s ease-in-out;
    z-index: 100;
}
#dg-header.scrolldown {
    top: 0;
    height: 80px;
    line-height: 80px;
}
#dg-header.scrollup {
    top: 46px;
    height: 112px;
    line-height: 112px;
}
#dg-header #top-logo img {
    width: 250px;
    height: auto;
}


/* --- DG Header > Main Nav --- */
.mobile {
    display: none;
}
.main-nav .navbar {
    padding: 0 !important;
    background-color: transparent !important;
}
.main-nav .navbar-nav {
    justify-content: flex-end;
    gap: 35px;
    margin-left: auto;
    margin-right: inherit !important;
}
.main-nav .navbar a {
    display: block;
    padding: 0;
    color: var(--black) !important;
    font-size: 2rem;
}
.main-nav .navbar a svg {
    margin-left: 5px;
    font-size: 1.6rem;
}
.main-nav .navbar a:hover {
    color: var(--dg-fox-red) !important;
}
.main-nav .navbar a.active {
    background-color: transparent;
}
.main-nav .navbar .nav-item:hover > a {
    position: relative;
    color: var(--dg-fox-red);
    font-family: var(--dg-serif);
    font-style: italic;
}
.main-nav .navbar .nav-item:hover > a:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 8px;
    border: 0;
    background-color: var(--dg-fox-red);
}
.main-nav .navbar .dropdown-menu {
    left: 50%;
    transform: translate(-50%, 0);
    line-height: normal;
    margin: 0;
    padding: 10px 0;
    border-top: 0;
    border-right: 0;
    border-bottom: 9px solid var(--dg-fox-red);
    border-left: 0;
    border-radius: 0;
    background-color: var(--light-gray);
}
.main-nav .navbar .capabilities .dropdown-menu  {
    grid-template-columns: repeat(2, auto);
    grid-template-rows: repeat(7, auto);
    grid-auto-flow: column;
}
.main-nav .navbar .dropdown-menu a {
    line-height: 150% !important;
    padding: 5px 40px !important;
    font-size: 1.8rem;
}
.main-nav .navbar .dropdown-menu a:hover {
    background-color: transparent;
    color: var(--dg-fox-red);
}
.nav-item.dropdown:hover > .nav-link {
    display: block;
}
.nav-item.dropdown:hover > .dropdown-menu {
    display: grid;
}
.nav-item .dropdown-menu strong {
    line-height: 250%;
    padding: 5px 40px;
    color: rgba(0, 0, 0, 0.55) !important;
    font-size: 1.2rem;
    font-style: normal;
    font-weight: 400;
    letter-spacing: 0.48px;
    text-transform: uppercase;
}


/* --- Content --- */
#content {
    margin-top: 158px;
    transition: 0.3s ease-in-out;
}
#content.scrolldown {
    margin-top: 80px;
}
#content.scrollup {
    margin-top: 158px;
}
body#dgbase #content .container {
    margin: 0 auto;
    padding-top: 6rem;
    padding-bottom: 6rem;
}
.inner-container {
    max-width: 100%;
    padding: 3rem 0;
}
#content .gray-background {
    background-color: var(--light-gray);
}
#content .beige-background {
    background-color: var(--dg-beige);
}
#content hr {
    height: 0;
    margin-top: 0;
    margin-bottom: 2rem;
    border-color: var(--black);
    opacity: 1;
}
.align-center {
    padding: 0 20rem;
    text-align: center;
}
a.strong-under-link {
    font-weight: bold;
    text-decoration: underline !important;
}


/* --- Headings --- */
h1 {
    margin-top: 3rem;
    color: var(--black);
    font-family: var(--dg-sans-serif);
    font-size: 72px;
    font-style: normal;
    font-weight: 400;
    line-height: 118.3%; /* 85.176px */
    letter-spacing: 0.72px;
}
h1 :is(em, i) {
    font-family: var(--dg-serif);
    font-style: italic;
}
h2 {
    margin-bottom: 3rem;
    color: var(--black);
    font-family: var(--dg-sans-serif);
    font-size: 46px;
    font-style: normal;
    font-weight: 400;
    line-height: 128.284%; /* 59.011px */
    letter-spacing: 0.92px;
}
h2 :is(em, i) {
    font-family: var(--dg-serif);
    font-style: italic;
}
h3 {
    margin-bottom: 2rem;
    color: var(--dg-fox-red);
    font-family: var(--dg-serif);
    font-size: 28px;
    font-style: italic;
    font-weight: 700;
    line-height: 128.284%; /* 35.92px */
}
h4 {
    padding-bottom: 3rem;
    color: var(--dg-fox-red);
    font-family: var(--dg-sans-serif);
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 128.284%;
    letter-spacing: 0.4px;
    text-transform: uppercase;
}
.sky-blue-background h4 {
    color: var(--black);
}
h5 {
    color: var(--dg-fox-red);
    font-family: var(--dg-sans-serif);
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: 128.284%; /* 46.182px */
    letter-spacing: 0.72px;
}


/* --- Buttons --- */
.button {
    position: relative;
    display: inline-flex;
    padding: 16px 48px;
    justify-content: center;
    align-items: center;
    gap: 4px;
    background-color: var(--dg-fox-red);
    color: var(--white) !important;
    border: 2px solid var(--dg-fox-red);
    font-family: var(--dg-sans-serif);
    font-size: 2rem;
    font-style: normal;
    font-weight: 400;
    line-height: 128.284%;
    letter-spacing: 0.4px;
    transition: 0.3s ease-in-out;
}
.button:hover {
    background-color: var(--dg-fox-red-hover);
    border-color: var(--dg-fox-red-hover);
}
table {
    margin-bottom: 3rem;
}
.button-blue {
    position: relative;
    display: inline-flex;
    padding: 16px 48px;
    justify-content: center;
    align-items: center;
    gap: 4px;
    border: 2px solid var(--black);
    background-color: transparent;
    color: var(--black) !important;
    font-family: var(--dg-sans-serif);
    font-size: 2rem;
    font-style: normal;
    font-weight: 400;
    line-height: 128.284%;
    letter-spacing: 0.4px;
    text-decoration: none !important;
    transition: 0.3s ease-in-out;
}
.button-blue:hover {
    background-color: var(--black);
    color: var(--white) !important;
}


/* --- Dividers --- */
.arrow-divider {
    position: relative;
    height: 1px !important;
    margin: 6rem 0 !important;
    border: none;
    background: linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 47%, rgba(255,255,255,1) 47%, rgba(255,255,255,1) 53%, rgba(0,0,0,1) 53%, rgba(0,0,0,1) 100%);
    overflow: visible;
}
.arrow-divider:before, .arrow-divider:after {
    content: " ";
    position: absolute;
    top: -15px;
    width: 1px;
    height: 30px;
    background-color: var(--black);
}
.arrow-divider:before {
    right: calc(50% - 11px);
    transform: rotate(45deg);
}
.arrow-divider:after {
    left: calc(50% - 11px);
    transform: rotate(-45deg);
}


/* --- Big Numbers List --- */
.big-numbers ul {
    display: flex;
    gap: 4rem;
    margin: 0;
    padding: 0;
}
.big-numbers li {
    flex-grow: 1;
    list-style-type: none;
    color: var(--black);
    text-align: center;
    font-family: var(--dg-sans-serif);
}
.big-numbers li strong {
    display: block;
    color: var(--dg-fox-red);
    text-align: center;
    font-family: "Sabon LT Pro";
    font-size: 4.8rem;
    font-style: italic;
    font-weight: 700;
    line-height: 128.284%;
}
.big-numbers li strong.not-number {
    font-size: 2.4rem;
    line-height: 102%;
    padding: 6px 0;
}


/* --- Backgrounds > Fox Background --- */
.fox-background {
    line-height: 128%;
    background-color: var(--dg-fox-red);
    color: var(--black);
    font-size: 3.2rem;
    font-style: normal;
    font-weight: 300;
}
.fox-background .row>div {
    padding: 5rem;
}
.fox-background .button {
    display: inline-flex;
    padding: 16px 48px;
    justify-content: center;
    align-items: center;
    gap: 4px;
    line-height: 128%;
    border: 1px solid var(--black);
    background: var(--dg-fox-red);
    color: var(--black) !important;
    font-size: 2rem;
    font-style: normal;
    font-weight: 400;
    letter-spacing: 0.4px;
}
.fox-background .button:hover {
    border-color: var(--black);
    background: var(--black);
    color: var(--dg-fox-red) !important;
}
.fox-background .row>div:first-of-type {
    padding-left: 0;
}
.fox-background .row>div:last-of-type {
    padding-right: 0;
    border-left: 1px solid var(--white);
}
.fox-background ul li {
    list-style-type: none;
    padding: 2rem 5rem;
}
.fox-background ul li svg {
    margin-left: -5rem;
}
.fox-background a {
    color: var(--black) !important;
    border-bottom: 1px solid var(--black);
}
.fox-background a:hover {
    color: var(--white) !important;
    border-color: var(--white);
}
.fox-footer {
    font-size: 5.5rem;
}
.fox-footer p em {
    font-family: var(--dg-serif);
}
.fox-footer .row {
    align-items: center;
}
.fox-footer .row > div {
    padding: 0 !important;
    border: none !important;
}
.fox-footer p {
    margin: 0 !important;
}
.fox-footer .fox-button > div {
    display: flex;
    justify-content: flex-end;
}


/* --- Backgrounds > Sky Blue Background --- */
.sky-blue-background {
    background-color: var(--dg-sky-blue);
}
.sky-blue-background a {
    color: var(--black) !important;
    text-decoration: underline !important;
}
.sky-blue-background a:hover {
    color: var(--white) !important;
}
.sky-blue-background .button {
    background-color: transparent;
    border-color: var(--black);
}
.sky-blue-background .button:hover {
    background-color: var(--black);
    color: var(--white) !important;
}


/* --- Home > Hero --- */
.hero-home {
    position: relative;
    overflow: hidden;
    height: 620px;
}
.hero-home .container {
    position: relative;
}
.hero-home .hero-content {
    width: 50%;
}
.hero-home .hero-content h1 {
    margin-top: 0;
}
.hero > div {
    padding: 0;
}


/* --- Home > Stats --- */
.home-stats {
    background-color: var(--dg-beige);
    font-size: 1.6rem;
}
.home-stats ul {
    display: flex;
    gap: 4rem;
    margin: 0;
    padding: 0;
}
.home-stats ul li {
    flex-grow: 1;
    list-style-type: none;
    line-height: 128%;
    color: var(--black);
    text-align: center;
    font-family: var(--dg-sans-serif);
}
.home-stats ul li strong {
    display: block;
    color: var(--dg-fox-red);
    text-align: center;
    font-family: "Sabon LT Pro";
    font-size: 4.8rem;
    font-style: italic;
    font-weight: 700;
    line-height: 128.284%;
}


/* --- Home > Card Carousel --- */
.carousel-slide-home sl-carousel-item {
    align-items: start;
    justify-content: start;
    height: 400px;
    padding: 3rem;
    border-radius: 12px;
    background-color: var(--white);
}
.carousel-slide-home sl-carousel::part(scroll-container) {
    align-items: start !important;
}
.carousel-slide-home sl-icon {
    color: var(--dg-fox-red);
    font-size: 4rem;
}
.carousel-slide-home sl-carousel::part(navigation-button--previous) {
    margin-right: -30px;
}
.carousel-slide-home sl-carousel::part(navigation-button--next) {
    margin-left: -30px;
}


/* --- Home > Card Carousel > Responsive --- */
@media (max-width: 1550px) {
    .carousel-slide-home sl-carousel::part(scroll-container) {
        --slides-per-page: 3 !important;
    }
}
@media (max-width: 1300px) {
    .carousel-slide-home sl-carousel::part(scroll-container) {
        --slides-per-page: 2 !important;
    }
}
@media (max-width: 700px) {
    .carousel-slide-home sl-carousel::part(scroll-container) {
        --slides-per-page: 1 !important;
    }
}


/* --- Home > Markets Carousel --- */
.carousel-markets-home {
    margin-top: 3rem;
    margin-bottom: 3rem;
    padding-bottom: 3rem;
}
.carousel-markets-home sl-carousel {
    margin-bottom: 3rem;
}
.carousel-markets-home sl-carousel::part(base) {
    position: relative;
}
.carousel-markets-home sl-carousel::part(scroll-container) {
    align-items: start !important;
}
.carousel-markets-home sl-carousel::part(navigation) {
    display: block;
    position: absolute;
    bottom: -20px;
}
.carousel-markets-home sl-icon {
    font-size: 3rem;
}
.carousel-markets-home sl-carousel::part(navigation-button--previous) {
    position: absolute;
    bottom: -70px;
    left: 0;
    display: block;
    width: 60px;
    height: 60px;
    line-height: 10px;
    background: transparent;
    border: 2px solid var(--dg-fox-red);
    color: var(--dg-fox-red);
    border-radius: 30px;
    transition: 0.3s ease-in-out;
}
.carousel-markets-home sl-carousel::part(navigation-button--previous):hover, .carousel-markets-home sl-carousel::part(navigation-button--next):hover {
    background-color: var(--dg-fox-red);
    color: var(--white);
}
.carousel-markets-home sl-carousel::part(navigation-button--next) {
    position: absolute;
    bottom: -70px;
    left: 70px;
    display: block;
    width: 60px;
    height: 60px;
    line-height: 10px;
    background: transparent;
    border: 2px solid var(--dg-fox-red);
    color: var(--dg-fox-red);
    border-radius: 30px;
    transition: 0.3s ease-in-out;
}
.carousel-markets-home sl-carousel-item {
    align-items: normal;
    overflow: hidden;
}
.carousel-markets-home sl-carousel-item img, ::slotted(img) {
    height: 300px !important;
    width: 100%;
    object-fit: cover;
    margin-bottom: 1rem;
}
.carousel-markets-home .button {
    left: 150px;
    border-radius: 50px;
}
.carousel-markets-home .button svg {
    margin-left: 5px;
    font-size: 1.4rem;
}


/* --- Home > Markets Carousel > Responsive --- */
@media (max-width: 1300px) {
    .carousel-markets-home sl-carousel::part(scroll-container) {
        --slides-per-page: 2 !important;
    }
}
@media (max-width: 700px) {
    .carousel-markets-home sl-carousel::part(scroll-container) {
        --slides-per-page: 1 !important;
    }
}


/* --- Breadcrumbs --- */
div.breadcrumb {
    margin-bottom: 0;
    padding-top: 4rem;
    padding-bottom: 3rem;
}
.breadcrumb .container {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.breadcrumb-wrapper {
    font-size: 1.6rem;
}


/* --- Hero Secondary --- */
.hero-secondary {
    position: relative;
    height: 412px;
}
.hero-secondary .hero-color {
    position: relative;
    width: 100%;
    height: 100%;
    opacity: 0.9;
    z-index: 2;
}
.hero-secondary span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    justify-content: center;
    flex-direction: column;
    width: 50%;
    color: var(--white) !important;
    font-weight: 700;
    text-align: center;
    z-index: 2;
}
.hero-secondary h1 {
    color: var(--white);
}
.hero-secondary .hero-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
}
.hero-secondary.Orange > div {
    background-color: var(--cta-orange);
}
.hero-secondary.Blue > div {
    background-color: var(--dg-sky-blue);
}
.hero-secondary.Blue h1 {
    color: var(--black);
}


/* --- Hero > Careers --- */
.hero-careers {
    position: relative;
    height: 532px;
}
.hero-careers span {
    position: absolute;
    top: 50%;
    left: 6rem;
    transform: translate(0, -50%);
    display: block;
    width: 50%;
}
.hero-careers h1 {
    margin: 0 !important;
}
.hero-careers .hero-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    z-index: -1;
}


/* --- Careers > Responsive Embed --- */
.iframe-container {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 56.25%;
}
.iframe-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
}


/* --- Careers > Promise Carousel --- */
.carousel-careers-promise {
    margin: 3rem 0 5rem;
}
.carousel-careers-promise sl-carousel::part(base) {
    position: relative;
}
.carousel-careers-promise sl-carousel::part(scroll-container) {
    align-items: start !important;
}
.carousel-careers-promise sl-carousel::part(navigation) {
    display: block;
    position: absolute;
    bottom: 0px;
}
.carousel-careers-promise sl-icon {
    font-size: 3rem;
}
.carousel-careers-promise sl-carousel::part(navigation-button--previous) {
    position: absolute;
    bottom: -50px;
    left: 0;
    display: block;
    width: 60px;
    height: 60px;
    line-height: 10px;
    background: transparent;
    color: var(--dg-fox-red);
    transition: 0.3s ease-in-out;
}
.carousel-careers-promise sl-carousel::part(navigation-button--previous):hover, .carousel-careers-promise sl-carousel::part(navigation-button--next):hover {
    background-color: var(--dg-fox-red);
    color: var(--white);
}
.carousel-careers-promise sl-carousel::part(navigation-button--next) {
    position: absolute;
    bottom: -50px;
    left: 70px;
    display: block;
    width: 60px;
    height: 60px;
    line-height: 10px;
    background: transparent;
    color: var(--dg-fox-red);
    transition: 0.3s ease-in-out;
}
.carousel-careers-promise sl-carousel sl-carousel-item {
    align-items: start;
}
.carousel-careers-promise sl-carousel sl-carousel-item strong {
    display: block;
    padding-bottom: 20px;
    text-align: left;
}


/* --- Careers > Promise Carousel > Responsive --- */
@media (max-width: 1600px) {
    .carousel-careers-promise sl-carousel::part(scroll-container) {
        --slides-per-page: 3 !important;
    }
}
@media (max-width: 1300px) {
    .carousel-careers-promise sl-carousel::part(scroll-container) {
        --slides-per-page: 2 !important;
    }
}
@media (max-width: 700px) {
    .carousel-careers-promise sl-carousel::part(scroll-container) {
        --slides-per-page: 1 !important;
    }
}


/* --- Lists > Tab List --- */
.gradient-background {
    background: linear-gradient(90deg, rgba(255,255,255,1) 60%, rgba(242,242,242,1) 60%, rgba(242,242,242,1) 100%);
    margin-top: 6rem;
    margin-bottom: 6rem;
}
.gradient-background .container {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.tab-list {
    display: flex;
    flex-wrap: nowrap;
    gap: 3rem;
}
.tab-list .col {
    flex-grow: 1;
}
.tab-list .col .nav-tabs {
    border: none;
}
.tab-list .col button {
    display: block;
    width: 100%;
    padding: 1rem 0;
    border: none;
    color: var(--black);
    font-size: 3.2rem;
    text-align: left;
}
.tab-list .col button svg {
    display: none;
    font-size: 2.5rem;
}
.tab-list .col button.active {
    color: var(--dg-fox-red) !important;
}
.tab-list .col button.active span {
    text-decoration: underline !important;
}
.tab-list .col button.active svg {
    display: inline-block;
}
.tab-list .col:first-of-type {
    max-width: 30%;
}
.tab-list .col:last-of-type {
    padding: 3rem;
    background-color: var(--light-gray);
}
.tab-list .col:last-of-type img {
    width: 100%;
}


/* --- Lists > Horizontal Tab List --- */
.horizontal-tab-list .nav-tabs {
    display: flex;
    border-top: 1px solid var(--black);
    border-right: 1px solid var(--black);
    border-bottom: 1px solid var(--black);
}
.horizontal-tab-list .nav-tabs button {
    flex-grow: 1;
    height: 68px;
    margin: 0;
    border-top: 0;
    border-right: 0;
    border-bottom: 0;
    border-left: 1px solid var(--black);
    border-radius: 0;
    color: var(--black);
    font-weight: bold;
}
.horizontal-tab-list .nav-tabs :is(button, button.active) {
    border-color: inherit;
}
.horizontal-tab-list .nav-tabs button.active {
    border-top: 0;
    border-right: 0;
    border-bottom: 0;
    border-left: 1px solid var(--black);
    background-color: var(--dg-sky-blue);
    color: var(--black);
}
.horizontal-tab-list .tab-content .row {
    flex-wrap: nowrap;
    gap: 3rem;
    margin-top: 6rem;
}
.horizontal-tab-list .tab-content .row .col:last-of-type {
    max-width: 40%;
}
.horizontal-tab-list .tab-content .row .col:last-of-type img {
    width: 100%;
    height: 333px;
    aspect-ratio: 3 / 2;
    object-fit: cover;
}


/* --- Lists > Card List --- */
.card-list .row {
    gap: 3rem;
    flex-wrap: wrap;
    justify-content: center;
}
.card-list .row .col {
    line-height: 128.284%;
    padding: 2rem;
    border-radius: 10px;
    background-color: var(--white);
    font-size: 16px;
}
.card-list .row .col strong {
    display: block;
    text-transform: uppercase;
}
.card-list .row .col p {
    margin-bottom: 0 !important;
}


/* --- Lists > Vertical Icon List --- */
.vert-list-icons .row {
    /*gap: 3rem;*/
}
.vert-list-icons .row .col:first-of-type {
    /*max-width: 45px;
    height: 45px;*/
}


/* --- Lists > Icon List --- */
.icon-list .row {
    gap: 3rem;
    flex-wrap: wrap;
    justify-content: center;
}
.icon-list .row .col {
    flex: 0 0 calc(100% / 3 - 2rem);
    text-align: center;
}
.icon-list .row .col strong {
    display: block;
    padding-bottom: 20px;
    color: var(--dg-fox-red);
    font-size: 26px;
    font-weight: normal !important;
    text-transform: uppercase;
}


/* --- Overlapped Photos --- */
.overlapped-photos, .overlapped-photos-2 {
    position: relative;
    overflow: hidden;
}
.overlapped-photos img:first-of-type, .overlapped-photos-2 img:first-of-type {
    position: absolute;
    top: 0;
    left: 0;
}
.overlapped-photos img:last-of-type {
    position: absolute;
    top: 25%;
    left: 25%;
    z-index: 2;
}
.overlapped-photos-2 img:last-of-type {
    position: absolute;
    top: 25%;
    left: 25%;
    z-index: -1;
}


/* --- Carousel Images (Our Approach **Not used**)--- */
.carousel-approach sl-carousel {
    border: 1px solid #d6c9b4;
}
.carousel-approach sl-carousel::part(navigation) {
    font-size: 70px;
}
.carousel-approach sl-carousel::part(pagination) {
    margin-bottom: 3rem;
}
.carousel-approach sl-carousel::part(pagination-item) {
    width: 2.5rem;
    height: 2.5rem;
    background-color: var(--white);
    border: 2px solid var(--dg-fox-red);
    transform: none;
}
.carousel-approach sl-carousel::part(pagination-item--active) {
    background-color: var(--dg-fox-red);
}
.carousel-approach sl-carousel::part(pagination-item):focus {
    outline: transparent;
}


#carouselImages .carousel-inner {
    border: 1px solid #D6C9B4;
}
#carouselImages .carousel-item img {
    width: 100%;
}
#carouselImages .carousel-navi {
    position: absolute;
    bottom: 0;
    display: flex;
    width: 100%;
    height: 50px;
    line-height: 50px;
}
#carouselImages .carousel-navi .carousel-navi-inner {
    width: 50%;
    height: 100%;
}
#carouselImages .carousel-navi .carousel-navi-inner button {
    top: initial;
    bottom: initial;
    color: var(--dg-fox-red);
    opacity: 1;
}
#carouselImages .carousel-navi .carousel-navi-inner .carousel-control-prev {
    left: auto;
    right: 50%;
}
#carouselImages .carousel-navi .carousel-navi-inner .carousel-control-next {
    left: 50%;
    right: auto;
}
#carouselImages :is(.carousel-control-next-icon, .carousel-control-prev-icon) {
    background-image: none !important;
}


/* --- Our Approach > Project Carousel --- */
.carousel-slide-projects sl-carousel-item {
    position: relative;
    height: 100%;
}
.carousel-slide-projects sl-carousel-item img {
    position: relative;
    z-index: 1;
}
.carousel-slide-projects sl-carousel-item div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 10px 20px;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.55) 73.5%);
    color: var(--white);
    font-size: 18px;
    font-weight: 700;
    z-index: 2;
}
.carousel-slide-projects sl-carousel-item div h3 {
    line-height: 120%;
    margin-top: 10px;
    color: var(--white);
    font-family: var(--dg-sans-serif);
    font-size: 32px;
    font-style: normal;
    font-weight: normal;
}
.carousel-slide-projects sl-carousel::part(pagination) {
    margin-top: 20px;
}
.carousel-slide-projects sl-carousel::part(pagination-item) {
    width: 12px;
    height: 12px;
    border: 1px solid var(--sl-color-neutral-300);
    background: transparent;
}
.carousel-slide-projects sl-carousel::part(pagination-item--active) {
    border-color: var(--black);
    background: var(--black);
    transform: none;
}


/* --- Contact Us --- */
.contact-container h4 {
    padding-bottom: 0;
    color: var(--black);
}
.contact-container .form-label {
    font-size: 1.8rem !important;
    font-weight: 700;
}
.contact-container .required-field {
    position: relative;
}
.contact-container .required-field .form-label:after {
    content: "(required)";
    margin-left: 5px;
    color: #00000040;
    font-weight: normal;
}
.contact-container .form-control {
    padding: 1rem 1.5rem;
    background-color: var(--light-gray);
    border-radius: 0;
    border-top: 0;
    border-right: 0;
    border-bottom: 3px solid var(--dg-sky-blue);
    border-left: 0;
    font-size: 1.8rem;
}
.contact-container .form-control:focus {
    outline: transparent;
    box-shadow: none;
}
.contact-container fieldset {
    border: none;
    padding: 0;
}
.contact-container .no-label {
    margin: 0 !important;
    padding: 0 !important;
}
.contact-container .no-label legend {
    display: none;
}
.contact-container .invalid-feedback {
    margin-top: -3px;
    border-top: 3px solid var(--dg-fox-red);
    color: var(--dg-fox-red);
}
.contact-container .invalid-feedback:after {
    content: "!";
    position: absolute;
    right: 1.5rem;
    display: block;
    width: 22px;
    height: 22px;
    line-height: 22px;
    margin-top: -67px;
    border-radius: 30px;
    background-color: var(--dg-fox-red);
    color: var(--white);
    text-align: center;
}
.contact-container .btn-primary {
    padding: 1.8rem 3.4rem;
    border: none;
    border-radius: 100px;
    background-color: var(--dg-fox-red);
    color: var(--white);
    font-size: 2rem;
}
.contact-container .btn-primary:hover {
    background-color: var(--dg-fox-red-hover);
}
.contact-container .my-3 {
    margin: 0 !important;
    padding: 2rem 0;
}
.contact-container a svg {
    margin-left: 5px;
    font-size: 14px;
}


/* --- History Tabs --- */
.history-tabs .row .col:first-of-type {
    display: flex;
    max-width: 20%;
    flex-wrap: wrap;
    flex-direction: column;
    row-gap: 2rem;
}
.history-tabs .nav-link {
    color: var(--black);
    font-size: 2rem;
    letter-spacing: 0.4px;
    text-align: left;
}
.history-tabs .nav-link.active {
    background-color: transparent;
    color: var(--dg-fox-red);
}
.history-tabs .nav-link em {
    display: block;
    font-family: var(--dg-serif);
    font-size: 3.2rem;
}
.history-tabs h2 {
    color: var(--dg-fox-red);
}
.history-tabs .tab-content .row img {
    max-width: 100%;
}


/* --- BW Family --- */
.bw-family {
    gap: 3rem;
    justify-content: center;
    padding: 0 20rem;
}
.bw-family .col-xl-4 {
    position: relative;
    flex-basis: calc(100% / 3 - 6rem);
    display: block;
    width: 250px;
    height: 250px;
    line-height: 250px;
    padding: 0 2rem;
    background-color: var(--light-gray);
    transition: 0.3s ease-in-out;
}
.bw-family .col-xl-4 img {
    max-width: 100%;
    opacity: 0.4;
    transition: 0.3s ease-in-out;
}
.bw-family .col-xl-4 span {
    position: absolute;
    bottom: 2rem;
    left: 2rem;
    right: 2rem;
}
.bw-family a:hover {
    background-color: #f2f2f220;
}
.bw-family a:hover img {
    opacity: 1;
}
.bw-family .see-all {
    line-height: 1;
    padding: 2rem;
    background-color: var(--dg-sky-blue);
    color: var(--black) !important;
    font-size: 1.6rem;
    text-align: center;
    text-transform: uppercase;
}
.bw-family .see-all svg {
    margin: 4rem 0;
    color: var(--white) !important;
    font-size: 8rem;
}
.bw-family .see-all:hover svg {
    color: var(--black) !important;
}


/* --- Brand Card --- */
.brand-col {
    height: 100%;
}
.brand-card {
    border: none;
    border-radius: 0;
    background-color: var(--light-gray);
    text-align: center;
}
.brand-card a {
    display: block;
    width: 100%;
    padding: 6rem;
    color: var(--black) !important;
}
.brand-card img {
    max-width: inherit;
    min-width: inherit;
    width: auto;
    height: 70px;
}
.brand-card .card-text {
    margin: 2rem 0 0 !important;
}


/* --- Our Approach --- */
.approach-intro h6 {
    line-height: 128.284%;
    letter-spacing: 0.72px;
    padding-bottom: 30px;
    font-size: 3.6rem;
}
.approach-checklist li {
    border: none !important;
    padding: .5rem 0 !important;
    color: var(--dg-fox-red);
}
.approach-checklist li svg {
    margin-right: 1rem !important;
    font-size: 2rem !important;
}
.approach-4-cols {
    margin-top: 6rem;
}
.approach-4-cols > div {
    padding-top: 3rem;
}
.approach-4-cols > div > div {
    position: relative;
}
.approach-4-cols > div > div:before {
    content: " ";
    position: absolute;
    top: -3rem;
    left: 0;
    width: 15px;
    height: 15px;
    border-radius: 15px;
    background-color: var(--light-gray);
}
.approach-4-cols > div:nth-of-type(2) > div:before {
    background-color: var(--dg-sky-blue);
}
.approach-4-cols > div:nth-of-type(3) > div:before {
    background-color: rgba(241, 91, 64, 0.40);
}
.approach-4-cols > div:nth-of-type(4) > div:before {
    background-color: var(--dg-fox-red);
}
.approach-4-cols > div > div:after {
    content: " ";
    position: absolute;
    top: -2.3rem;
    right: 0;
    width: calc(100% - 30px);
    height: 1px;
    background-color: var(--black);
}
.approach-triad {
    text-align: center;
}
.approach-triad strong {
    color: var(--dg-fox-red);
    font-family: var(--dg-sans-serif);
    font-size: 26px;
    font-weight: 700;
}
.approach-triad p:last-of-type {
    margin-bottom: 0 !important;
}


/* --- Markets > Listing --- */
.market-listings .nav-tabs {
    display: flex;
    flex-wrap: nowrap;
    gap: 3rem;
    justify-content: center;
    border: none;
}
.market-listings .nav-tabs button {
    width: 237px;
    height: 228px;
    border: none;
    border-radius: 149.5px;
    background-color: var(--light-gray);
    color: var(--black);
    font-size: 3.2rem;
}
.market-listings .nav-tabs button.active {
    background-color: var(--dg-fox-red);
    color: var(--black);
}
.market-listings .big-numbers ul {
    flex-wrap: wrap;
    gap: 0;
    row-gap: 4rem;
}
.market-listings .big-numbers li {
    width: 50%;
    flex-grow: 0;
    padding: 0 3rem;
}


/* --- Markets > Detail --- */
.market-header h4 {
    padding-bottom: 0;
}
.market-header h1 {
    margin-top: 0;
}
.market-description .market-photos {
    position: relative;
    overflow: hidden;
}
.market-description .market-photos img:first-of-type {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    aspect-ratio: 3 / 2;
    object-fit: cover;
    width: 420px;
}
.market-description .market-photos img:last-of-type {
    position: absolute;
    top: 240px;
    right: 6rem;
    aspect-ratio: 3 / 4;
    object-fit: cover;
    width: 300px;
}
.market-description .row {
    gap: 3rem;
}
.market-description .row > div:first-of-type {
    min-width: 60%;
}
.market-description .row > div:last-of-type strong {
    color: var(--dg-fox-red);
}
.market-description .row > div:last-of-type ul {
    padding-left: 0;
}
.market-description .row > div:last-of-type ul li {
    list-style-type: none;
    line-height: 115%;
    padding: 7px 0;
}
.market-description-no-sub .market-photos img {
    width: 100%;
    aspect-ratio: 3 / 2;
    object-fit: cover;
    object-position: center;
}
.market-description-no-sub .row {
    gap: 3rem;
}
.market-divider {
    margin: 6rem 0 !important;
}
.market-leaders {
    padding-bottom: 3rem;
}
.market-leaders .col-xl-4 {
    padding: 2rem;
    text-align: center;
}
.market-leaders .col-xl-4 img {
    width: 198px;
    height: 198px;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: center;
    border-radius: 100px;
}
.market-leaders .col-xl-4 strong {
    display: block;
}
.market-capabilities {
    position: relative;
    flex-wrap: nowrap;
}
.market-capabilities .gray-background {
    width: 75%;
    padding: 6rem;
}
.market-capabilities .sky-blue-background {
    margin: 3rem 0 3rem -10rem;
    padding: 3rem;
}
.market-submarkets .nav-tabs {
    display: flex;
    border-top: 1px solid var(--black);
    border-right: 1px solid var(--black);
    border-bottom: 1px solid var(--black);
}
.market-submarkets .nav-tabs button {
    flex-grow: 1;
    height: 68px;
    margin: 0;
    border-top: 0;
    border-right: 0;
    border-bottom: 0;
    border-left: 1px solid var(--black);
    border-radius: 0;
    color: var(--black);
    font-weight: bold;
}
.market-submarkets .nav-tabs :is(button, button.active) {
    border-color: inherit;
}
.market-submarkets .nav-tabs button.active {
    border-top: 0;
    border-right: 0;
    border-bottom: 0;
    border-left: 1px solid var(--black);
    background-color: var(--dg-sky-blue);
    color: var(--black);
}
.market-submarkets .tab-content .row {
    flex-wrap: nowrap;
    gap: 3rem;
    margin-top: 4rem;
}
.market-submarkets .tab-content .row .col:last-of-type {
    max-width: 40%;
}
.market-submarkets .tab-content .row .col:last-of-type img {
    max-width: 100%;
    aspect-ratio: 3 / 2;
    object-fit: cover;
}
.vertical-img-slices {
    display: flex;
    gap: 3rem;
    margin-bottom: 6rem;
}
.vertical-img-slices img {
    aspect-ratio: 1 / 2;
    object-fit: cover;
    object-position: center;
    flex-grow: 1;
    width: 50%;
    max-height: 500px;
}


/* --- Markets > Div Removals --- */
section.sub-no :is(.market-submarkets, .market-divider:last-of-type, .market-description-no-sub) {
    display: none;
}
section.sub-yes :is(.market-description, .market-leaders) {
    display: none;
}


/* --- Markets > Capabilities Carousel --- */
.carousel-market-capabilities {
    width: 80%;
    margin-top: 3rem;
    margin-left: 5%;
}
.carousel-market-capabilities sl-carousel::part(scroll-container) {
    align-items: start;
}
.carousel-market-capabilities sl-carousel-item {
    display: block;
    height: 100%;
    padding: 0 10px 0 0;
    border-top: 0;
    border-right: 1px solid var(--black);
    border-bottom: 0;
    border-left: 0;
    color: var(--dg-fox-red);
    overflow: hidden;
}
.carousel-market-capabilities sl-carousel-item a {
    position: relative;
    display: block;
    height: 300px;
    overflow: hidden;
}
.carousel-market-capabilities sl-carousel-item a img {
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0);
    height: 100%;
}
.carousel-market-capabilities sl-carousel-item strong {
    display: block;
    line-height: 128.284%;
    padding-top: 17px;
    font-size: 2.4rem;
}
.carousel-market-capabilities sl-icon {
    color: var(--dg-fox-red);
    font-size: 3rem;
}


/* --- Capabilities --- */
.capability-listings {
    display: flex;
    flex-wrap: nowrap;
    gap: 3rem;
}
.capability-listings .col {
    flex-grow: 1;
}
.capability-listings .col .nav-tabs {
    border: none;
}
.capability-listings .col button {
    display: block;
    width: 100%;
    padding: 1rem 0;
    border: none;
    color: var(--black);
    font-size: 3.2rem;
    text-align: left;
}
.capability-listings .col button a {
    color: var(--black) !important;
}
.capability-listings .col button.active a {
    color: var(--dg-fox-red) !important;
    text-decoration: underline !important;
}
.capability-listings .col button.active:after {
    content: ">";
    color: var(--dg-fox-red);
}
.capability-listings .col:last-of-type {
    width: 50%;
    text-align: right;
}
.capability-listings .col:last-of-type img {
    max-width: 100%;
}
.checkmark-list ul {
    padding: 0;
}
.checkmark-list ul li {
    list-style-type: none;
    padding: 3rem 0;
    border-top: 1px solid var(--black);
}
.checkmark-list ul li:first-of-type {
    padding-top: 1rem;
    border-top: 0;
}
.checkmark-list ul li svg {
    margin-right: 3rem;
    color: var(--dg-fox-red);
    font-size: 3rem;
}
.large-outline {
    line-height: 12.8rem;
    color: var(--white);
    font-size: 12.8rem;
    -webkit-text-stroke: 2px var(--black);
    margin-bottom: 6rem;
}
.approach-indent {
    width: 20%;
    margin-left: 20%;
}
.capability-listings button.Yes {
    display: block;
    line-height: 1.6rem;
    margin-top: 3rem;
    margin-bottom: 1rem;
    border-bottom: 2px solid #00000025 !important;
    font-size: 1.6rem;
}
.capability-listings button.Yes:first-of-type {
    margin-top: 0;
}
.capability-listings button.Yes a {
    color: #00000050 !important;
    text-transform: uppercase;
    pointer-events: none;
}


/* --- Capabilities > Listings Simple --- */
.capability-listings-simple li {
    display: block;
    width: 100%;
    padding: 1rem 0;
    border: none;
    color: var(--black);
    font-size: 3.2rem;
    text-align: left;
}
.capability-listings-simple li a {
    color: var(--black) !important;
}
.capability-listings-simple li a:hover {
    color: var(--dg-fox-red) !important;
}
.capability-listings-simple li.Yes {
    display: block;
    line-height: 1.6rem;
    margin-top: 3rem;
    margin-bottom: 1rem;
    border-bottom: 2px solid #00000025 !important;
    font-size: 1.6rem;
}
.capability-listings-simple li.Yes a {
    color: #00000050 !important;
    text-transform: uppercase;
    pointer-events: none;
}


/* --- Capabilities > Table --- */
.capability-listings-table-wrapper .px-0 {
    border-right: 3px solid #d9d9d9;
    border-left: 3px solid #d9d9d9;
}
.capability-listings-table-wrapper :is(.pl-0 .capability-listings-table div, .px-0 .capability-listings-table div) {
    padding-left: 20px;
}
.capability-listings-table div.Yes {
    line-height: 128.284%;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 3px solid #d9d9d9;
    color: var(--dg-fox-red);
    font-family: var(--dg-serif);
    font-size: 30px;
    font-style: normal;
    font-weight: 700;
    text-transform: lowercase;
    pointer-events: none;
}
.capability-listings-table div.No a {
    line-height: 32px;
    color: var(--black) !important;
    font-size: 20px;
    font-weight: 300;
    letter-spacing: 0.8px;
    text-decoration: underline !important;
}


/* --- Capabilities > Detail --- */
.capability-header {
    display: flex;
    flex-wrap: nowrap;
    gap: 3rem;
}
.capability-header > div {
    flex-grow: 1;
    max-width: 50%;
}
.capability-header img {
    max-width: 100%;
    object-fit: cover;
    aspect-ratio: 3 / 2;
}
#content .capability-divider {
    margin: 6rem 0;
}
.capability-description {
    display: flex;
    flex-wrap: nowrap;
    gap: 3rem;
}
.capability-description > div {
    flex-grow: 1;
}
.capability-description .capability-secondary-photo {
    max-width: 40%;
}
.capability-description img {
    max-width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
}
.capability-leaders > div:last-of-type .col-xl-4 {
    padding: 2rem;
    text-align: center;
}
.capability-leaders > div:last-of-type .col-xl-4 img {
    width: 198px;
    height: 198px;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: center;
    border-radius: 100px;
}
.capability-leaders > div:last-of-type .col-xl-4 strong {
    display: block;
}
.capability-markets .col-xl-3 img {
    max-width: 100%;
}
.capability-related ul {
    padding: 0;
}
.capability-related ul li {
    list-style-type: none;
    display: inline-block;
    margin-right: 10px;
}
.capability-related ul li:after {
    content: "|";
    margin-left: 5px;
    font-size: 3.6rem;
}
.capability-related ul li:last-of-type:after {
    content: none;
}
.capability-related ul li a {
    color: var(--black) !important;
    font-size: 3.6rem;
}
.capability-related ul li a:hover {
    color: var(--dg-fox-red) !important;
}
.capability-subcapabilities .nav-tabs {
    display: flex;
    border-top: 1px solid var(--black);
    border-right: 1px solid var(--black);
    border-bottom: 1px solid var(--black);
}
.capability-subcapabilities .nav-tabs button {
    flex-grow: 1;
    height: 68px;
    margin: 0;
    border-top: 0;
    border-right: 0;
    border-bottom: 0;
    border-left: 1px solid var(--black);
    border-radius: 0;
    color: var(--black);
    font-weight: bold;
}
.capability-subcapabilities .nav-tabs :is(button, button.active) {
    border-color: inherit;
}
.capability-subcapabilities .nav-tabs button.active {
    border-top: 0;
    border-right: 0;
    border-bottom: 0;
    border-left: 1px solid var(--black);
    background-color: var(--dg-sky-blue);
    color: var(--black);
}
.capability-subcapabilities .tab-content .row {
    flex-wrap: nowrap;
    gap: 3rem;
    margin-top: 4rem;
}
.capability-subcapabilities .tab-content .row .col:last-of-type {
    max-width: 40%;
}
.capability-subcapabilities .tab-content .row .col:last-of-type img {
    max-width: 100%;
}


/* --- Capabilities > Div Removals --- */
section.sub-no :is(.capability-subcapabilities, .capability-stats) {
    display: none;
}
section.sub-yes :is(.capability-description, .capability-divider:last-of-type, .capability-leaders, .capability-related-container) {
    display: none;
}
section.sub-yes .capability-header {
    flex-direction: row-reverse;
}


/* --- About > Footers --- */
.about-footer {
    position: relative;
    height: 380px;
    overflow: hidden;
}
.about-footer .about-footer-copy {
    position: relative;
    width: 100%;
    height: 100%;
    background-color: rgba(241, 91, 64, 0.60);
    z-index: 2;
}
.about-footer .about-footer-copy > div {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
}
.about-footer h2 {
    color: var(--white);
}
.about-footer .button {
    background-color: var(--white);
    color: var(--black) !important;
    border: none;
}
.about-footer .button:hover {
    background-color: rgba(247, 179, 167);
}
.about-footer img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}


/* --- About > Who We Are > About Us Tabs --- */
.about-us-tabs .tab-pane a {
    font-weight: 700;
    text-decoration: underline !important;
}


/* --- About > Our People > Team Leaders Filter --- */
#team-leaders .leader {
    padding: 2rem;
    text-align: center;
}
#team-leaders .leader img {
    width: 198px;
    height: 198px;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: center;
    border-radius: 100px;
}
#team-leaders .leader strong {
    display: block;
}

#team-leaders {
    align-items: flex-start;
}
#team-leaders > .col-4 {
    padding: 3rem;
    background-color: var(--light-gray);
}
#team-leaders #accordionExample {
    border: 1px solid var(--black);
}
#team-leaders .accordion h2 button {
    position: relative;
    background: var(--white);
    color: var(--black);
    font-size: 1.8rem;
}
#team-leaders .accordion-button:focus {
    outline: 0;
    box-shadow: none;
}
#team-leaders .accordion-button svg {
    position: absolute;
    right: 15px;
}
#team-leaders .accordion-button::after {
    content: none;
}
#team-leaders .accordion-body {
    border-top: 1px solid var(--black);
}
#team-leaders .accordion-item {
    border: none !important;
}
#team-leaders :is(.accordion-item:first-of-type, .accordion-item:last-of-type) {
    border-radius: 0;
}
#team-leaders .accordion .accordion-body ul.team-leader-categories {
    padding-left: 0;
}
#team-leaders .accordion .accordion-body ul.team-leader-categories li {
    list-style: none;
    padding: 5px 0;
}
#team-leaders .accordion .accordion-body ul.team-leader-categories li:hover {
    cursor: pointer;
    color: var(--dg-fox-red);
}
#team-leaders .accordion .accordion-body ul.team-leader-categories .leader-cat-off {
    opacity: 0.7;
    cursor: default !important;
    color: var(--black) !important;
}
#team-leaders .accordion .accordion-body ul.team-leader-categories .leader-cat-indent {
    text-indent: 10px;
}
#team-leaders .accordion-collapse {
    background-color: var(--light-gray);
}


/* --- Policies > Tables --- */
.policy-table {
    border-top: 1px solid var(--black);
    border-left: 1px solid var(--black);
}
.policy-table td {
    padding: 17px;
    border-bottom: 1px solid var(--black);
    border-right: 1px solid var(--black);
    vertical-align: top;
}
.policy-table tr td:last-of-type {
    padding-right: 100px;
}


/* --- Super Footer --- */
#dg-footer {
    width: 100%;
    padding: 65px 0;
    background-color: var(--dg-beige);
}
.button-footer {
    display: inline-flex;
    padding: 16px 48px;
    justify-content: center;
    align-items: center;
    gap: 4px;
    border: 2px solid var(--dg-fox-red);
    background: transparent;
    color: var(--black) !important;
    transition: 0.3s ease-in-out;
}
.button-footer:hover {
    background: var(--dg-fox-red);
    color: var(--white) !important;
}
.button-footer svg {
    margin-left: 5px;
    font-size: 1.4rem;
}
.social-footer {
    font-size: 1.4rem;
}
.social-footer a {
    color: var(--black) !important;
}
.social-footer a svg {
    margin-right: 5px;
    margin-bottom: -5px;
    font-size: 27px;
    opacity: .2;
}
.social-footer a:hover svg {
    opacity: 1;
}
.footer-links ul {
    padding-left: 0;
}
.footer-links ul li {
    list-style: none;
    margin-left: 0;
}
.footer-links ul li a {
    display: inline;
    line-height: 178%;
    padding-left: 0;
    padding-right: 0;
    color: var(--black) !important;
    font-size: 2rem;
}
.footer-links ul li a:hover {
    color: var(--dg-fox-red) !important;
}
.footer-links ul li a svg {
    margin-left: 10px;
    font-size: 1.4rem;
}
.legal-footer {
    position: relative;
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid var(--black);
    font-size: 1.4rem;
}
.legal-footer ul {
    position: absolute;
    right: 0;
    display: inline-block;
    padding: 0;
}
.legal-footer ul li {
    list-style-type: none;
    display: inline-block;
    margin: 0 10px;
}
.legal-footer ul li:last-of-type {
    margin-right: 0;
}


/* --- Back to top --- */
.back-to-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
}

/* --- Locations --- */
.locations-map-wrapper > .col-lg-8 {
    height: 600px;
}
.locations-sidebar {
    position: relative;
    height: 600px;
    overflow: scroll;
}
.locations-sidebar-header {
    position: sticky;
    top: 0;
    padding: 30px 0 30px 50px;
    border-bottom: 1px solid var(--light-gray);
    background-color: var(--white);
}
.locations-sidebar-header .col-8 {
    position: relative;
}
.locations-buttons {
    text-align: center;
}
.locations-buttons button {
    padding: 5px 15px;
    border: 0;
    border-radius: 50px;
    background-color: var(--dg-fox-red);
    color: var(--white);
    transition: ease-in-out 0.3s;
}
.locations-buttons button:hover {
    background-color: var(--dg-fox-red-hover);
}
.region-filter {
    position: absolute;
    width: 100%;
    height: 40px;
    line-height: 40px;
    padding: 0 10px;
    border: 1px solid var(--black);
    background-color: var(--white);
    overflow: hidden;
}
.region-filter:hover {
    height: auto;
}
.region-filter > div {
    height: 40px;
}
.region-filter .filter-title {
    position: relative;
    cursor: pointer;
}
.region-filter .filter-title svg {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(0, -50%);
    font-size: 1.2rem;
}
#locations-counter {
    display: block;
    margin-top: 20px;
    margin-bottom: 20px;
    padding-left: 30px;
    font-style: italic;
}
ul.company-locations li {
    list-style: none;
    cursor: pointer;
    padding: 30px;
}
ul.company-locations li:hover {
    background-color: var(--dg-fox-red);
    opacity: 2;
    color: var(--white);

    & h4 {
        color: var(--white);
    }
}
ul.company-locations li p {
    margin: 0 !important;
}
ul.company-locations li span {
    display: none;
}


/* --- Cookie List --- */
#ot-sdk-cookie-policy, #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy {
    line-height: var(--bs-body-line-height) !important;
    margin-top: 40px;
    color: var(--bs-body-color) !important;
    font-size: var(--bs-body-font-size) !important;
}
#ot-sdk-cookie-policy #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy h3#cookie-policy-title {
    margin-bottom: 2rem;
    color: var(--dg-fox-red);
    font-family: var(--dg-serif);
    font-size: 28px;
    font-style: italic;
    font-weight: 700;
    line-height: 128.284%; /* 35.92px */
}
#ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy h5, #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy h6, #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy li, #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy p, #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy a, #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy span, #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy td, #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy #cookie-policy-description {
    color: var(--bs-body-color) !important;
}
#ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy #cookie-policy-description, #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy .ot-sdk-cookie-policy-group-desc, #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy .ot-table-header, #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy a, #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy span, #ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy td {
    font-size: var(--bs-body-font-size) !important;
}
#onetrust-banner-sdk div, #onetrust-banner-sdk span, #onetrust-banner-sdk h1, #onetrust-banner-sdk h2, #onetrust-banner-sdk h3, #onetrust-banner-sdk h4, #onetrust-banner-sdk h5, #onetrust-banner-sdk h6, #onetrust-banner-sdk p, #onetrust-banner-sdk img, #onetrust-banner-sdk svg, #onetrust-banner-sdk button, #onetrust-banner-sdk section, #onetrust-banner-sdk a, #onetrust-banner-sdk label, #onetrust-banner-sdk input, #onetrust-banner-sdk ul, #onetrust-banner-sdk li, #onetrust-banner-sdk nav, #onetrust-banner-sdk table, #onetrust-banner-sdk thead, #onetrust-banner-sdk tr, #onetrust-banner-sdk td, #onetrust-banner-sdk tbody, #onetrust-banner-sdk .ot-main-content, #onetrust-banner-sdk .ot-toggle, #onetrust-banner-sdk #ot-content, #onetrust-banner-sdk #ot-pc-content, #onetrust-banner-sdk .checkbox, #onetrust-pc-sdk div, #onetrust-pc-sdk span, #onetrust-pc-sdk h1, #onetrust-pc-sdk h2, #onetrust-pc-sdk h3, #onetrust-pc-sdk h4, #onetrust-pc-sdk h5, #onetrust-pc-sdk h6, #onetrust-pc-sdk p, #onetrust-pc-sdk img, #onetrust-pc-sdk svg, #onetrust-pc-sdk button, #onetrust-pc-sdk section, #onetrust-pc-sdk a, #onetrust-pc-sdk label, #onetrust-pc-sdk input, #onetrust-pc-sdk ul, #onetrust-pc-sdk li, #onetrust-pc-sdk nav, #onetrust-pc-sdk table, #onetrust-pc-sdk thead, #onetrust-pc-sdk tr, #onetrust-pc-sdk td, #onetrust-pc-sdk tbody, #onetrust-pc-sdk .ot-main-content, #onetrust-pc-sdk .ot-toggle, #onetrust-pc-sdk #ot-content, #onetrust-pc-sdk #ot-pc-content, #onetrust-pc-sdk .checkbox, #ot-sdk-cookie-policy div, #ot-sdk-cookie-policy span, #ot-sdk-cookie-policy h1, #ot-sdk-cookie-policy h2, #ot-sdk-cookie-policy h3, #ot-sdk-cookie-policy h4, #ot-sdk-cookie-policy h5, #ot-sdk-cookie-policy h6, #ot-sdk-cookie-policy p, #ot-sdk-cookie-policy img, #ot-sdk-cookie-policy svg, #ot-sdk-cookie-policy button, #ot-sdk-cookie-policy section, #ot-sdk-cookie-policy a, #ot-sdk-cookie-policy label, #ot-sdk-cookie-policy input, #ot-sdk-cookie-policy ul, #ot-sdk-cookie-policy li, #ot-sdk-cookie-policy nav, #ot-sdk-cookie-policy table, #ot-sdk-cookie-policy thead, #ot-sdk-cookie-policy tr, #ot-sdk-cookie-policy td, #ot-sdk-cookie-policy tbody, #ot-sdk-cookie-policy .ot-main-content, #ot-sdk-cookie-policy .ot-toggle, #ot-sdk-cookie-policy #ot-content, #ot-sdk-cookie-policy #ot-pc-content, #ot-sdk-cookie-policy .checkbox, #ot-sync-ntfy div, #ot-sync-ntfy span, #ot-sync-ntfy h1, #ot-sync-ntfy h2, #ot-sync-ntfy h3, #ot-sync-ntfy h4, #ot-sync-ntfy h5, #ot-sync-ntfy h6, #ot-sync-ntfy p, #ot-sync-ntfy img, #ot-sync-ntfy svg, #ot-sync-ntfy button, #ot-sync-ntfy section, #ot-sync-ntfy a, #ot-sync-ntfy label, #ot-sync-ntfy input, #ot-sync-ntfy ul, #ot-sync-ntfy li, #ot-sync-ntfy nav, #ot-sync-ntfy table, #ot-sync-ntfy thead, #ot-sync-ntfy tr, #ot-sync-ntfy td, #ot-sync-ntfy tbody, #ot-sync-ntfy .ot-main-content, #ot-sync-ntfy .ot-toggle, #ot-sync-ntfy #ot-content, #ot-sync-ntfy #ot-pc-content, #ot-sync-ntfy .checkbox {
    line-height: var(--bs-body-line-height) !important;
}
#ot-sdk-btn.ot-sdk-show-settings, #ot-sdk-btn.optanon-show-settings {
    background-color: var(--dg-fox-red) !important;
    color: var(--white) !important;
    border-color: var(--dg-fox-red) !important;
}
#ot-sdk-btn.ot-sdk-show-settings:hover, #ot-sdk-btn.optanon-show-settings:hover {
    background-color: var(--dg-fox-red-hover) !important;
    border-color: var(--dg-fox-red-hover) !important;
}


/* --- Search Results --- */
#sf-search-result-container h1 {
    text-transform: capitalize;
}
#sf-search-result-container h3 {
    margin-bottom: 0;
    font-style: normal !important;
}
#Market, #Submarket, #Capability, #Sub-Capability {
    display: none !important;
}