.dsg-gallery,.dsg-login,.dsg-collection{--dsg-ink:#172a35;--dsg-accent:#164b62;color:var(--dsg-ink);font-family:inherit}.dsg-heading{text-align:center;margin:1.5rem auto 2.5rem}.dsg-heading h2,.dsg-login h2{font-size:clamp(1.8rem,4vw,3.2rem);line-height:1.12;margin:.4rem 0 1rem}.dsg-eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:600}.dsg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.dsg-card{margin:0;background:#f6f5f1;min-width:0}.dsg-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.dsg-card figcaption{padding:.8rem;display:flex;gap:.5rem;justify-content:space-between;align-items:start;font-size:.72rem}.dsg-card figcaption span{overflow-wrap:anywhere}.dsg-download{flex-shrink:0;color:var(--dsg-accent);text-decoration:underline}.dsg-pagination{display:flex;justify-content:center;align-items:center;gap:1.5rem;margin:2rem 0}.dsg-login{max-width:420px;margin:2rem auto}.dsg-login input[type=text],.dsg-login input[type=password]{width:100%;padding:.8rem;border:1px solid #b7c1c5;background:white}.dsg-login label{display:block;margin:.7rem 0 .25rem}.dsg-login input[type=submit],.dsg-button{display:inline-block;padding:.8rem 1.4rem;border:0;background:var(--dsg-accent);color:white;margin:1rem 0;cursor:pointer}.dsg-collection{padding:2rem;border-bottom:1px solid #d4dcde}.dsg-session{text-align:right}.dsg-lightbox{border:0;background:#13232eee;color:white;width:min(96vw,2000px);max-height:94vh;padding:1rem}.dsg-lightbox::backdrop{background:#000c}.dsg-lightbox img{display:block;max-width:100%;max-height:78vh;margin:auto;object-fit:contain}.dsg-lightbox p{text-align:center;overflow-wrap:anywhere}.dsg-lightbox button{display:block;margin-left:auto;color:white;background:transparent;border:1px solid #ffffff80;padding:.5rem .8rem;cursor:pointer}.dsg-preview:focus-visible,.dsg-download:focus-visible,.dsg-pagination a:focus-visible{outline:3px solid #c9a46b;outline-offset:4px}@media(max-width:800px){.dsg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dsg-card figcaption{display:block}.dsg-download{display:block;margin-top:.4rem}}@media(max-width:480px){.dsg-grid{grid-template-columns:1fr}.dsg-heading{margin-bottom:1.5rem}}

/* Private collections span the viewport without changing the Divi page or public galleries. */
.dsg-private-gallery{width:calc(100vw - 32px);max-width:none;position:relative;left:50%;transform:translateX(-50%)}
.dsg-private-gallery .dsg-grid{gap:8px;grid-template-columns:repeat(6,minmax(0,1fr))}
.dsg-private-gallery .dsg-card{position:relative;overflow:hidden;background:#172a35}
.dsg-private-gallery .dsg-photo-controls{position:absolute;inset:0;padding:.5rem;color:#fff;background:rgba(0,0,0,.58);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;font-size:.8rem;opacity:0;transition:opacity .18s ease;pointer-events:none}
.dsg-private-gallery .dsg-card:hover .dsg-photo-controls,.dsg-private-gallery .dsg-card:focus-within .dsg-photo-controls{opacity:1;pointer-events:auto}
.dsg-private-gallery .dsg-photo-actions{display:flex;flex-direction:column;align-items:center;gap:.2rem}
.dsg-private-gallery .dsg-photo-actions a,.dsg-private-gallery .dsg-photo-actions button{font:inherit;color:white!important;background:transparent;border:0;padding:.3rem 0;margin:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px;line-height:1.5}
.dsg-private-gallery .dsg-filename{margin:.65rem 0 0;overflow-wrap:anywhere;user-select:text;line-height:1.5}
.dsg-private-gallery .dsg-filename[hidden]{display:none!important}
.dsg-filename-toggle:focus-visible,.dsg-view:focus-visible{outline:3px solid #c9a46b;outline-offset:3px}
@media(max-width:800px){.dsg-private-gallery{width:calc(100vw - 16px)}.dsg-private-gallery .dsg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dsg-private-gallery .dsg-photo-controls{padding:.5rem}}
@media(hover:none),(pointer:coarse){.dsg-private-gallery .dsg-photo-controls{opacity:1;pointer-events:auto}}
@media(max-width:480px){.dsg-private-gallery .dsg-grid{grid-template-columns:1fr}.dsg-private-gallery .dsg-photo-controls{opacity:1;pointer-events:auto}}
@media(prefers-reduced-motion:reduce){.dsg-private-gallery .dsg-photo-controls{transition:none}}

.dsg-private-gallery .dsg-photo-actions .dsg-view{font-size:1.05rem;font-weight:600;text-decoration:none;border:1px solid #ffffffa0;border-radius:3px;padding:.3rem 1.1rem}
@media(max-width:1200px) and (min-width:801px){.dsg-private-gallery .dsg-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}


/* Natural proportions, compact collection navigation, and Define-style controls. */
.dsg-private-gallery{--dsg-ink:#252a2d;--dsg-accent:#009fe3;width:calc(100vw - 40px);max-width:1800px}
.dsg-private-gallery .dsg-heading{max-width:880px;padding:28px 20px 12px;margin:0 auto 28px}
.dsg-private-gallery .dsg-heading h2{font-family:Raleway,Arial,sans-serif;font-weight:300;letter-spacing:-.025em;margin:.5rem 0 1rem}
.dsg-private-gallery .dsg-eyebrow{color:#8d7964;font-size:10px;letter-spacing:.24em}
.dsg-private-gallery .dsg-credit{font-size:12px;letter-spacing:.05em;margin:0 0 20px;color:#65605a}
.dsg-private-gallery .dsg-description{font-size:15px;line-height:1.8;max-width:680px;margin:24px auto;color:#595550;white-space:normal}
.dsg-private-gallery .dsg-count{font-size:11px;color:#777;letter-spacing:.04em}
.dsg-collection-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #e7e2dc;border-bottom:1px solid #e7e2dc;margin-bottom:24px;padding:6px 0;min-width:0}
.dsg-categories{display:flex;align-items:center;gap:22px;overflow-x:auto;scrollbar-width:thin;padding:8px 2px;min-width:0}
.dsg-categories a{font-size:10px;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap;color:#706c66!important;padding:8px 0;border-bottom:2px solid transparent}
.dsg-categories a[aria-current=page]{color:#292723!important;border-bottom-color:var(--dsg-accent)}
.dsg-collection-actions{display:flex;flex-shrink:0;gap:5px}
.dsg-tool{font:inherit;font-size:11px;letter-spacing:.055em;background:none;border:0;padding:12px 11px;cursor:pointer;color:#45413d}
.dsg-tool:hover{color:#b46923}.dsg-tool:disabled{opacity:.5;cursor:not-allowed}
.dsg-private-gallery .dsg-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-items:start}.dsg-private-gallery .dsg-grid.dsg-masonry{grid-auto-rows:8px}
.dsg-private-gallery .dsg-card{display:block;width:100%;margin:0;overflow:hidden;background:#eeeae4}
.dsg-private-gallery .dsg-card img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;display:block}
.dsg-private-gallery .dsg-photo-controls{inset:auto 0 0;background:linear-gradient(transparent,rgba(0,0,0,.78));padding:38px 8px 10px}
.dsg-private-gallery .dsg-photo-actions{flex-direction:row;flex-wrap:wrap;gap:12px;justify-content:center}
.dsg-private-gallery .dsg-photo-actions a,.dsg-private-gallery .dsg-photo-actions button{font-size:10px;padding:4px 0}
.dsg-private-gallery .dsg-photo-actions .dsg-view{font-size:11px;border:0;padding:4px 0;font-weight:600}
.dsg-more{text-align:center;margin:28px 0 6px}.dsg-private-gallery .dsg-button,.dsg-email-dialog .dsg-button{font-family:"Open Sans",Arial,sans-serif;background:transparent;border:2px solid #262626;border-radius:3px;color:#262626!important;text-transform:uppercase;letter-spacing:1.1px;font-size:11px;font-weight:600;line-height:22px;padding:10px 20px;min-width:160px;margin:0;transition:background .18s,border-color .18s}
.dsg-private-gallery .dsg-button:hover,.dsg-email-dialog .dsg-button:hover{background:#262626;border-color:#262626;color:#fff!important}
.dsg-load-more[hidden]{display:none!important}.dsg-load-status,.dsg-download-status,.dsg-share-status{font-size:12px;line-height:1.6;text-align:center;margin:12px auto;max-width:750px}
.dsg-load-status:empty,.dsg-download-status:empty,.dsg-share-status:empty{display:none}
.dsg-share-status input{display:block;max-width:100%;width:620px;padding:8px;border:1px solid #bbb;margin:8px auto}
.dsg-download-help{max-width:700px;text-align:center;margin:20px auto;font-size:11px;line-height:1.6;color:#777}
.dsg-empty{text-align:center;padding:60px 20px}
.dsg-categories a:focus-visible,.dsg-tool:focus-visible,.dsg-button:focus-visible,.dsg-lightbox button:focus-visible,.dsg-email-dialog button:focus-visible,.dsg-email-dialog input:focus-visible{outline:3px solid #38b5e7;outline-offset:4px}
.dsg-lightbox{padding:14px;background:#151515f5}.dsg-lightbox-tools{display:flex;gap:8px;justify-content:flex-end;margin-bottom:12px}.dsg-lightbox-tools button{display:inline-block;margin:0;font:inherit;font-size:12px}.dsg-lightbox-tools button:first-child{margin-right:auto}.dsg-lightbox-tools button[hidden]{display:none!important}.dsg-lightbox-tools button:disabled{opacity:.35}.dsg-lightbox img{max-height:76vh}.dsg-lightbox p{font-size:11px;line-height:1.5;margin:10px 0 0}
.dsg-email-dialog{border:0;width:min(94vw,440px);padding:30px;color:#252a2d;box-sizing:border-box}.dsg-email-dialog::backdrop{background:#000b}.dsg-email-dialog h2{font-size:25px;margin:20px 0}.dsg-email-dialog p{font-size:13px;line-height:1.7}.dsg-email-dialog label{display:block;margin:20px 0;font-size:12px}.dsg-email-dialog input{display:block;width:100%;box-sizing:border-box;padding:12px;border:1px solid #aaa;margin-top:8px;font-size:16px}.dsg-dialog-close{float:right;background:none;border:0;text-decoration:underline;font:inherit;font-size:12px;cursor:pointer}.dsg-email-dialog .dsg-button{width:100%;min-width:0}.dsg-email-dialog .dsg-email-status{margin:14px 0 0}
@media(min-width:1440px){.dsg-private-gallery .dsg-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1000px){.dsg-private-gallery .dsg-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dsg-collection-bar{display:block}.dsg-collection-actions{justify-content:center;border-top:1px solid #eee}.dsg-categories{gap:20px}}
@media(max-width:600px){.dsg-private-gallery{width:calc(100vw - 16px)}.dsg-private-gallery .dsg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.dsg-private-gallery .dsg-card{margin-bottom:0}.dsg-private-gallery .dsg-heading{padding:20px 14px 4px;margin-bottom:20px}.dsg-private-gallery .dsg-heading h2{font-size:28px}.dsg-private-gallery .dsg-description{font-size:13px;line-height:1.7}.dsg-collection-bar{margin-bottom:12px}.dsg-categories{gap:18px}.dsg-private-gallery .dsg-photo-actions{gap:8px}.dsg-private-gallery .dsg-photo-controls{padding:28px 5px 5px}.dsg-private-gallery .dsg-photo-actions a,.dsg-private-gallery .dsg-photo-actions button{font-size:9px}.dsg-private-gallery .dsg-photo-actions .dsg-view{font-size:10px}.dsg-download-help{padding:0 15px}.dsg-lightbox-tools{gap:5px}.dsg-lightbox-tools button{padding:8px 7px}}
@media(hover:none),(pointer:coarse){.dsg-private-gallery .dsg-photo-controls{opacity:1;pointer-events:auto}}
@media(prefers-reduced-motion:reduce){.dsg-private-gallery .dsg-button,.dsg-email-dialog .dsg-button{transition:none}}
.dsg-email-entry{max-width:520px;padding:30px 20px}.dsg-email-entry input[type=email]{width:100%;padding:12px;border:1px solid #b7c1c5;font-size:16px;box-sizing:border-box}.dsg-email-entry .dsg-privacy{font-size:12px;line-height:1.7;color:#666;margin:18px 0}.dsg-forget-email{font-size:11px;text-decoration:underline}
/* Explicitly approved featured sets and exact three-photo project mappings. */
.dsg-featured-index{margin:32px 0 44px}.dsg-featured-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.dsg-featured-index-card h3{font-family:Raleway,Arial,sans-serif;font-size:20px;font-weight:400;margin:14px 0 6px}.dsg-featured-index-card p{font-size:12px;color:#777}.dsg-featured-index-card img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.dsg-featured-gallery{margin:28px 0}.dsg-featured-grid{columns:3;column-gap:10px}.dsg-featured-grid .dsg-card{display:inline-block;width:100%;margin:0 0 10px;break-inside:avoid}.dsg-featured-grid img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.dsg-project-preview{margin:40px 0}.dsg-project-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dsg-project-preview-grid img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.dsg-featured-gallery .dsg-button,.dsg-project-preview .dsg-button{font-family:"Open Sans",Arial,sans-serif;background:transparent;border:2px solid #262626;border-radius:3px;color:#262626!important;text-transform:uppercase;letter-spacing:1.1px;font-size:11px;font-weight:600;line-height:22px;padding:10px 20px}.dsg-featured-gallery .dsg-button:hover,.dsg-project-preview .dsg-button:hover{background:#262626;color:#fff!important}.dsg-featured-index a:focus-visible,.dsg-featured-gallery a:focus-visible,.dsg-project-preview a:focus-visible{outline:3px solid #38b5e7;outline-offset:4px}
.dsg-video-card>a,.dsg-video-poster{display:block;position:relative}.dsg-video-badge{position:absolute;left:10px;top:10px;color:#fff;background:#111b;padding:5px 9px;font-size:11px;letter-spacing:.06em}.dsg-video-help{font-size:10px;color:#fff}.dsg-video-dialog{border:0;width:min(96vw,1600px);max-height:95vh;background:#151515f5;color:#fff;padding:14px}.dsg-video-dialog::backdrop{background:#000c}.dsg-video-dialog button{display:block;margin:0 0 12px auto;color:#fff;background:none;border:1px solid #fff8;padding:8px 12px;cursor:pointer}.dsg-video-dialog video{display:block;max-width:100%;width:100%;max-height:76vh;object-fit:contain;background:#000}.dsg-video-dialog p{text-align:center;font-size:12px;line-height:1.5;margin:10px 0 0}.dsg-video:focus-visible,.dsg-video-dialog button:focus-visible{outline:3px solid #38b5e7;outline-offset:4px}
@media(max-width:700px){.dsg-featured-index-grid{grid-template-columns:1fr}.dsg-featured-grid{columns:2}.dsg-project-preview-grid{gap:6px}.dsg-featured-gallery .dsg-heading h2{font-size:28px}}
@media(max-width:400px){.dsg-featured-grid{columns:1}}
/* Wall-to-wall mixed-aspect collections; every public card is server-selected. */
.dsg-private-gallery{width:calc(100vw - 12px);max-width:none}.dsg-private-gallery .dsg-grid{gap:5px}
.dsg-public-collection{width:calc(100vw - 12px);position:relative;left:50%;transform:translateX(-50%)}
.dsg-public-tools{display:flex;justify-content:center;gap:10px;margin:8px 0 18px}.dsg-featured-status{font-size:12px;text-align:center;margin:10px auto}.dsg-featured-status:empty{display:none}
.dsg-public-collection .dsg-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;align-items:start}.dsg-public-collection .dsg-grid.dsg-masonry{grid-auto-rows:8px}
.dsg-public-collection .dsg-card{margin:0;display:block;background:#eeeae4}.dsg-public-collection .dsg-card[hidden],.dsg-public-more[hidden]{display:none!important}
.dsg-public-collection .dsg-card img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.dsg-public-collection .dsg-card a{display:block}
.dsg-project-extended .dsg-more{text-align:center}.dsg-featured-photo:focus-visible,.dsg-public-more:focus-visible{outline:3px solid #38b5e7;outline-offset:3px}
@media(min-width:1440px){.dsg-public-collection .dsg-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1000px){.dsg-public-collection .dsg-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.dsg-private-gallery,.dsg-public-collection{width:calc(100vw - 8px)}.dsg-public-collection .dsg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.dsg-private-gallery .dsg-grid{gap:4px}}

/* Exact equal gutters for the complete public download gallery. */
.dsg-private-gallery[data-access-mode="public_download"] .dsg-grid{position:relative;gap:4px;grid-auto-rows:auto}
.dsg-private-gallery[data-access-mode="public_download"] .dsg-card{margin:0;padding:0;line-height:0}
.dsg-private-gallery[data-access-mode="public_download"] .dsg-card img,.dsg-private-gallery[data-access-mode="public_download"] .dsg-card>a{display:block;margin:0;padding:0}
.dsg-private-gallery[data-access-mode="public_download"] .dsg-photo-controls,.dsg-private-gallery[data-access-mode="public_download"] .dsg-filename{line-height:1.5}

/* Britney portfolio pilot: preserve native photo shapes with exact equal gutters. */
.dsg-public-collection[data-gallery="1644"]{width:calc(100% - 12px);left:auto;transform:none;margin-left:auto;margin-right:auto;box-sizing:border-box}
.dsg-public-collection[data-gallery="1644"] .dsg-grid{position:relative;gap:4px;grid-auto-rows:auto}
.dsg-public-collection[data-gallery="1644"] .dsg-card{margin:0;padding:0;line-height:0}
.dsg-public-collection[data-gallery="1644"] .dsg-card img,.dsg-public-collection[data-gallery="1644"] .dsg-card>a{display:block;margin:0;padding:0}
@media(max-width:600px){.dsg-public-collection[data-gallery="1644"]{width:calc(100% - 8px)}}

/* Equal image gutters for every full/featured collection, independent of provider or access mode. */
.dsg-private-gallery .dsg-grid,.dsg-public-collection .dsg-grid{position:relative;gap:4px}
.dsg-private-gallery .dsg-grid.dsg-masonry,.dsg-public-collection .dsg-grid.dsg-masonry{grid-auto-rows:auto}
.dsg-private-gallery .dsg-card,.dsg-public-collection .dsg-card{margin:0;padding:0;line-height:0}
.dsg-private-gallery .dsg-card>a,.dsg-public-collection .dsg-card>a,.dsg-private-gallery .dsg-card img,.dsg-public-collection .dsg-card img{display:block;margin:0;padding:0}
.dsg-private-gallery .dsg-photo-controls,.dsg-public-collection .dsg-photo-controls,.dsg-private-gallery .dsg-filename,.dsg-public-collection .dsg-filename,.dsg-private-gallery .dsg-video-badge,.dsg-public-collection .dsg-video-badge{line-height:1.5}
