/* dbsmonroe.com static clone: styles for the re-implemented widgets.
   Everything else is the theme CSS captured from the live site. */

/* photo gallery (Recent Projects) */
.dbs-gal { width: 100%; }
.dbs-gal-stage { position: relative; width: 100%; height: 600px; overflow: hidden; }
.dbs-gal-track { list-style: none; margin: 0; padding: 0; position: relative; height: 100%; line-height: 0; }
.dbs-gal-slide { position: absolute; top: 0; left: 0; height: 100%; overflow: hidden; cursor: pointer; will-change: transform; }
.dbs-gal-slide picture, .dbs-gal-slide img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: 50% 50%; }
.dbs-gal-stage > button[data-ux="CarouselButtonPrevious"],
.dbs-gal-stage > button[data-ux="CarouselButtonNext"] {
  position: absolute !important; top: 50% !important; bottom: auto !important; margin: 0 !important;
  transform: translateY(-50%) !important; z-index: 2; cursor: pointer;
}
.dbs-gal-stage > button[data-ux="CarouselButtonPrevious"] { left: 0 !important; right: auto !important; }
.dbs-gal-stage > button[data-ux="CarouselButtonNext"] { right: 0 !important; left: auto !important; }
.dbs-gal-captions { padding: 0; }
.dbs-gal-caption { max-width: 700px; margin: 0 auto; text-align: center; }
.dbs-gal-thumbs { display: flex; align-items: flex-start; margin-top: 16px; height: 73px; }
.dbs-gal-thumb-list { list-style: none; margin: 0; padding: 0; flex: 1 1 auto; display: flex; gap: 10px; overflow-x: auto; scroll-behavior: smooth; scrollbar-width: none; line-height: normal; text-align: left; }
.dbs-gal-thumb-list::-webkit-scrollbar { display: none; }
.dbs-gal-thumb-list li { flex: 0 0 70px; width: 70px; height: 70px; margin: 0 !important; }
.dbs-gal-thumb-list li img { width: 70px; height: 70px; object-fit: cover; display: block; }
.dbs-gal-thumbs > button { flex: 0 0 auto; cursor: pointer; }
/* GoDaddy's carousel: 600 px stage from 1024 up, 400 px on tablets, 210 px on
   phones, and no arrows or thumbnail strip below 768 px (measured live). */
@media (max-width: 1023px) {
  .dbs-gal-stage { height: 400px; }
}
@media (max-width: 767px) {
  .dbs-gal-stage { height: 210px; }
  .dbs-gal-stage > button[data-ux="CarouselButtonPrevious"],
  .dbs-gal-stage > button[data-ux="CarouselButtonNext"],
  .dbs-gal-thumbs { display: none !important; }
}

/* reviews carousel: hidden cells are set by js/site.js; dots are theme-styled.
   Below 768 px GoDaddy rendered neither arrows nor dots (swipe only). */
[data-dbs-reviews="prev"], [data-dbs-reviews="next"] { cursor: pointer; }
[data-dbs-reviews="dots"] > div { cursor: pointer; }
@media (max-width: 767px) {
  [data-dbs-reviews="prev"], [data-dbs-reviews="next"], [data-dbs-reviews="dots"] { display: none !important; }
}

/* promo popup starts hidden; js/site.js opens it */
[data-aid="POPUP_MODAL"] { display: none; }
