/* Program-only masonry keeps every full comparison at its natural ratio. */
html body .hl-proof .hl-shared-stories--program:not(.hl-gallery-track){display:block!important;columns:3!important;column-gap:12px!important}
html body .hl-proof .hl-shared-stories--program .hl-story{display:inline-block!important;width:100%!important;height:auto!important;min-width:0!important;break-inside:avoid!important;margin:0 0 12px!important;padding:0!important;vertical-align:top}
html body .hl-proof .hl-shared-stories--program figure{margin:0!important;width:100%!important;height:auto!important}
html body .hl-proof .hl-shared-stories--program .hl-gallery-photo{width:100%!important;aspect-ratio:auto!important;display:block!important;background:transparent!important;padding:0!important;box-sizing:border-box}
html body .hl-proof .hl-shared-stories--program .hl-gallery-photo img{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;max-height:none!important;contain:none!important;contain-intrinsic-size:none!important;object-fit:contain!important;margin:0!important}
/* Opaque preview, comfortable line length and explicit access to the full text. */
html body .hl-story .hl-gallery-photo .hl-story-hover{background:#303030!important;color:#fff9ec!important;padding:16px!important;box-sizing:border-box;max-height:100%!important;inset:auto 0 0!important;text-align:left!important;font:400 16px/1.45 Figtree,sans-serif!important;letter-spacing:normal!important;text-shadow:none!important;overflow:hidden!important}
html body .hl-story-hover-copy{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden;color:inherit!important;font:inherit!important}
html body .hl-story-hover-cta{display:block;margin-top:10px;color:#fff9ec!important;font:600 15px/1.4 Figtree,sans-serif!important;text-decoration:underline;text-underline-offset:3px}
html body .hl-gallery-photo:focus-visible{outline:3px solid #303030;outline-offset:3px}
/* Native dialog keeps Escape, focus containment and full-text selection. */
html body dialog.hl-gallery-dialog{width:min(1240px,calc(100vw - 32px))!important;max-width:calc(100vw - 32px)!important;max-height:calc(100dvh - 32px)!important;padding:20px!important;overflow:auto!important;border:1px solid #303030!important;background:#fff9ec!important;color:#303030!important;box-sizing:border-box!important}
html body dialog.hl-gallery-dialog::backdrop{background:#000b}
html body .hl-gallery-dialog-close{display:block;margin:0 0 16px auto!important;min-width:88px;min-height:44px;padding:8px 16px;border:1px solid #303030;background:#cad482;color:#303030;font:600 16px/1.4 Figtree,sans-serif;cursor:pointer}
html body .hl-gallery-dialog-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:start}
html body .hl-gallery-dialog--with-story .hl-gallery-dialog-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
html body .hl-gallery-dialog-photo{margin:0!important;min-width:0;position:sticky;top:0}
html body dialog.hl-gallery-dialog .hl-gallery-dialog-photo img{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;max-height:calc(100dvh - 140px)!important;object-fit:contain!important;margin:0!important}
html body .hl-gallery-dialog-story{min-width:0;overflow-wrap:anywhere}
html body dialog.hl-gallery-dialog .hl-gallery-dialog-story blockquote{display:block!important;margin:0!important;padding:0!important;max-width:none!important;font:400 18px/1.65 Figtree,sans-serif!important;text-align:left!important;color:#303030!important}
html body .hl-gallery-dialog-story blockquote :is(p,span){font:inherit!important;color:inherit!important;letter-spacing:normal!important}
html body .hl-gallery-dialog-story cite{display:block;margin-top:20px;font:600 16px/1.5 Figtree,sans-serif!important;color:#303030!important}
@media(max-width:767px){
 html body .hl-proof .hl-shared-stories--program:not(.hl-gallery-track){columns:2!important;column-gap:8px!important}
 html body .hl-proof .hl-shared-stories--program .hl-story{margin-bottom:8px!important}
 html body dialog.hl-gallery-dialog{padding:14px!important}
 html body .hl-gallery-dialog--with-story .hl-gallery-dialog-layout{grid-template-columns:minmax(0,1fr);gap:20px}
 html body .hl-gallery-dialog-photo{position:static}
 html body dialog.hl-gallery-dialog .hl-gallery-dialog-photo img{max-height:45dvh!important}
 html body dialog.hl-gallery-dialog .hl-gallery-dialog-story blockquote{font-size:17px!important;line-height:1.6!important}
}
@media(prefers-reduced-motion:reduce){html body .hl-story-hover{transition:none!important}}
html body .hl-program-client-note{margin:0 0 18px!important;text-align:center!important;font:400 16px/1.5 Figtree,sans-serif!important}
html body .hl-proof .hl-shared-stories--program figure{height:auto!important}
html body .hl-program-client-label{display:block!important;margin:8px 0 0!important;text-align:center!important;font:600 14px/1.4 Figtree,sans-serif!important;color:#303030!important}
/* JS progressively enhances columns to a measured masonry grid, preserving DOM order. */
html body .hl-proof .hl-shared-stories--program.hl-program-masonry:not(.hl-gallery-track){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-rows:1px!important;grid-auto-flow:row dense!important;align-items:start!important;column-gap:12px!important;row-gap:0!important}
html body .hl-proof .hl-shared-stories--program.hl-program-masonry>.hl-story{margin:0!important;padding:0 0 12px!important;align-self:start!important;box-sizing:border-box}
@media(max-width:767px){
 html body .hl-proof .hl-shared-stories--program.hl-program-masonry:not(.hl-gallery-track){grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:8px!important}
 html body .hl-proof .hl-shared-stories--program.hl-program-masonry>.hl-story{padding-bottom:8px!important}
}
