.horizontal-carousel{width:100%;min-width:0}.horizontal-carousel-heading{margin-bottom:.75rem}.horizontal-carousel-heading h2{font-size:clamp(1.4rem,3vw,2rem);line-height:1.2}.horizontal-carousel-heading p{color:var(--color-text-muted);margin-top:.5rem;font-size:.85rem;line-height:1.6}.horizontal-carousel-controls{justify-content:flex-end;align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.horizontal-carousel-controls .button{width:44px;min-width:44px;height:44px;min-height:44px;padding:0;font-size:1.25rem}.horizontal-carousel-controls>span{text-align:center;min-width:3rem;color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:.8125rem}.horizontal-carousel-track{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;overflow-x:auto}.horizontal-carousel-track>*{scroll-snap-align:start;min-width:0}.horizontal-carousel-track:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}
.photo-open{background:var(--color-surface-muted);cursor:zoom-in;text-align:left;border:0;width:100%;min-height:44px;padding:0;display:block;position:relative}.photo-open-mark{border-radius:var(--radius-sm);width:2rem;height:2rem;color:var(--color-primary);background:var(--color-background);place-items:center;font-size:1.25rem;display:grid;position:absolute;top:.75rem;right:.75rem}.photo-open-caption{color:var(--color-background);background:linear-gradient(transparent,var(--color-primary) 35%);opacity:0;transition:opacity var(--duration-fast),transform var(--duration-fast);pointer-events:none;padding:2.75rem 1rem 1rem;font-size:.8125rem;line-height:1.5;position:absolute;inset:auto 0 0;transform:translateY(.25rem)}.photo-open:focus-visible .photo-open-caption{opacity:1;transform:none}@media (hover:hover) and (pointer:fine){.photo-open:hover .photo-open-caption{opacity:1;transform:none}}.gallery-feature[data-caption-dismissed=true] .photo-open-caption{opacity:0;transform:none}
