/*
Theme Name: DBS Group LLC.
Version: 1.0
Description: Custom theme.
Author: DigiSage, Inc.
Author URI: https://digisage.com
template: bb-theme
*/

:root {
   --dbs-deep-blue: #1F2A36;
   --dbs-orange: #b85c1d;
   --dbs-red: #a63821;
   --dbs-light-gray: #8b8b8c;
   --dbs-med-gray: #525051;
   --dbs-black: #262626;
   --dbs-icon-arrow: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 20' fill='none'><path d='M 0,0 V 3.127 L 6.54,9.917 0,16.912 V 20 L 8.225,11.4 V 8.436 Z' fill='%23ffffff'/></svg>");
   --dbs-icon-double-arrow: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 228 400' fill='none'><path d='M 0,0 V 3.127 L 6.54,9.917 0,16.912 V 20 L 8.225,11.4 V 8.436 Z' fill='%23ffffff'/><path d='M 8,0 V 3.127 L 14.54,9.917 8,16.912 V 20 l 8.225,-8.6 V 8.436 Z' fill='%23ffffff'/></svg>");
   --dbs-icon-contact: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 38 30' fill='none'><path d='M13.6,30a.746.746,0,0,1-.514-.2L5.957,23.039H2.939A2.942,2.942,0,0,1,0,20.1V2.939A2.942,2.942,0,0,1,2.939,0H34.78a2.943,2.943,0,0,1,2.939,2.939V20.1a2.942,2.942,0,0,1-2.939,2.938H14.342v6.213A.747.747,0,0,1,13.6,30M2.939,1.5A1.445,1.445,0,0,0,1.5,2.939V20.1a1.444,1.444,0,0,0,1.443,1.443H6.255a.747.747,0,0,1,.515.205l6.078,5.764V22.292a.748.748,0,0,1,.748-.748H34.78A1.445,1.445,0,0,0,36.224,20.1V2.939A1.446,1.446,0,0,0,34.78,1.5Z' fill='%23ffffff'/><path d='M17.795,19.874a3.221,3.221,0,1,1-3.221-3.221,3.221,3.221,0,0,1,3.221,3.221' transform='translate(-5.695 -8.354)' fill='%23ffffff'/><path d='M37.821,19.874A3.221,3.221,0,1,1,34.6,16.653a3.221,3.221,0,0,1,3.221,3.221' transform='translate(-15.741 -8.354)' fill='%23ffffff'/><path d='M57.847,19.874a3.221,3.221,0,1,1-3.221-3.221,3.221,3.221,0,0,1,3.221,3.221' transform='translate(-25.787 -8.354)' fill='%23ffffff'/></svg>");
   --dbs-icon-search: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'><path d='M7.959,15.918A7.959,7.959,0,0,1,2.332,2.332,7.959,7.959,0,0,1,13.588,13.588a7.91,7.91,0,0,1-5.628,2.331m0-13.9a5.943,5.943,0,1,0,4.2,1.739,5.929,5.929,0,0,0-4.2-1.739' fill='%23ffffff'/><path d='M21.6,22.607a1,1,0,0,1-.711-.3L16.9,18.318a1.006,1.006,0,0,1,1.423-1.424l3.995,3.995a1.006,1.006,0,0,1-.711,1.718' transform='translate(-2.607 -2.607)' fill='%23ffffff'/></svg>");
   --svg-icon-bluesky: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23 20' fill='none'><path d='M4.94241 1.34625C7.55648 3.30132 10.3682 7.26541 11.4005 9.39276C12.433 7.26556 15.2445 3.30128 17.8587 1.34625C19.7449 -0.0644595 22.801 -1.15598 22.801 2.3173C22.801 3.01097 22.4017 8.14443 22.1676 8.97783C21.3537 11.8753 18.388 12.6143 15.75 12.167C20.3612 12.9489 21.5343 15.5387 19.0009 18.1285C14.1896 23.047 12.0856 16.8944 11.5462 15.3179C11.4474 15.0289 11.4012 14.8937 11.4005 15.0086C11.3998 14.8937 11.3536 15.0289 11.2547 15.3179C10.7156 16.8944 8.61168 23.0472 3.80003 18.1285C1.26663 15.5387 2.43965 12.9487 7.051 12.167C4.41286 12.6143 1.44711 11.8753 0.633352 8.97783C0.399203 8.14435 0 3.01089 0 2.3173C0 -1.15598 3.05618 -0.0644595 4.94228 1.34625H4.94241Z' fill='%23ffffff'/></svg>");
   --dbs-shape-gray-brand: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 250 175' fill='none'><path d='M0,122.824V0Q125.1,26.117,249.9,52.128V174.882Q124.711,148.8,0,122.824' fill='%23231f20'/></svg>");
   --dbs-pagewidth: 1300px;
}

/* this version of the font is required because the Google
   version is a variable font which causes weird lines in
   the outline technique */
@font-face {
   font-family: 'montserratblack';
   src: url('assets/fonts/montserrat-black-webfont.woff2') format('woff2'),
        url('assets/fonts/montserrat-black-webfont.woff') format('woff');
   font-weight: normal;
   font-style: normal;
}

/* masthead */

#masthead {
   position: relative;
   z-index: 15;
}

/* logo */
#masthead .logo-col {
   position: relative;
}
#masthead .logo-col .fl-module-photo {
   position: absolute;
   top: 0;
   left: 0;
   padding: 15px 15px 15px 15px;
   background: var(--dbs-orange);
}
#masthead .logo-col .fl-module-photo img {
   max-height: 54px;
   transition: .3s;
}
body.home #masthead .logo-col .fl-module-photo {
   width: 230px;
   padding: 27px 15px 27px 15px !important;
   transition: .3s;
}
body.home #masthead .logo-col .fl-module-photo .fl-photo-content {
   width: 200px;
}
body.home #masthead .logo-col .fl-module-photo img {
   max-height: 78px;
}
body.home .fl-theme-builder-header-shrink #masthead .logo-col .fl-module-photo {
   padding: 17px 15px 17px 15px !important;
}

/* menu */
ul#menu-desktop-menu > li .fl-has-submenu-container > a,
ul#menu-desktop-menu > li > a {
   position: relative;
}
/* hover bottom orange border */
ul#menu-desktop-menu > li.active > .fl-has-submenu-container > a::after,
ul#menu-desktop-menu > li.active > a::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 100;
   width: calc(100% - 36px);
   height: 15px;
   background: var(--dbs-orange);
   top: calc(100% - 3px);
   left: 18px;
}
ul#menu-desktop-menu li span.fl-menu-toggle {
   display: none;
}
ul#menu-desktop-menu > li ul.sub-menu {
   width: 270px;
   top: calc(100% + 12px);
}
ul#menu-desktop-menu > li ul.sub-menu li:last-child::after {
   content: '';
   position: absolute;
   left: 0;
   top: 100%;
   width: 100%;
   height: 50px;
   background: rgba(38, 38, 38, 0.95);
   clip-path: polygon(100% 0, 100% 100%, 68% 100%, 0 calc(100% - 30px), 0 0);
}
ul#menu-desktop-menu li ul.sub-menu li a:hover::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   top: 100%;
   left: 0px;
   width: calc(100% - 30px);
   height: 1px;
   background: var(--dbs-orange);
}
.fl-menu-mobile-flyout ul#menu-desktop-menu > li ul.sub-menu li:last-child::after {
   display: none !important;
}
ul#menu-desktop-menu li ul li ul {
   display: block;
   position: static;
   width: 100%;
   clip-path: none !important;
   background: none;
   box-shadow: none;
   margin: 0;
   padding: 0;
   visibility: visible;
   opacity: 1;
}
ul#menu-desktop-menu li:not(.flyout-menu) ul ul li::after {
   display: none !important;
}
ul#menu-desktop-menu li ul li ul li {
   padding-left: 15px;
}
/* menu contact uses icon */
ul#menu-desktop-menu li.contact-link {
   margin-left: 20px;
}
ul#menu-desktop-menu li.contact-link a {
   position: relative;
   top: 2px;
   width: 40px;
   height: 30px;
   background-color: var(--dbs-orange);
   mask-size: 40px auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-contact);
   -webkit-mask-size: 40px auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-contact);
   transition: .3s;
   color: transparent;
}
ul#menu-desktop-menu li.contact-link a:hover {
   background-color: #fff;
}
/* menu search item */
ul#menu-desktop-menu li.fl-menu-search-item a.fl-button i::before {
   content: '';
}
ul#menu-desktop-menu li.fl-menu-search-item a.fl-button i {
   width: 20px;
   height: 20px;
   background-color: var(--dbs-orange);
   mask-size: 100% auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-search);
   -webkit-mask-size: 100% auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-search);
   transition: .3s;
}
ul#menu-desktop-menu li.fl-menu-search-item a.fl-button:hover i {
   background-color: #fff;
}
ul#menu-desktop-menu li.fl-menu-search-item input.fl-search-text {
   font-weight: 400;
   font-size: 18px;
}
/* CLS menu logo image */
ul#menu-desktop-menu li.senior-housing {
   margin-right: 20px;
}
ul#menu-desktop-menu li.senior-housing a {
   text-indent: -9999px;
   overflow: hidden;
   text-align: left;
   padding: 0;
   width: 90px;
   height: 100%;
   background: url(assets/images/cls-logo-no-dbsg.png) no-repeat center center / contain;
   transform: scale(1.2) translateY(-3px);
   transition: .3s;
}
ul#menu-desktop-menu li.senior-housing a:hover {
   opacity: 0.7;
}
ul#menu-desktop-menu li.active > a::after {
   display: none;
}

/* flyout menu */
ul#menu-desktop-menu li.flyout-menu {
   position: relative;
}
ul#menu-desktop-menu li.flyout-menu ul {
   display: none;
   position: absolute !important;
   top: -15px;
   left: 100%;
   padding-top: 15px;
   padding-bottom: 15px;
}
ul#menu-desktop-menu li.flyout-menu.active ul {
   display: block;
   background: rgba(38, 38, 38, 0.95);
}
.fl-menu-mobile-flyout ul#menu-desktop-menu li.flyout-menu ul {: none;
   position: static !important;
   padding-top: 0px;
   padding-bottom: 0px;
}
.fl-menu-mobile-flyout ul#menu-desktop-menu li.flyout-menu.active ul {
   display: block;
   background: transparent;
}

/* search module for mobile */
.mobile-search a.fl-button {
   background: none !important;
   padding: 0 !important;
   width: 32px;
   height: 40px;
}
.mobile-search a.fl-button i::before {
   content: '';
}
.mobile-search a.fl-button i {
   width: 20px;
   height: 20px;
   transform: translateY(7px);
   background-color: var(--dbs-orange);
   mask-size: 100% auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-search);
   -webkit-mask-size: 100% auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-search);
   transition: .3s;
}
/* mobile toggle */
button.fl-menu-mobile-toggle.hamburger {
   border: 1px solid red;
}
button.fl-menu-mobile-toggle.hamburger .fl-menu-icon {
   height: 18px !important;
   transform: translateY(-2px);
   border-top: 2px solid var(--dbs-orange);
   border-bottom: 2px solid var(--dbs-orange);
}
button.fl-menu-mobile-toggle.hamburger .fl-menu-icon::before {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   top: 6px;
   left: 0;
   width: 100%;
   height: 2px;
   background: var(--dbs-orange);
}
button.fl-menu-mobile-toggle.hamburger svg {
   display: none;
}
@media(max-width:1250px) {
   ul#menu-desktop-menu > li > a {
      padding-left: 13px;
   }
}
@media(max-width:992px) {
   .mobile-search a.fl-button i {
      transform: translateY(5px);
   }
}
@media(max-width:600px) {
   body.home #masthead .logo-col .fl-module-photo {
      width: 165px;
      padding: 15px !important;
   }
   body.home #masthead .logo-col .fl-module-photo img {
      max-height: 54px;
   }
}

.search-menu ul li.hide-link {
   display: none !important;
}

/* fly-out menu */
.fl-menu-mobile-flyout button.fl-menu-mobile-close {
   background-color: transparent !important;
}
.fl-menu-mobile-flyout button.fl-menu-mobile-close i {
   color: #fff;
}
.fl-menu-mobile-flyout ul#menu-desktop-menu > li.active > .fl-has-submenu-container > a::after,
.fl-menu-mobile-flyout ul#menu-desktop-menu > li.active > a::after {
   display: none !important;
}
.fl-menu-mobile-flyout ul#menu-desktop-menu li a {
   color: #fff;
   padding-top: 9px;
   padding-bottom: 9px;
}
.fl-menu-mobile-flyout ul#menu-desktop-menu li span.fl-menu-toggle {
   display: block;
}
.fl-menu-mobile-flyout ul#menu-desktop-menu li.contact-link a {
   position: static;
   top: 0px;
   width: auto;
   height: auto;
   background-color: transparent;
   mask-image: none;
   -webkit-mask-image: none;
   color: #fff;
}
.fl-menu-mobile-flyout ul#menu-desktop-menu li .fl-has-submenu-container > a {
   padding-right: 40px;
}
.fl-menu-mobile-flyout ul#menu-desktop-menu > li ul.sub-menu {
   width: auto;
   top: 100%;
   clip-path: none;
}
.fl-menu-mobile-flyout ul#menu-desktop-menu li ul.sub-menu li a:hover::after {
   display: none !important;
}

/* CTA buttons row for Careers & Trade Partners */
.masthead-cta-row .fl-row-content {
   position: relative;
   z-index: 5;
   height: 0;
}
.masthead-cta-row .fl-row-content a.fl-button {
   height: 33px;
   overflow: hidden;
   padding: 4px 20px 0px 20px !important;
}
@media(max-width:520px) {
   #fl-button-group-button-fdjvqwtnlocr-0 {
      display: none; /* hide contact button */
   }
}
@media(max-width:380px) {
   #fl-button-group-button-fdjvqwtnlocr-1 {
      display: none; /* hide trade partners button */
   }
}


/* general */

/* layering elements */
.z-index-1 {
   position: relative;
   z-index: 1;
}
.z-index-5 {
   position: relative;
   z-index: 5;
}
.z-index-10 {
   position: relative;
   z-index: 10;
}
.z-index-999 {
   position: relative;
   z-index: 999;
}

/* global breadcrumbs */
#breadcrumbs span.breadcrumb_last {
   color: var(--dbs-orange);
}
#breadcrumbs .fl-module-pp-breadcrumbs {
   position: relative;
}
/* continuation of orange left to left of screen */
#breadcrumbs .fl-module-pp-breadcrumbs::before {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   top: 23px;
   left: calc(-1 * ((100vw - var(--dbs-pagewidth)) / 2));
   width: calc(((100vw - var(--dbs-pagewidth)) / 2) + 10px);
   height: 1px;
   background: var(--dbs-orange);
}
#breadcrumbs .fl-module-pp-breadcrumbs a:hover {
   color: var(--dbs-orange);
   text-decoration: none;
}
body.single-post #breadcrumbs span.breadcrumb_last {
   display: none;
}
body.single-post #breadcrumbs > span span:nth-last-child(-n + 2) {
   display: none !important; /* hides the post title and the prepended forward slash */
}

/* site readable (row) width (must match BB Global) */
.pagewidth {
   width: var(--dbs-pagewidth);
   margin: 0 auto;
}

/* full-row padding to equalize content width */
.pad-left-pagewidth .fl-col-content {
   padding-left: calc((100vw - var(--dbs-pagewidth)) / 2);
}
.pad-right-pagewidth .fl-col-content {
   padding-right: calc((100vw - var(--dbs-pagewidth)) / 2);
}
@media(max-width:1340px) {
   .pad-left-pagewidth .fl-col-content {
      padding-left: 0px;
   }
   .pad-right-pagewidth .fl-col-content {
      padding-right: 0px;
   }
}

/* default loop extra styling */
.default-loop li.fl-loop-item > a.fl-module:hover,
.default-loop li.fl-loop-item > a.fl-module:hover * {
   text-decoration: none !important;
}
.default-loop .fl-module-box {
   background: #fff;
   transition: .4s;
}
.default-loop .fl-module-box:hover {
   transform: translateY(-20px);
   box-shadow: 0 5px 10px rgba(0,0,0,0.6);
}

/* lists */

/* default (when used in rich text module only)  */
.fl-module-rich-text ul li {
   margin: 0 0 15px 0;
}

/* optional (orange or red colored) unordered list styling with square marker */
ul.orange-marker li,
ul.red-marker li {
   position: relative;
   margin: 0 0 10px 0;
   padding: 0 0 0 25px;
   list-style: none;
}
ul.orange-marker li::before,
ul.red-marker li::before {
   content: '';
   display: block;
   position: absolute;
   top: 7px;
   left: 0;
   width: 15px;
   height: 15px;
   margin-right: 10px;
   background: var(--dbs-orange);
}
ul.red-marker li::before {
   background: var(--dbs-red);
}

/* tables */
.dbs-table {
   position: relative;
   z-index: 10;
}
.dbs-table table tr th:nth-child(1),
.dbs-table table tr td:nth-child(1) {
   width: 20%;
}
.dbs-table table tr th:nth-child(2),
.dbs-table table tr td:nth-child(2) {
   width: 40%;
}
.dbs-table table tr th:nth-child(3),
.dbs-table table tr td:nth-child(3) {
   width: 40%;
}
@media (max-width: 39.9375em) {
   .dbs-table table tr th:nth-child(1),
   .dbs-table table tr td:nth-child(1) {
      width: 100%;
   }
   .dbs-table table tr th:nth-child(2),
   .dbs-table table tr td:nth-child(2) {
      width: 100%;
   }
   .dbs-table table tr th:nth-child(3),
   .dbs-table table tr td:nth-child(3) {
      width: 100%;
   }
   .dbs-table table tr,
   .dbs-table table td {
      border: none !important;
   }
}

/* add arrow after buttons */
.fl-button-group-button a.fl-button,
.fl-module-button a.fl-button {
   line-height: 1;
   transition: .15s;
   font-weight: 300 !important;
}
.fl-button-group-button a.fl-button span::after,
.fl-module-button a.fl-button span::after {
   content: '';
   display: inline-block;
   position: relative;
   left: 10px;
   transform: translateY(7px);
   width: 16px;
   height: 24px;
   background-color: #fff;
   mask-size: 15px auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-arrow);
   -webkit-mask-size: 15px auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-arrow);
}
.fl-module-button.reverse-arrow a.fl-button span::after {
   display: none;
}
.fl-module-button.reverse-arrow a.fl-button span::before {
   content: '';
   display: inline-block;
   margin-right: 10px;
   position: relative;
   top: 3px;
   transform: scale(-1, -1);
   width: 16px;
   height: 24px;
   background-color: #fff;
   mask-size: 15px auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-arrow);
   -webkit-mask-size: 15px auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-arrow);
}
.orange-button.fl-module-button.reverse-arrow a.fl-button:hover span::before,
.orange-button.fl-module-button a.fl-button:hover span::after {
   background-color: var(--dbs-orange);
}
.red-button.fl-module-button.reverse-arrow a.fl-button:hover span::before,
.red-button.fl-module-button a.fl-button:hover span::after {
   background-color: var(--dbs-red);
}
.white-bg-orange-text.fl-module-button a.fl-button span::after {
   background-color: var(--dbs-orange);
}
.white-bg-orange-text.fl-module-button a.fl-button:hover span::after {
   background-color: #fff;
}
@media(max-width:768px) {
   .fl-module-button.reverse-arrow a.fl-button span::after {
      display: inline-block;
      left: 10px;
      transform: translateY(7px);
   }
   .fl-module-button.reverse-arrow a.fl-button span::before {
      display: none;
   }
}
@media(max-width:500px) {
   a.fl-button {
      width: auto !important;
      padding-left: 20px !important;
      padding-right: 20px !important;
   }
}


/* hollow font headings
   we MUST use this alternate font because it is not a variable font
   or else the outline method will NOT work */
h2.hollow-font {
   font-family: 'montserratblack' !important;
   color: transparent;
   -webkit-text-stroke: 1px #ccc;
   text-stroke: 1px #ccc;
   opacity: 0.6;
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
}

/* layer helpers */
.layer-z-index-5 {
   position: relative;
   z-index: 5;
}
.layer-z-index-10 {
   position: relative;
   z-index: 5;
}

/* headings with square on side before text */
.heading-square-left {
   position: relative;
}
.heading-square-left::before {
   content: '';
   display: block;
   position: absolute;
   top: 8px;
   left: -40px;
   width: 28px;
   height: 28px;
   background: var(--dbs-orange);
}
.heading-square-left.red-square {
   background: var(--dbs-red);
}
@media(max-width:992px) {
   .heading-square-left::before {
      top: 5px;
      left: -30px;
      width: 22px;
      height: 22px;
   }
}


/* interior page elements */


/* mailing list signup page */
.mailing-list-form input[type="submit"] {
   background-color: var(--dbs-orange) !important;
}
.mailing-list-form input[type="submit"]:hover {
   background-color: var(--dbs-red) !important;
}

/* photo gallery (2 columns alternating nudged rows) */
.square-thumb-gallery .fl-photo-content a {
   display: block;
   aspect-ratio: 1 / 1;
}
.square-thumb-gallery .fl-photo-content a img {
   width: 100%;
   height: 100%;
   object-fit: cover;
}
.square-thumb-gallery .fl-mosaicflow-col .fl-mosaicflow-item:nth-child(even) {
   transform: translateX(-40px);
}
@media(max-width:1200px) {
   .square-thumb-gallery .fl-mosaicflow-col .fl-mosaicflow-item:nth-child(even) {
      transform: translateX(-20px);
   }
}
@media(max-width:768px) {
   .square-thumb-gallery .fl-mosaicflow-col .fl-mosaicflow-item:nth-child(even) {
      transform: none;
   }
}


/* branded grid cluster layout styles */

/* small logo shapes grid in top right corner */
.grid-top-right {
   position: relative;
}
.grid-top-right > .fl-row-content-wrap::before,
.grid-bot-right > .fl-row-content-wrap::before {
   content: '';
   display: block;
   position: absolute;
   opacity: 0.25;
   z-index: 2;
   top: -40px;
   right: 0;
   width: 40%;
   height: 175px;
   background-color: #ccc;
   mask-size: cover;
   mask-repeat: no-repeat;
   mask-image: url(assets/images/dbs-brand-grid.svg);
   -webkit-mask-size: cover;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: url(assets/images/dbs-brand-grid.svg);
   transition: .3s;
   color: transparent;
}
.grid-top-right .fl-row-content {
   position: relative;
   z-index: 5;
}

/* alternate colors */
.grid-top-right.grid-orange > .fl-row-content-wrap::before,
.grid-bot-right.grid-orange > .fl-row-content-wrap::before {
   background-color: var(--dbs-orange);
}
.grid-top-right.grid-red > .fl-row-content-wrap::before,
.grid-bot-right.grid-red > .fl-row-content-wrap::before {
   background-color: var(--dbs-red);
}

/* logo shapes grid (large only 1 and a half shapes showing - example on Markets page carousel) */
.two-big-squares > .fl-row-content-wrap::before {
   top: 0;
   right: 0;
   width: 275px;
   height: 200px;
   opacity: .4;
   mask-size: 400px auto;
   mask-repeat: no-repeat;
   mask-image: url(assets/images/dbs-brand-grid-2.svg);
   -webkit-mask-size: 400px auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: url(assets/images/dbs-brand-grid-2.svg);
}
.grid-bot-right.two-big-squares > .fl-row-content-wrap::before {
   top: auto;
   bottom: 0;
}
.grid-bot-right.two-big-squares > .fl-row-content-wrap .fl-row-content {
   position: relative;
   z-index: 5;
}

/* light gray brand shape in lower left column over a column with a BG image */
.col-bgimg-gray-shape > .fl-col-content {
   position: relative;
}
.col-bgimg-gray-shape > .fl-col-content::before {
   content: '';
   display: block;
   position: absolute;
   opacity: .5;
   z-index: 1;
   left: -50px;
   bottom: -50px;
   width: 250px;
   height: 180px;
   background-color: #231F20;
   mask-size: 100% auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-shape-gray-brand);
   -webkit-mask-size: 100% auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-shape-gray-brand);
}


/* global loop grid base styling */
.grid-item {
   gap: 0 !important; /* remove column gaps */
}
.grid-item .title-box {
   position: relative;
   padding: 20px 50px 10px 20px;
   overflow: hidden;
   height: 100%;
   gap: 0 !important;
}
/* light gray triangle */
.grid-item .title-box::before {
   content: '';
   display: block;
   position: absolute;
   z-index: 0;
   top: 0;
   left: 0;
   width: 320px;
   height: 60px;
   background: #ededed;
   clip-path: polygon(0 0, 100% 0, 100% 0, 0% 100%);
   transition: .3s;
}
/* arrow right */
.grid-item .title-box::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   top: 37px;
   right: 20px;
   width: 18px;
   height: 30px;
   background-color: var(--dbs-red);
   mask-size: 100% auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-arrow);
   -webkit-mask-size: 100% auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-arrow);
   transition: .5s;
   opacity: 0;
}
.grid-item .title-box * {
   position: relative;
   z-index: 5;
}
.grid-item .title-box h2,
.grid-item .title-box h3 {
   font-size: 20px;
   margin: 0 0 15px 0;
   text-transform: uppercase;
}
.grid-item:hover .title-box h2,
.grid-item:hover .title-box h3 {
   transition: .3s;
}
.grid-item .title-box .project-location {
   color: var(--dbs-deep-blue);
   font-size: 18px;
}
.grid-item:hover {
   text-decoration: none;
}
.grid-item:hover .title-box::before {
   width: 100%;
   height: calc(100% + 80px);
   background: var(--dbs-med-gray);
   clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}
.grid-item:hover .title-box::after {
   opacity: 1;
}
.grid-item:hover .title-box h3 {
   color: #fff;
}
.grid-item:hover .title-box .project-location {
   color: #ffffff;
}

/* photo gallery (offsetting every other row) */
.gallery-style-1 .fl-col-group:nth-of-type(2) {
   margin-left: -40px;
   margin-right: 40px;
}

/* heading row with black transparent shape behind text */
.heading-breaker-1 .pad-left-pagewidth {
   clip-path: polygon(0 0, 100% calc(100% - 80px), 100% 100%, 0% 100%);
}
@media(max-width:768px) {
   .heading-breaker-1 .pad-left-pagewidth {
      clip-path: polygon(0 20%, 80% calc(100% - 80px), 80% 100%, 0% 100%);
   }
}

/* team */
.team-row .pp-member-wrapper .pp-member-name {
   margin-top: 20px;
}
.team-row .fl-module-pp-team {
   margin-bottom: 20px;
}
@media(max-width:768px) {
   .team-row .pp-member-wrapper .pp-member-image img {
      width: 300px;
   }
}

/* markets template (regular pages) */

.markets-intro {
   position: relative;
}
/* black triangle in lower left corner of row */
.markets-intro::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   top: 100%;
   left: 0;
   width: 0;
   height: 0;
   border-top: 70px solid #000;
   border-right: 23vw solid transparent;
}
body:not(.fl-builder-edit) .our-work-title-row {
   position: relative;
   z-index: 5;
}
body:not(.fl-builder-edit) .markets-featured-project-row .title-col {
   position: relative;
   z-index: 1;
}
/* top white triangle shape */
.markets-featured-project-row .title-col::before {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   top: 0;
   left: 0;
   width: 0;
   height: 0;
   border-top: 130px solid #fff;
   border-right: 50vw solid transparent;
}
/* bottom triangle shape */
.markets-featured-project-row .title-col::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   top: 100%;
   left: 0;
   width: 0;
   height: 0;
   border-top: 130px solid var(--dbs-deep-blue);
   border-right: 50vw solid transparent;
}
@media(max-width:768px) {
   .markets-featured-project-row .title-col::before {
      display: none;
   }
}

/* markets carousel */
#markets-slider {
   position: relative;
   z-index: 10;
}
#markets-slider .bx-wrapper {
   position: relative;
   margin: 0 auto;
}
#markets a {
   display: block;
}
#markets .thumb {
   height: 600px;
   background-repeat: no-repeat;
   background-position: center;
   background-size: cover;
}
#markets .title-box .project-location {
   color: var(--dbs-deep-blue);
   font-size: 18px;
}
#markets a:hover {
   text-decoration: none;
}
#markets a:hover .title-box::before {
   width: 100%;
   height: calc(100% + 80px);
   background: var(--dbs-med-gray);
   clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}
#markets a:hover .title-box::after {
   opacity: 1;
}
#markets a:hover .title-box h2 {
   color: #fff;
}
#markets a:hover .title-box .project-location {
   color: #ffffff;
}
/* markets carousel controls */
#markets-slider .bx-controls {
   position: absolute;
   width: 100%;
   top: 35%;
   left: 0;
}
#markets-slider .bx-controls button {
   position: absolute;
   top: 0;
   width: 50px;
   height: 100px;
   background: var(--dbs-orange);
   overflow: hidden;
   text-indent: -9999px;
   transition: .3s;
   border-radius: 0;
}
#markets-slider .bx-controls button.bx-prev {
   left: -100px;
}
#markets-slider .bx-controls button.bx-next {
   right: -100px;
}
#markets-slider .bx-controls button.bx-prev::after,
#markets-slider .bx-controls button.bx-next::after {
   content: '';
   display: block;
   position: absolute;
   top: 32px;
   z-index: 1;
   width: 100%;
   height: 100%;
   background-color: #fff;
   mask-size: 26px auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-arrow);
   -webkit-mask-size: 26px auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-arrow);
   transition: .3s;
}
#markets-slider .bx-controls button.bx-prev::after {
   transform: scaleX(-1);
   left: -20px;
}
#markets-slider .bx-controls button.bx-next::after {
   left: 20px;
}
#markets-slider .bx-controls button:hover {
   background: var(--dbs-red);
}
body.fl-builder-edit #markets {
   display: flex;
   flex-wrap: wrap;
}
body.fl-builder-edit #markets a.grid-item {
   width: 20%;
}
body.fl-builder-edit #markets .thumb {
   height: 150px
}
/* stick the controls to left and right of screen */
@media(max-width:1500px) {
   #markets-slider .bx-controls {
      width: 100vw;
      left: calc(-1 * ((100vw - 1220px) / 2));
   }
   #markets-slider .bx-controls button.bx-prev {
      left: 0px;
   }
   #markets-slider .bx-controls button.bx-next {
      right: 0px;
   }
}
@media(max-width:1300px) {
   #markets-slider .bx-controls {
      left: 0;
      width: 100%;
   }
}
@media(max-width:992px) {
   #markets .thumb {
      height: 50vw;
   }
}
@media(max-width:500px) {
   #markets .thumb {
      height: 200px;
   }
   #markets-slider .bx-controls button {
      background: rgba(184,92,29,0.3);
   }
}

/* markets project single */
.market-feature-hero {
   position: relative;
}
/* bottom left triangle inside hero image area */
.market-feature-hero::after {
   content: '';
   display: block;
   opacity: .9;
   position: absolute;
   z-index: 1;
   bottom: 0;
   left: 0;
   width: 0;
   height: 0;
   border-top: 12vw solid transparent;
   border-right: 50vw solid var(--dbs-deep-blue);
}
/* top left triangle under hero image area */
.market-feature-hero-under {
   position: relative;
}
.market-feature-hero-under::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   top: 0;
   left: 0;
   width: 0;
   height: 0;
   border-top: 12vw solid var(--dbs-deep-blue);
   border-right: 50vw solid transparent;
}
#project-gallery {
   height: 25vw;
}
#project-gallery img {
   display: block;
   aspect-ratio: 5 / 3;
}
#project-gallery .photo {
   backgroud-repeat: no-repeat;
   background-position: center;
   background-size: cover;
   width: 50%;
   height: 100%;
}
body.fl-builder-edit #project-gallery {
   display: flex;
   flex-wrap: wrap;
}
body.fl-builder-edit #project-gallery img {
   width: 250px;
   height: auto;
}
#project-gallery-wrap .bx-controls {
   position: absolute;
   width: 100%;
   top: -10px;
   left: 0;
}
#project-gallery-wrap .bx-controls button {
   position: absolute;
   border: none;
   border-radius: 0;
   top: 0;
   width: 50px;
   height: 100px;
   background: var(--dbs-orange);
   overflow: hidden;
   text-indent: -9999px;
   transition: .3s;
}
#project-gallery-wrap .bx-controls button.bx-prev {
   left: 0px;
}
#project-gallery-wrap .bx-controls button.bx-next {
   right: 0px;
}
#project-gallery-wrap .bx-controls button.bx-prev::after,
#project-gallery-wrap .bx-controls button.bx-next::after {
   content: '';
   display: block;
   position: absolute;
   top: 32px;
   z-index: 1;
   width: 100%;
   height: 100%;
   background-color: #fff;
   mask-size: 26px auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-arrow);
   -webkit-mask-size: 26px auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-arrow);
   transition: .3s;
}
#project-gallery-wrap .bx-controls button.bx-prev::after {
   transform: scaleX(-1);
   left: -20px;
}
#project-gallery-wrap .bx-controls button.bx-next::after {
   left: 20px;
}
#project-gallery-wrap .bx-controls button:hover {
   background: var(--dbs-red);
}
@media(max-width:1000px) {
   #project-gallery {
      height: 300px;
   }
}
@media(max-width:768px) {
   .single-ds_portfolio .two-big-squares > .fl-row-content-wrap::before {
      display: none;
   }
}

/* project navigation (back to market OR next project buttons) */
.project-navigation {
   display: flex;
   flex-wrap: nowrap;
   justify-content: flex-end;
   column-gap: 8px;
}
.project-navigation .back-to-market a {
   display: block;
   padding: 10px 90px 5px 20px !important;
}
.project-navigation .back-to-market a:hover {
   background: var(--dbs-red) !important;
}
.project-navigation .next-project-button a {
   display: block;
   color: #fff;
   font-size: 22px;
   line-height: 1;
   text-transform: uppercase;
   font-family: "Roboto Condensed", sans-serif;
   background: var(--dbs-red);
   padding: 10px 20px 5px 90px !important;
   transition: .15s;
}
.project-navigation .next-project-button a::after {
   content: '';
   display: inline-block;
   position: relative;
   left: 10px;
   transform: translateY(7px);
   width: 16px;
   height: 24px;
   background-color: #fff;
   mask-size: 15px auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-arrow);
   -webkit-mask-size: 15px auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-arrow);
}
.project-navigation .next-project-button a:hover {
   text-decoration: none;
   background: var(--dbs-orange);
}



/* about page */

/* custom services list style with small orange square to right on hover */
.list-style-1 a {
   display: block;
   position: relative;
   transition: .3s;
}
.list-style-1 a::after {
   content: '';
   display: inline-block;
   width: 15px;
   height: 15px;
   margin-left: 15px;
   background: var(--dbs-orange);
   opacity: 0;
   transition: .3s;
}
.list-style-1 .fl-list-item-0 a,
.list-style-1 a:hover {
   text-decoration: none;
   color: var(--dbs-orange) !important;
}
.list-style-1 .fl-list-item-0 a::after,
.list-style-1 a:hover::after {
   opacity: 1;
}

.who-we-serve .button-stick-bottom-right {
   position: relative;
}
.who-we-serve .button-stick-bottom-right a.fl-button {
   position: absolute;
   right: -20px;
   bottom: -17px;
}
@media(max-width:768px) {
   .who-we-serve .button-stick-bottom-right a.fl-button {
      position: static;
   }
}

/* services blocks */
.service-box {
   height: 550px;
}
.service-box .fl-module-pp-heading {
   position: relative;
}
/* orange block behind double-arrow */
.service-box .fl-module-pp-heading::before {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   top: 0;
   left: 0;
   width: 54px;
   height: 110px;
   background: var(--dbs-orange);
   transition: .5s;
}
.service-box .fl-module-pp-heading .fl-module-content::before {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   left: 15px;
   top: 70px;
   width: 24px;
   height: 30px;
   background-color: #fff;
   mask-size: 300px auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-double-arrow);
   -webkit-mask-size: 300px auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-double-arrow);
   transition: .5s;
}
.service-box .heading-title {
   height: 135px;
   position: relative;
   padding: 0px 10px 0px 80px;
   background: rgba(0,0,0,0.8);
}
.service-box .heading-title span.pp-primary-title {
   display: block;
   position: absolute;
   top: 40px;
   left: 90px;
   width: 100%;
   transition: .5s;
}
.service-box .service-list {
   height: 0px;
   overflow: hidden;
   padding-top: 0;
   padding-bottom: 0;
   padding-left: 15px;
   padding-right: 10px;
   position: relative;
   transition: .5s;
}
body.fl-builder-edit .service-box .service-list {
   height: 100%; /* keeps text module in view while editing */
}
.service-box .service-list a.button-open-white {
   display: block;
   position: absolute;
   right: 20px;
   bottom: 20px;
   font-size: 22px;
   text-align: right;
   color: #fff;
   text-transform: uppercase;
   font-family: "Roboto Condensed", sans-serif;
}
.service-box .service-list a.button-open-white::after {
   content: '';
   display: inline-block;
   position: relative;
   left: 10px;
   transform: translateY(7px);
   width: 16px;
   height: 24px;
   background-color: #fff;
   mask-size: 15px auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-arrow);
   -webkit-mask-size: 15px auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-arrow);
}
/* all hover actions */
.service-box:hover .service-list {
   padding-top: 0px;
   padding-bottom: 30px;
   height: 100%;
}
.service-box:hover .fl-module-pp-heading::before {
   width: 70px;
}
.service-box:hover .heading-title span.pp-primary-title {
   color: #fff !important;
}
.service-box:hover .fl-module-pp-heading .fl-module-content::before {
   transform: rotate(90deg);
}
.service-box .service-list a.button-open-white:hover {
   color: var(--dbs-orange);
   text-decoration: none;
}
.service-box .service-list a.button-open-white:hover::after {
   background-color: var(--dbs-orange);
}
.cta-button-col {
   position: relative;
}
.cta-button-col .red-button {
   position: absolute;
   right: 0;
   bottom: 41px;
}
@media(max-width:768px) {
   .cta-button-col .red-button {
      position: static;
   }
}

/* where we serve */
.where-we-serve .button-stick-bottom-right {
   position: relative;
}
.where-we-serve .button-stick-bottom-right a.fl-button {
   position: absolute;
   right: 0px;
   bottom: -42px;
}
.where-we-serve .fl-builder-top-edge-layer > * {
   top: 112px;
}
@media(max-width:768px) {
   .where-we-serve .button-stick-bottom-right a.fl-button {
      position: static;
   }
}

/* row style (content left, image right with top clip, large diagonal light gray bg pattern) */
.col-clip-top-left {
   clip-path: polygon(75% 0%, 100% 0, 100% 100%, 0 100%, 0 90px);
}


/* blog archive */

/* top most recent post */
.blog-top-post {
   display: flex;
   flex-wrap: nowrap;
}
.blog-top-post .post-content {
   position: relative;
   background: #fff;
   width: 60%;
   margin: 30px 0;
   padding: 50px 50px 80px 50px;
}
.blog-top-post .post-content .post-date {
   font-style: italic;
   margin: 0 0 10px 0;
}
.blog-top-post .post-content h3 {
   font-size: 34px;
   min-height: 160px;
   margin: 0;
}
.blog-top-post .post-content .fl-module-button {
   position: absolute;
   left: 0;
   bottom: 0;
}
.blog-top-post .post-content .fl-module-button a.fl-button {
   padding: 10px 20px 5px 250px;
   background-color: var(--dbs-red);
}
.blog-top-post .post-content .fl-module-button a.fl-button:hover {
   background-color: #cecdce;
}
.blog-top-post .post-content .fl-module-button a.fl-button:hover span {
   color: var(--dbs-red) !important;
}
.blog-top-post a.post-thumb {
   display: block;
   width: 40%;
   background-repeat: no-repeat;
   background-size: cover;
   background-position: center;
}
@media(max-width:992px) {
   .blog-top-post .post-content h3 {
      min-height: 0px;
   }
   .blog-top-post .post-content .fl-module-button a.fl-button {
      padding-left: 20px;
   }
}
@media(max-width:768px) {
   .blog-top-post {
      flex-direction: column;
      flex-direction: column-reverse;
   }
   .blog-top-post .post-content {
      width: 100%;
      margin: 0;
      padding: 20px 20px 70px 20px;
   }
   .blog-top-post .post-content h3 {
      font-size: 26px;
      margin-bottom: 15px;
   }
   .blog-top-post a.post-thumb {
      width: 100%;
      aspect-ratio: 2 / 1;
   }
}

/* archive loop grid */
#blog-archive ul.fl-loop-grid {
   display: flex;
   flex-wrap: wrap;
   column-gap: 40px;
   row-gap: 60px;
   justify-content: left;
}
#blog-archive li.fl-loop-item {
   display: block;
   width: calc(50% - 20px);
   transition: .4s;
}
#blog-archive li.fl-loop-item:nth-child(even) {
   transform: translateY(40px);
}
#blog-archive li.fl-loop-item .fl-module-photo a {
   display: block;
   aspect-ratio: 2 / 1;
   overflow: hidden;
}
#blog-archive li.fl-loop-item .fl-module-photo a img {
   display: block;
   object-fit: cover;
   width: 100%;
   height: 100%;
   transition: transform .4s ease;
}
#blog-archive li.fl-loop-item h3 {
   min-height: 102px; /* accommodates up to 4 line title */
}
#blog-archive .fl-builder-pagination {
   padding-top: 100px;
}
/* archive grid box hover effects (not targeted for mobile) */
@media(min-width:768px){
   #blog-archive li.fl-loop-item:hover {
      box-shadow: 0 5px 10px rgba(0,0,0,0.6);
   }
   #blog-archive li.fl-loop-item:nth-child(odd):hover {
      transform: translateY(-20px);
   }
   #blog-archive li.fl-loop-item:nth-child(even):hover {
      transform: translateY(20px);
   }
   #blog-archive li.fl-loop-item:hover .fl-module-photo a img {
      transform: scale(1.1);
   }
}
@media(max-width:768px) {
   #blog-archive ul.fl-loop-grid {
      display: block;
   }
   #blog-archive li.fl-loop-item {
      width: 100%;
      margin: 0 0 50px 0;
   }
   #blog-archive li.fl-loop-item h3 {
      min-height: 0px;
      margin-bottom: 15px;
   }
   #blog-archive li.fl-loop-item:nth-child(even) {
      transform: none;
   }
}

/* paging */
ul.page-numbers li .page-numbers {
   border: none;
}
ul.page-numbers li .page-numbers.prev,
ul.page-numbers li .page-numbers.next {
   position: relative;
   margin: 0;
   padding: 0;
   text-indent: -999px;
   overflow: hidden;
   transition: .3s;
   width: 28px;
   height: 34px;
   border: 1px solid var(--dbs-red);
   transform: translateY(10px);
}
ul.page-numbers li .page-numbers.prev {
   margin-right: 20px;
}
ul.page-numbers li .page-numbers.next {
   margin-left: 20px;
}
ul.page-numbers li .page-numbers.prev::after,
ul.page-numbers li .page-numbers.next::after {
   content: '';
   display: block;
   position: absolute;
   top: 6px;
   z-index: 1;
   width: 100%;
   height: 100%;
   background-color: var(--dbs-red);
   mask-size: 16px auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-arrow);
   -webkit-mask-size: 16px auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-arrow);
   transition: .3s;
}
ul.page-numbers li .page-numbers.prev::after {
   transform: scaleX(-1);
   left: -10px;
}
ul.page-numbers li .page-numbers.next::after {
   left: 10px;
}
ul.page-numbers li .page-numbers.prev:hover,
ul.page-numbers li .page-numbers.next:hover {
   background: var(--dbs-red);
}
ul.page-numbers li .page-numbers.prev:hover::after,
ul.page-numbers li .page-numbers.next:hover::after {
   background-color: #fff;
}

/* latest articles (archive filter row) */
#cat-archive-filter {
   position: relative;
}
#cat-archive-filter button {
   position: relative;
   width: 180px;
   color: rgba(82, 81, 82, 0.91);
   background: none;
   text-transform: none;
   text-align: left;
   padding: 0;
   border-bottom: 1px solid var(--dbs-red);
}
#cat-archive-filter button::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   top: 8px;
   right: 5px;
   width: 18px;
   height: 30px;
   background-color: var(--dbs-red);
   mask-size: 100% auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-arrow);
   -webkit-mask-size: 100% auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-arrow);
   transform: rotate(90deg);
}
#cat-archive-filter .category-drop {
   display: none;
   position: relative;
}
#cat-archive-filter .category-drop .options {
   width: 300px;
   position: absolute;
   z-index: 10;
   top: 0;
   left: 0;
   background: #fff;
   padding: 5px 0;
}
#cat-archive-filter .category-drop a {
   display: block;
   line-height: 1;
   padding: 5px 5px 5px 10px;
   font-size: 18px;
}


/* blog single */

/* diagonal background shape on related posts */
#related-posts .fl-row-content-wrap::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 0;
   top: 50px;
   left: 0;
   width: 100%;
   height: 350px;
   background: #f4f3f4;
   transform: skewY(8deg);
}
#related-posts .fl-row-content-wrap .fl-row-content {
   position: relative;
   z-index: 10;
}
@media(max-width:768px) {
   .toggle-cta {
      display: none !important;
   }
}


/* testimonials archive */
.testimonials-loop ul li .fl-module-box {
   position: relative;
}
.testimonials-loop ul li .fl-module-box::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   bottom: 0;
   left: 0;
   width: 0;
   height: 0;
   border-top: 70px solid transparent;
   border-left: 220px solid #ededed;
}
.testimonials-loop ul li .fl-module-box .fl-module {
   position: relative;
   z-index: 3;
}

/* senior living page */
@media(max-width:1300px) {
   .senior-living-main > .fl-row-content-wrap .fl-col-group {
      background: rgba(255,255,255,0.6);
   }
}
@media(max-width:700px) {
   .senior-living-main > .fl-row-content-wrap .fl-col-group {
      background: rgba(255,255,255,0.8);
   }
}


/* homepage */

/* homepage hero */
#home-hero .fl-row-content-wrap {
   position: relative;
}
/* bottom left black triangle */
#home-hero .fl-row-content-wrap::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 0;
   bottom: -1px;
   left: 0;
   width: 100%;
   height: 260px;
   background: rgba(0,0,0,0.8);
   clip-path: polygon(0 0%, 0% 100%, 65% 100%);
}
#home-hero .fl-row-content-wrap .fl-module {
   position: relative;
   z-index: 5;
}
#home-hero .fl-row-content-wrap h1 span {
   font-size: 50%;
}
/* vertical text */
#home-hero .hero-vertical-text {
   position: relative;
}
#home-hero .hero-vertical-text .fl-col-content {
   position: absolute;
   top: 62px;
   left: 250px;
   z-index: 6;
   height: 230px;
   width: 840px;
   padding: 35px 0px 0 20px;
   background: linear-gradient(to right, rgba(0,0,0,0.6) 65%, transparent 100%);
   transform: rotate(90deg);
   transform-origin: 0 0;
}
/* "Concept to completion" text */
#home-hero .hero-tagline-pre {
   position: absolute;
   width: 500px;
   bottom: 0;
   left: calc(50% - 525px);
   z-index: 11;
}
@media(max-width:1440px) {
   #home-hero .hero-tagline-pre {
      left: 195px;
   }
}
@media(max-width:1400px) {
   #home-hero .hero-vertical-text .fl-col-content {
      padding-top: 45px;
      width: 53vw;
   }
   #home-hero .hero-vertical-text .fl-col-content h2.heading-title span.pp-primary-title {
      font-size: 2vw;
   }
   #home-hero .hero-vertical-text .fl-col-content h2.heading-title span.pp-secondary-title {
      font-size: 5.3vw;
   }
}
@media(max-width:992px) {
   #home-hero .hero-vertical-text .fl-col-content {
      top: 62px;
      left: 20px;
      height: 95px;
      padding: 0px;
      background: linear-gradient(to right, rgba(0,0,0,0.6) 65%, transparent 100%);
      transform: none;
   }
   #home-hero .hero-vertical-text .fl-col-content h2.heading-title span.pp-secondary-title {
      font-size: 38px;
   }
   #home-hero .hero-tagline-pre {
      left: 20px;
   }
}
@media(max-width:768px) {
   #home-hero .hero-vertical-text .fl-col-content {
      display: none;
   }
   #home-hero .hero-tagline-pre {
      left: 0px;
   }
   #home-hero .fl-row-content-wrap::after {
      clip-path: polygon(0 0%, 0% 100%, 75% 100%);
   }
}

/* homepage about row */
#home-about-row {
   position: relative;
}
body:not(.fl-builder-edit) #home-about-row {
   overflow: hidden;
}
/* light grid of brand-logo shapes */
#home-about-row .fl-row-content-wrap::before {
   content: '';
   display: block;
   position: absolute;
   opacity: 0.25;
   z-index: 1;
   top: 120px;
   right: 0;
   width: 40%;
   height: 175px;
   background-image: url(assets/images/dbs-brand-grid.svg);
   background-repeat: no-repeat;
   background-size: cover;
   background-position: 0 0;
}
/* top right black triangle */
#home-about-row .fl-row-content-wrap::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 0;
   top: -1px;
   right: 0;
   width: 100%;
   height: 260px;
   background: rgba(0,0,0,0.8);
   clip-path: polygon(100% 0, 35% 0, 100% 100%);
}
#home-about-row .home-about-content-col {
   clip-path: polygon(0 0, 100% 31%, 100% 100%, 0% 100%);
}

/* global sticky contact button */
.has-contact-button {
   position: relative;
}
.toggle-cta {
   position: absolute;
   overflow: hidden;
   margin: 0 !important;
   width: 90px;
   height: 90px;
   z-index: 50;
   top: 0px;
   right: 0px;
   transition: 0.4s;
}
.toggle-cta a.fl-button {
   display: block;
   overflow: hidden;
   width: 100%;
   height: 100%;
   padding: 10px 15px 10px 15px;
   border-top: 15px solid var(--dbs-orange) !important;
   clip-path: polygon(100% 0, 100% 100%, 35px 100%, 0 calc(100% - 15px), 0 0);
}
/* quote box icon */
.toggle-cta a.fl-button::before {
   content: '';
   display: block;
   width: 55px;
   height: 45px;
   margin-left: 5px;
   background-color: #fff;
   mask-size: 50px auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-contact);
   -webkit-mask-size: 50px auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-contact);
   transition: .3s;
   color: transparent;
}
.toggle-cta a.fl-button span.fl-button-text {
   display: block;
   width: 300px;
   text-align: left;
   transform: translate(50px, 20px) rotate(90deg);
   transform-origin: 0 0;
}
.toggle-cta:hover {
   height: 400px;
}
@media(max-width:768px) {
   #home-about-row .home-about-content-col .fl-node-content {
      background-color: rgba(255,255,255,0.9);
   }
}

/* our services (clip bottom to create the angle and allow rows to pass under) */
body:not(.fl-builder-edit) #our-services {
   position: relative;
   clip-path: polygon(0 0, 100% 0, 100% 85%, 0 95px);
   position: sticky;
   top: 63px;
   z-index: 50;
}
/* this holds the sub-text with a negative margin up under the Our Services title */
body:not(.fl-builder-edit) .our-services-sub-row {
   position: relative;
   z-index: 60;
}
@media(max-width:992px) {
   body:not(.fl-builder-edit) #our-services {
      top: 0;
      clip-path: none;
   }
   body:not(.fl-builder-edit) .our-services-sub-row {
      z-index: 0;
   }
}

/* rows that alternate with content and image */
.alt-img-content-row {
   position: relative;
}
.alt-img-content-row::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   bottom: 0px;
   right: 0;
   width: 200px;
   height: 100%;
   background: var(--dbs-orange);
}
.alt-img-content-row .img-col {
   position: relative;
   z-index: 4;
}
.alt-img-content-row .pad-left-pagewidth,
.alt-img-content-row .pad-right-pagewidth {
   position: relative;
   z-index: 5;
}
.alt-img-content-row .pad-left-pagewidth,
.alt-img-content-row .pad-right-pagewidth {
   position: relative;
   z-index: 10;
}
/* the first row needs extra orange area in top right corner */
.top-right-shape {
   position: relative;
}
body:not(.fl-builder-edit) .top-right-shape .fl-row-content-wrap {
   position: relative;
   z-index: 5;
}
.top-right-shape::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   bottom: 0px;
   right: 0;
   width: 200px;
   height: calc(100% + 200px);
   background: var(--dbs-orange);
}
@media(max-width:992px) {
   .top-right-shape::after {
      height: 100%;
   }
}
@media(max-width:768px) {
   .alt-img-content-row::after,
   .top-right-shape::after {
      display: none;
   }
}

/* offices row */
#offices .location-links-col .fl-module-rich-text p {
   width: 330px;
   max-width: 100%;
   display: flex;
   justify-content: space-between;
}
#offices .location-links-col .fl-module-rich-text p a {
   transform: translateY(8px);
   color: #C6C5C6;
   font-size: 22px;
   font-weight: 200;
   text-transform: none;
   text-decoration: underline;
   opacity: 0.7;
   transition: .3s;
   font-family: "Roboto Condensed", sans-serif;
}
#offices .location-links-col .fl-module-rich-text p a:hover {
   color: var(--dbs-orange);
   opacity: 1;
   text-decoration: none;
}
@media(max-width:1300px) {
   #offices .location-links-col h2 {
      font-size: 76px;
   }
}
@media(max-width:1200px) {
   #offices .location-links-col .fl-module-rich-text p {
      width: 100%;
   }
}
@media(max-width:992px) {
   #offices .location-links-col .fl-module-rich-text p {
      width: 260px;
   }
   #offices .location-links-col .fl-module-rich-text p a {
      transform: translateY(2px);
      font-size: 20px;
   }
}
@media(max-width:768px) {
   #offices .location-links-col h2 {
      font-size: 46px;
   }
   #offices .location-links-col .fl-module-rich-text p a {
      margin-left: 10px;
      display: inline;
   }
}
@media(max-width:580px) {
   #offices .fl-col-content {
      padding-top: 10px;
      padding-bottom: 10px;
   }
   #offices .fl-module-photo {
      margin-right: 0;
   }
   #offices .location-links-col h2 {
      font-size: 54px;
   }
}
@media(max-width:400px) {
   #offices .location-links-col h2 {
      font-size: 36px;
   }
   #offices .location-links-col .fl-module-rich-text p {
      font-size: 18px;
   }
   #offices .location-links-col .fl-module-rich-text p a {
      font-size: 18px;
      margin-left: 5px;
   }
}

/* testimonial row (used in many areas) */
#testimonials .slide-flex {
   display: flex;
}
#testimonials .img-col {
   width: 50%;
}
#testimonials .img-col .img-wrap {
   height: calc(100% - 43px);
   background-repeat: no-repeat;
   background-position: center;
   background-size: cover;
}
#testimonials .img-col .fl-module-button {
   display: flex;
   justify-content: flex-end;
}
#testimonials .img-col a.fl-button {
   padding: 10px 20px 5px 20px;
   background: var(--dbs-red);
}
#testimonials .img-col a.fl-button:hover {
   background: #cecdce;
}
#testimonials .img-col a.fl-button:hover span {
   color: var(--dbs-red) !important;
}
#testimonials .quote-col {
   width: 50%;
   position: relative;
   z-index: 1;
}
#testimonials .quote-col .quote-box {
   margin: 90px 0 110px -140px;
   padding: 30px calc((100vw - 1240px) / 2) 30px 30px;
   background: #fff;
}
#testimonials .quote-col .quote-box blockquote {
   border: none;
   margin: 0 0 30px 0;
   padding: 0;
   font-size: 20px;
   line-height: 1.6;
}
#testimonials .quote-col .quote-box cite {
   font-weight: 600;
   font-style: italic;
   display: block;
   font-size: 20px;
   line-height: 1.3;
}
#testimonials .quote-col .quote-box cite.author {
   padding-left: 15px;
}
#testimonials .quote-col .quote-box cite.company {
   padding-left: 36px;
}
/* paging controls */
.testimonials-slider .bx-controls {
   position: absolute;
   z-index: 100;
   width: 270px;
   top: 35px;
   left: calc(50% + 180px);
}
.testimonials-slider .bx-controls .bx-controls-direction {
   display: flex;
   justify-content: space-between;
}
.testimonials-slider .bx-controls .bx-controls-direction button {
   display: block;
   font-size: 18px;
   color: var(--dbs-med-gray);
   text-transform: uppercase;
   line-height: 24px;
   background: none;
   border: none;
   border-radius: 0;
}
.testimonials-slider .bx-controls .bx-controls-direction button.bx-prev {
   position: relative;
   width: 57%;
}
.testimonials-slider .bx-controls .bx-controls-direction button.bx-prev::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   top: -3px;
   right: 0px;
   width: 1px;
   height: 40px;
   background: var(--dbs-red);
}
.testimonials-slider .bx-controls .bx-controls-direction button.bx-next {
   text-align: right;
   width: 43%;
}
/* arrow boxes */
.testimonials-slider .bx-controls .bx-controls-direction button.bx-prev,
.testimonials-slider .bx-controls .bx-controls-direction button.bx-next {
   transition: .3s;
}
.testimonials-slider .bx-controls .bx-controls-direction button.bx-prev span,
.testimonials-slider .bx-controls .bx-controls-direction button.bx-next span {
   content: '';
   display: inline-block;
   width: 21px;
   height: 25px;
   border: 1px solid var(--dbs-red);
   transform: translateY(5px);
   transition: .3s;
}
.testimonials-slider .bx-controls .bx-controls-direction button.bx-prev span::after,
.testimonials-slider .bx-controls .bx-controls-direction button.bx-next span::after {
   content: '';
   display: block;
   position: absolute;
   top: 4px;
   z-index: 1;
   width: 100%;
   height: 100%;
   background-color: var(--dbs-orange);
   mask-size: 12px auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-arrow);
   -webkit-mask-size: 12px auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-arrow);
   transition: .3s;
}
.testimonials-slider .bx-controls .bx-controls-direction button.bx-prev span::after {
   transform: scaleX(-1);
   left: -7px;
}
.testimonials-slider .bx-controls .bx-controls-direction button.bx-next span::after {
   right: -7px;
}
.testimonials-slider .bx-controls .bx-controls-direction button.bx-prev span {
   margin-right: 6px;
}
.testimonials-slider .bx-controls .bx-controls-direction button.bx-next span {
   margin-left: 6px;
}
.testimonials-slider .bx-controls .bx-controls-direction button.bx-prev:hover,
.testimonials-slider .bx-controls .bx-controls-direction button.bx-next:hover {
   color: var(--dbs-red);
   text-decoration: none;
}
.testimonials-slider .bx-controls .bx-controls-direction button.bx-prev:hover span,
.testimonials-slider .bx-controls .bx-controls-direction button.bx-next:hover span {
   background: var(--dbs-red);
}
.testimonials-slider .bx-controls .bx-controls-direction button.bx-prev:hover span::after,
.testimonials-slider .bx-controls .bx-controls-direction button.bx-next:hover span::after {
   background: #fff;
}
@media(max-width:1440px) {
   #testimonials .quote-col .quote-box {
      padding-right: 40px;
   }
}
@media(max-width:992px) {
   #testimonials .quote-col .quote-box blockquote {
      font-size: 18px;
      margin: 0 0 15px 0;
      line-height: 1.3;
   }
   #testimonials .quote-col .quote-box cite {
      font-size: 18px;
   }
   .testimonials-slider .bx-controls {
      left: calc(50% + 20px);
   }
}
@media(max-width:768px) {
   .testimonials-slider .bx-controls {
      width: 250px;
      top: -10px;
      left: calc(50% - 125px);
   }
}
@media(max-width:650px) {
   #testimonials {
      margin-bottom: 50px;
   }
}
@media(max-width:600px) {
   #testimonials {
      display: block;
   }
   #testimonials .slide-flex {
      display: block;
   }
   #testimonials .img-col {
      width: 100%;
      min-height: 250px;
      margin-bottom: 20px;
   }
   #testimonials .img-col .img-wrap {
      min-height: 250px;
   }
   #testimonials .quote-col {
      width: 100%;
   }
   #testimonials .quote-col .quote-box {
      margin: 0px;
      padding: 20px 20px 0 20px;
   }
}

/* markets */
#markets .cols-wrap {
   display: flex;
   column-gap: 15px;
}
#markets .cols-wrap h2.hollow-font {
   position: relative;
   z-index: 10;
   margin-top: -11px;
   margin-right: -90px;
   font-size: 100px;
   text-align: right;
   text-transform: uppercase;
}
#markets .cols-wrap .links-col {
   position: relative;
   z-index: 10;
   width: 40%;
   padding-bottom: 40px;
   background: var(--dbs-red);
}
#markets .cols-wrap .links-col .links-wrap {
   width: 400px;
   max-width: 100%;
   float: right;
}
#markets .cols-wrap .links-col a {
   display: block;
   position: relative;
   text-align: right;
   line-height: 1;
   font-size: 22px;
   text-transform: uppercase;
   color: rgba(255,255,255,0.5);
   padding: 18px 30px 18px 20px;
   transition: .4s;
   transform-origin: right bottom;
}
#markets .cols-wrap .links-col a span {
   opacity: 0;
   position: absolute;
   display: flex;
   flex-direction: column;
   justify-content: flex-end;
   padding: 0 23px 4px 0;
   top: 0;
   left: 100%;
   width: 175px;
   height: 100%;
   font-size: 18px;
   color: #fff;
   font-family: "Roboto Condensed", sans-serif;
   background: var(--dbs-orange);
}
/* button arrow */
#markets .cols-wrap .links-col a span::after {
   content: '';
   display: inline-block;
   position: absolute;
   right: 1px;
   bottom: 5px;
   transform: translateY(7px);
   width: 16px;
   height: 24px;
   background-color: #fff;
   mask-size: 15px auto;
   mask-repeat: no-repeat;
   mask-image: var(--dbs-icon-arrow);
   -webkit-mask-size: 15px auto;
   -webkit-mask-repeat: no-repeat;
   -webkit-mask-image: var(--dbs-icon-arrow);
}
#markets .cols-wrap .links-col a:hover {
   text-decoration: none;
   color: #fff;
   transform: scale(1.15);
   background: rgba(0,0,0,0.8);
}
#markets .cols-wrap .links-col a:hover span {
   opacity: 1;
}
#markets .cols-wrap .images-col {
   position: relative;
   width: 60%;
}
/* extra triangle shape */
#markets .cols-wrap .images-col::before {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   top: 0;
   left: -15px;
   width: 100%;
   height: 130px;
   background: var(--dbs-red);
   clip-path: polygon(100% 0, 0 0, 0 100%);
}
#markets .cols-wrap .images-col a {
   display: block;
   position: absolute;
   z-index: 9;
   opacity: 0;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background-repeat: no-repeat;
   background-size: cover;
   background-position: center;
   clip-path: polygon(60% 0%, 100% 0, 100% 100%, 0 100%, 0 110px);
   transition: .4s;
}
#markets .cols-wrap .images-col a.active {
   opacity: 1;
}
@media(max-width:1200px) {
   #markets .cols-wrap h2.hollow-font {
      font-size: 80px;
      margin-right: -50px;
   }
   #markets .cols-wrap .links-col a {
      padding-top: 12px;
      padding-bottom: 12px;
   }
   #markets .cols-wrap .links-col a:hover {
      transform: scale(1.1);
   }
   #markets .cols-wrap .links-col .links-wrap {
      width: 100%;
      float: none;
   }
}
@media(max-width:992px) {
   #markets .cols-wrap h2.hollow-font {
      font-size: 74px;
      margin-right: -80px;
      margin-top: -9px;
   }
   #markets .cols-wrap .links-col a {
      font-size: 20px;
   }
}
@media(max-width:900px) {
   #markets .cols-wrap h2.hollow-font {
      font-size: 60px;
      margin-top: -8px;
   }
   #markets .cols-wrap .links-col a:hover {
      transform: none;
   }
}
@media(max-width:650px) {
   #markets .cols-wrap {
      position: relative;
   }
   #markets .cols-wrap h2.hollow-font {
      position: absolute;
      top: -75px;
      left: 20px;
      font-size: 13vw;
      margin: 0;
      opacity: 1;
   }
   #markets .cols-wrap .links-col {
      padding-top: 40px;
   }
}
@media(max-width:580px) {
   #markets .cols-wrap {
      column-gap: 0;
      position: relative;
      z-index: 20;
   }
   #markets .cols-wrap .links-col {
      width: 50%;
      z-index: 20;
      padding: 0px;
      background: var(--dbs-red);
   }
   #markets .cols-wrap .links-col a {
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      padding: 10px 10px 5px 20px;
      height: 120px;
   }
   #markets .cols-wrap .links-col a:not(:last-child) {
      border-bottom: 8px solid #fff;
   }
   #markets .cols-wrap .links-col a span {
      display: none;
   }
   #markets .cols-wrap .images-col {
      width: 50%;
   }
   #markets .cols-wrap .images-col a {
      height: 120px;
      clip-path: none;
      position: static;
      opacity: 1;
   }
   #markets .cols-wrap .images-col a:not(:last-child) {
      border-bottom: 8px solid #fff;
   }
   #markets .cols-wrap .images-col::before {
      display: none;
   }
}

/* news + tips (brand shape grid & diagonal BG shape) */
.brand-grid-2 {
   position: relative;
}
.brand-grid-2::before {
   content: '';
   opacity: .6;
   display: block;
   position: absolute;
   z-index: 15;
   top: -120px;
   right: 0;
   width: 50%;
   height: 200px;
   background-image: url(assets/images/dbs-brand-grid.svg);
   background-repeat: no-repeat;
   background-size: cover;
   background-position: 0 0;
}

/* diagonal background shape */
.diagonal-bg-shape .fl-row-content-wrap::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 0;
   top: 140px;
   left: 0;
   width: 100%;
   height: 350px;
   background: #e5e5e5;
   transform: skewY(10deg);
}
.diagonal-bg-shape .fl-row-content-wrap .fl-row-content {
   position: relative;
   z-index: 10;
}

/* featured project */
.featured-project {
   display: flex;
}
.featured-project .title-col {
   position: relative;
   width: 35%;
   color: #fff;
   padding: 20px 20px 70px 20px;
   background: var(--dbs-med-gray);
}
.featured-project .title-col .date {
   font-size: 18px;
   font-style: italic;
   margin-bottom: 5px;
}
.featured-project .title-col h3 {
   font-size: 20px;
   margin: 0 0 90px 0;
}
.featured-project .title-col h3 a {
   color: #fff;
}
.featured-project .title-col h3 a:hover {
   color: var(--dbs-orange);
}
.featured-project .title-col a.cat-btn {
   position: absolute;
   display: block;
   width: 100%;
   bottom: 0;
   left: 0;
   padding: 30px 20px 10px 20px;
   color: #fff;
   font-size: 18px;
   background: var(--dbs-orange);
}
.featured-project .title-col a.cat-btn:hover {
   text-decoration: none;
   background: var(--dbs-red);
}
.featured-project a.img-col {
   display: block;
   width: 65%;
   background-repeat: no-repeat;
   background-size: cover;
   background-position: center;
}
@media(max-width:550px) {
   .featured-project {
      flex-direction: column-reverse;
   }
   .featured-project .title-col {
      width: 100%;
      padding: 15px 0 0 0;
   }
   .featured-project .title-col .date,
   .featured-project .title-col h3 {
      padding-left: 20px;
      padding-right: 20px;
   }
   .featured-project .title-col h3 {
      margin: 0 0 15px 0;
   }
   .featured-project .title-col a.cat-btn {
      width: 100%;
      position: static;
   }
   .featured-project a.img-col {
      width: 100%;
      height: 200px;
   }
}

/* careers */
#careers .fl-photo img {
   opacity: 0.5;
}
#careers h2.hollow-font {
   -webkit-text-stroke: 1px #fff;
   text-stroke: 1px #fff;
   opacity: 1;
}
#careers .fl-col-content {
   position: relative;
}
#careers .fl-col-content::after {
   content: '';
   display: block;
   position: absolute;
   z-index: 0;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background: rgba(184, 104, 50, 0.3);
   mix-blend-mode: multiply;
}
#careers .fl-col-content * {
   position: relative;
   z-index: 1;
}
@media(max-width:600px) {
   #careers .fl-row-content-wrap {
      min-height: 370px;
   }
   #careers .pad-left-pagewidth {
      width: 100% !important;
   }
   #careers .pad-left-pagewidth .fl-photo-img {
      width: 135px;
   }
}

/* homepage CTA bottom row (w/ brand shape grid) */
#home-cta-row {
   position: relative;
}
#home-cta-row .fl-row-content-wrap::before {
   content: '';
   opacity: .6;
   display: block;
   position: absolute;
   z-index: 15;
   top: 20px;
   right: 0;
   width: 242px;
   height: 175px;
   background-image: url(assets/images/dbs-brand-grid.svg);
   background-repeat: no-repeat;
   background-size: cover;
   background-position: 0 0;
}


/* footer */
#footer .logo-col {
   position: relative;
}
/* black triangle in logo column upper right corner */
#footer .logo-col::before {
   content: '';
   display: block;
   position: absolute;
   z-index: 1;
   top: 0;
   right: -1px;
   width: 60%;
   height: 50px;
   background: #000;
   clip-path: polygon(100% 0, 0 0, 100% 100%);
}
@media(max-width:1500px) {
   #footer .logo-col::before {
      height: 3vw; /* keeps height correct for angle-line continuation from light green triangle above it */
   }
}
@media(max-width:1200px) {
   #footer .fl-col-group-nested.fl-col-group-equal-height.fl-col-group-align-bottom .fl-col-content,
   #footer .fl-col-group-equal-height.fl-col-group-align-bottom .fl-col-content {
      justify-content: flex-start;
   }
}
@media(max-width:768px) {
   #footer .logo-col::before {
      display: none;
   }
}


@media(max-width:600px) {
   h1 {
      font-size: 34px !important;
   }
}






