.trusted-window{overflow:hidden;padding:12px 0}.trusted-track{display:flex;justify-content:center;gap:24px}.trusted-logo{flex:0 0 160px;display:grid;place-items:center}.trusted-logo img{max-width:100%;object-fit:contain}.trusted-track.is-running{width:max-content;justify-content:flex-start}.trusted-track.is-ready{animation:trusted-scroll 24s linear infinite}.trusted-track.is-ready.runs-right{animation-direction:reverse}.trusted-window:focus-within .trusted-track,.trusted-track.is-paused{animation-play-state:paused}.portfolio-photo{display:block;overflow:hidden;border-radius:16px;background:#f4f1ed}.portfolio-photo img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;transition:transform .25s}.portfolio-photo:hover img{transform:scale(1.03)}@keyframes trusted-scroll{to{transform:translateX(calc(-1 * var(--scroll-distance)))}}@media(prefers-reduced-motion:reduce){.trusted-track.is-ready{animation:none}.trusted-track{flex-wrap:wrap;width:auto!important}.trusted-copy{display:none}.portfolio-photo img{transition:none}}@media(max-width:575px){.trusted-track:not(.is-running){flex-wrap:wrap}.trusted-logo{flex-basis:130px}}

@media (hover:hover) and (pointer:fine) {
    .trusted-rows:hover .trusted-track { animation-play-state:paused; }
}

/* Keep the close control outside the image and reserve a full touch target. */
#portfolio-lightbox { border:0; border-radius:16px; padding:0; width:min(860px,calc(100vw - 32px)); max-width:calc(100vw - 32px); max-height:calc(100vh - 40px); max-height:calc(100dvh - 40px); background:#fff; color:#292929; box-shadow:0 20px 70px #0004; }
#portfolio-lightbox[open] { display:flex; flex-direction:column; }
#portfolio-lightbox::backdrop { background:rgba(16,20,24,.72); }
.portfolio-lightbox-header { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-shrink:0; padding:8px 12px 8px 20px; border-bottom:1px solid #eee; }
.portfolio-lightbox-header h2 { margin:0; font-size:15px; line-height:1.4; font-weight:600; color:#333; }
.portfolio-lightbox-close { display:inline-flex; align-items:center; justify-content:center; flex:0 0 44px; width:44px; height:44px; padding:0; border:0; border-radius:10px; color:#555; background:#f5f5f5; cursor:pointer; }
.portfolio-lightbox-close:hover { color:#222; background:#eaeaea; }
.portfolio-lightbox-close:focus-visible { outline:2px solid #ad7a2a; outline-offset:2px; }
.portfolio-lightbox-close svg { display:block; pointer-events:none; }
.portfolio-lightbox-body { min-height:0; overflow:auto; padding:16px 16px 0; }
#portfolio-lightbox .portfolio-lightbox-body img { display:block; width:auto; height:auto; max-width:100%; max-height:calc(100vh - 210px); max-height:calc(100dvh - 210px); margin:auto; object-fit:contain; border-radius:6px; }
#portfolio-lightbox #lightbox-caption { margin:0; padding:0; flex:1 1 auto; min-width:0; overflow-wrap:anywhere; overflow:auto; max-height:96px; font-size:14px; line-height:1.5; color:#555; }
body.portfolio-lightbox-open { overflow:hidden; }
@media(max-width:575px) { .portfolio-lightbox-header { padding-left:16px; } .portfolio-lightbox-body { padding:12px 12px 0; }  }

.portfolio-lightbox-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 16px; flex-shrink:0; }
.portfolio-lightbox-navigation { display:flex; align-items:center; gap:4px; flex-shrink:0; }
.portfolio-lightbox-navigation[hidden] { display:none; }
.portfolio-lightbox-navigation button { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; padding:0; border:1px solid #ece8e2; border-radius:10px; background:#faf8f5; color:#5b5142; cursor:pointer; }
.portfolio-lightbox-navigation button:hover:not(:disabled) { background:#f0e9df; }
.portfolio-lightbox-navigation button:focus-visible { outline:2px solid #ad7a2a; outline-offset:2px; }
.portfolio-lightbox-navigation button:disabled { opacity:.35; cursor:default; }
.portfolio-lightbox-navigation svg { display:block; pointer-events:none; }
.portfolio-lightbox-counter { min-width:46px; text-align:center; font-size:12px; color:#777; white-space:nowrap; font-variant-numeric:tabular-nums; }
.portfolio-lightbox-body { touch-action:pan-y pinch-zoom; }
@media(max-width:359px) { .portfolio-lightbox-footer { flex-wrap:wrap; } .portfolio-lightbox-navigation { margin-left:auto; } }
