/* CBS Our Work — borderless image-first collage layout (v1.4.4). */
.cbs-hqp-work-gallery,.cbs-hqp-work-gallery *{box-sizing:border-box}
.cbs-hqp-work-gallery{background:#10100f;color:#f3f0e9;padding:35px clamp(4px,1.1vw,14px) 48px;min-height:0!important;margin:0;font-family:Inter,Arial,sans-serif}
.cbs-hqp-work-heading{text-align:center;padding:18px 0 32px}
.cbs-hqp-kicker{font:500 10px/1.5 Inter,Arial,sans-serif;letter-spacing:.26em;color:#bca47b;margin-bottom:9px}
.cbs-hqp-work-heading h1{font:400 clamp(44px,6vw,86px)/1.05 Georgia,serif;color:#f6f2e9;margin:0 0 10px}
.cbs-hqp-work-heading h1 em{font-weight:400;color:#cbb793}
.cbs-hqp-work-heading p{font:400 13px/1.7 Inter,Arial,sans-serif;color:#aaa39a;margin:0}
/* No decorative backgrounds, borders or height-controlled tiles, even before JS loads. */
.cbs-hqp-photo-wall{display:flex!important;flex-direction:column!important;gap:4px!important;width:100%;max-width:1280px;margin:0 auto!important;padding:0!important;align-items:stretch;background:transparent!important}
.cbs-hqp-work-gallery a.cbs-hqp-photo{display:block!important;position:relative!important;min-width:0;min-height:0!important;max-height:none!important;height:fit-content!important;aspect-ratio:auto!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;border-radius:0!important;outline-offset:2px;overflow:hidden!important;background:transparent!important;cursor:zoom-in;text-decoration:none!important;line-height:0!important;vertical-align:top}
.cbs-hqp-photo[data-cbs-orientation="wide"]{grid-column:1/-1}
.cbs-hqp-work-gallery a.cbs-hqp-photo>img{display:block!important;box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:auto!important;object-fit:fill!important;object-position:center!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;border-radius:0!important;background:transparent!important;transform:none!important;vertical-align:top!important;transition:filter .25s ease}
.cbs-hqp-photo:hover img,.cbs-hqp-photo:focus-visible img{filter:brightness(.88)}
.cbs-hqp-photo-icon{position:absolute;right:9px;bottom:9px;width:28px;height:28px;display:grid;place-items:center;background:#0c0a09c9;color:#f5e8d0;border:1px solid #ffffff50;border-radius:50%;font-size:14px;pointer-events:none;opacity:0;transition:opacity .2s}
.cbs-hqp-photo:hover .cbs-hqp-photo-icon,.cbs-hqp-photo:focus-visible .cbs-hqp-photo-icon{opacity:1}
/* Exact photo-height rows: the image dictates tile height, with zero letterbox, padding, or frame. */
.cbs-hqp-photo-wall.cbs-hqp-packed{display:flex!important;flex-direction:column!important;gap:4px!important;align-items:stretch!important}
.cbs-hqp-photo-row{display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;gap:4px!important;width:100%!important;min-width:0;min-height:0!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;overflow:visible!important}
.cbs-hqp-photo-row .cbs-hqp-photo{flex:var(--cbs-flex,1) 1 0!important;max-width:100%;min-width:0;grid-column:auto!important}
.cbs-hqp-photo-row.cbs-hqp-row-wide .cbs-hqp-photo{flex:1 1 100%!important;width:100%}
.cbs-hqp-photo-row.cbs-hqp-row-solo .cbs-hqp-photo{flex:none!important;width:100%!important}
.cbs-hqp-no-gallery{text-align:center;color:#bca47b;padding:30px}
.cbs-hqp-work-return{text-align:center;padding-top:38px}
.cbs-hqp-work-return a{font:600 11px/1.5 Inter,Arial,sans-serif;letter-spacing:.14em;color:#cdb891;text-decoration:none}
@media(max-width:700px){.cbs-hqp-work-gallery{padding:22px 3px 42px}.cbs-hqp-work-heading{padding:12px 8px 25px}.cbs-hqp-photo-wall,.cbs-hqp-photo-wall.cbs-hqp-packed,.cbs-hqp-photo-row{gap:3px!important}.cbs-hqp-photo-icon{display:none!important}.cbs-hqp-photo-row.cbs-hqp-row-solo .cbs-hqp-photo{width:100%!important}}
/* Accessible full-resolution photo viewer. */
.cbs-hqp-lightbox[hidden]{display:none!important}
.cbs-hqp-lightbox{position:fixed;inset:0;z-index:2147483500;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#050505f7;padding:42px 44px;color:#fff;font-family:Inter,Arial,sans-serif}
.cbs-hqp-lightbox-image{display:block!important;max-width:min(95vw,1550px)!important;max-height:calc(100dvh - 108px)!important;width:auto!important;height:auto!important;object-fit:contain!important;box-shadow:0 12px 60px #0008}
.cbs-hqp-lb-close,.cbs-hqp-lb-prev,.cbs-hqp-lb-next{position:absolute;display:grid;place-items:center;border:1px solid #ffffff3b;background:#161616d8;color:#fff;border-radius:50%;cursor:pointer;width:41px;height:41px;padding:0;font:400 25px/1 Arial,sans-serif}
.cbs-hqp-lb-close{top:15px;right:20px}.cbs-hqp-lb-prev{left:13px;top:50%;transform:translateY(-50%)}.cbs-hqp-lb-next{right:13px;top:50%;transform:translateY(-50%)}
.cbs-hqp-lb-caption{max-width:90vw;margin-top:10px;font:400 12px/1.4 Inter,Arial,sans-serif;color:#d2c9b9;text-align:center}
.cbs-hqp-lb-close:focus-visible,.cbs-hqp-lb-prev:focus-visible,.cbs-hqp-lb-next:focus-visible{outline:2px solid #cbb793;outline-offset:3px}
@media(max-width:480px){.cbs-hqp-lightbox{padding:50px 10px}.cbs-hqp-lightbox-image{max-height:calc(100dvh - 135px)!important}.cbs-hqp-lb-prev{left:9px;top:auto;bottom:12px;transform:none}.cbs-hqp-lb-next{right:9px;top:auto;bottom:12px}.cbs-hqp-lb-close{top:10px;right:10px}.cbs-hqp-lb-caption{margin-bottom:36px}}

/* Desktop-specific image-integrity fix: natural width/height, never stretch or crop.
   The 700px-and-below mobile arrangement is intentionally unchanged. */
@media (min-width:701px) {
  .cbs-hqp-work-gallery .cbs-hqp-photo-row {align-items:flex-start!important;min-height:0!important;height:auto!important;}
  .cbs-hqp-work-gallery .cbs-hqp-photo-row.cbs-hqp-row-portraits > a.cbs-hqp-photo {flex:var(--cbs-flex,1) 1 0!important;width:auto!important;height:auto!important;}
  .cbs-hqp-work-gallery .cbs-hqp-photo-row > a.cbs-hqp-photo > img {width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;aspect-ratio:auto!important;}
}

/* v1.4.5: reduce desktop row-to-row gap without touching successful mobile collage. */
@media(min-width:701px){
  .cbs-hqp-work-gallery .cbs-hqp-photo-wall,
  .cbs-hqp-work-gallery .cbs-hqp-photo-wall.cbs-hqp-packed{gap:1px!important;row-gap:1px!important;}
  .cbs-hqp-work-gallery .cbs-hqp-photo-row{gap:2px!important;row-gap:0!important;align-items:flex-start!important;margin:0!important;padding:0!important;line-height:0!important;}
  .cbs-hqp-work-gallery .cbs-hqp-photo-row > a.cbs-hqp-photo{margin:0!important;padding:0!important;min-height:0!important;line-height:0!important;}
  .cbs-hqp-work-gallery .cbs-hqp-photo-row > a.cbs-hqp-photo > img{height:auto!important;aspect-ratio:auto!important;display:block!important;}
}

/* v1.4.6: Desktop image geometry is set to exact pixels by gallery.js.
   Never let a Kadence block, global ratio style, or lazy-image placeholder
   stretch the clickable anchor far beyond its visible photograph. */
@media(min-width:841px){
  .cbs-hqp-work-gallery .cbs-hqp-photo-wall.cbs-hqp-pixel-fit {gap:1px!important;row-gap:1px!important;}
  .cbs-hqp-work-gallery .cbs-hqp-photo-wall.cbs-hqp-pixel-fit > .cbs-hqp-photo-row {display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;overflow:hidden!important;gap:2px!important;margin:0!important;padding:0!important;line-height:0!important;}
  .cbs-hqp-work-gallery .cbs-hqp-photo-wall.cbs-hqp-pixel-fit > .cbs-hqp-photo-row > a.cbs-hqp-photo {display:block!important;overflow:hidden!important;float:none!important;position:relative!important;margin:0!important;padding:0!important;line-height:0!important;background:none!important;}
  .cbs-hqp-work-gallery .cbs-hqp-photo-wall.cbs-hqp-pixel-fit > .cbs-hqp-photo-row > a.cbs-hqp-photo > img {display:block!important;float:none!important;margin:0!important;padding:0!important;border:0!important;transform:none!important;}
}
