.ghsSlider { position: relative; width: 100%; max-width: 100%; isolation: isolate; }
.ghsSliderViewport { position: relative; width: 100%; overflow: hidden; border-radius: 8px; background: #111; }
.ghsSlide, .ghsSlideLink { position: absolute; inset: 0; }
.ghsSlide { visibility: hidden; opacity: 0; z-index: 0; }
.ghsSlide.isActive { visibility: visible; opacity: 1; z-index: 2; }
.ghsSlide.isLeaving { visibility: visible; opacity: 1; z-index: 1; }
.ghsSlideLink { display: block; color: #fff; text-decoration: none; }
.ghsSlideImage { display: block; width: 100%; height: 100%; object-fit: cover; }

.ghsTransition-fade .ghsSlide { transition: opacity var(--ghs-transition-duration) ease, visibility var(--ghs-transition-duration) linear; }
.ghsTransition-none .ghsSlide { transition: none; }
.ghsTransition-zoom .ghsSlide { transition: opacity var(--ghs-transition-duration) ease, visibility var(--ghs-transition-duration) linear; }
.ghsTransition-zoom .ghsSlideImage { transform: scale(1.035); transition: transform var(--ghs-transition-duration) ease-out; }
.ghsTransition-zoom .ghsSlide.isActive .ghsSlideImage { transform: scale(1); }
.ghsTransition-slide .ghsSlide { visibility: visible; opacity: 1; transform: translateX(100%); transition: transform var(--ghs-transition-duration) ease; }
.ghsTransition-slide .ghsSlide.isActive { transform: translateX(0); }
.ghsTransition-slide.isMovingForward .ghsSlide.isLeaving { transform: translateX(-100%); }
.ghsTransition-slide.isMovingBackward .ghsSlide:not(.isActive):not(.isLeaving) { transform: translateX(-100%); }
.ghsTransition-slide.isMovingBackward .ghsSlide.isLeaving { transform: translateX(100%); }

.ghsSlideOverlay { position: absolute; inset: 0; display: flex; padding: clamp(16px, 3vw, 38px); pointer-events: none; }
.ghsOverlayPosition-bottomLeft .ghsSlideOverlay { align-items: flex-end; justify-content: flex-start; }
.ghsOverlayPosition-bottomCenter .ghsSlideOverlay { align-items: flex-end; justify-content: center; text-align: center; }
.ghsOverlayPosition-bottomRight .ghsSlideOverlay { align-items: flex-end; justify-content: flex-end; text-align: right; }
.ghsOverlayPosition-topLeft .ghsSlideOverlay { align-items: flex-start; justify-content: flex-start; }
.ghsOverlayPosition-topCenter .ghsSlideOverlay { align-items: flex-start; justify-content: center; text-align: center; }
.ghsOverlayPosition-topRight .ghsSlideOverlay { align-items: flex-start; justify-content: flex-end; text-align: right; }
.ghsOverlayPosition-center .ghsSlideOverlay { align-items: center; justify-content: center; text-align: center; }
.ghsOverlayStyle-gradient.ghsOverlayPosition-bottomLeft .ghsSlideOverlay,
.ghsOverlayStyle-gradient.ghsOverlayPosition-bottomCenter .ghsSlideOverlay,
.ghsOverlayStyle-gradient.ghsOverlayPosition-bottomRight .ghsSlideOverlay { background: linear-gradient(to bottom, transparent 28%, rgba(0, 0, 0, .8)); }
.ghsOverlayStyle-gradient.ghsOverlayPosition-topLeft .ghsSlideOverlay,
.ghsOverlayStyle-gradient.ghsOverlayPosition-topCenter .ghsSlideOverlay,
.ghsOverlayStyle-gradient.ghsOverlayPosition-topRight .ghsSlideOverlay { background: linear-gradient(to top, transparent 28%, rgba(0, 0, 0, .8)); }
.ghsOverlayStyle-gradient.ghsOverlayPosition-center .ghsSlideOverlay { background: radial-gradient(circle at center, rgba(0, 0, 0, .56), transparent 68%); }
.ghsSlideCaption { max-width: min(82%, 900px); color: #fff; }
.ghsSlideCaptionGenerated { display: flex; flex-wrap: wrap; align-items: baseline; gap: .35em; }
.ghsOverlayPosition-bottomCenter .ghsSlideCaptionGenerated,
.ghsOverlayPosition-topCenter .ghsSlideCaptionGenerated,
.ghsOverlayPosition-center .ghsSlideCaptionGenerated { justify-content: center; }
.ghsOverlayPosition-bottomRight .ghsSlideCaptionGenerated,
.ghsOverlayPosition-topRight .ghsSlideCaptionGenerated { justify-content: flex-end; }
.ghsSlideCaptionCustom { white-space: pre-line; font-size: clamp(1rem, 2.5vw, 1.6rem); line-height: 1.3; font-weight: 600; }
.ghsOverlayStyle-panel .ghsSlideCaption { padding: .65em .85em; border-radius: 6px; background: rgba(0, 0, 0, .62); backdrop-filter: blur(2px); }
.ghsOverlayStyle-gradient .ghsSlideCaption,
.ghsOverlayStyle-minimal .ghsSlideCaption { text-shadow: 0 1px 4px rgba(0, 0, 0, .9); }
.ghsOverlayStyle-plain .ghsSlideCaption { text-shadow: none; }
.ghsSlidePrefix, .ghsSlideAuthor { font-size: clamp(.72rem, 1.5vw, .95rem); opacity: .9; }
.ghsSlideTitle { font-size: clamp(1rem, 2.5vw, 1.6rem); line-height: 1.15; }
.ghsOverlayAnimation-fade .ghsSlideCaption { opacity: 0; transition: opacity var(--ghs-transition-duration) ease; }
.ghsOverlayAnimation-fade .ghsSlide.isActive .ghsSlideCaption { opacity: 1; }
.ghsOverlayAnimation-slideUp .ghsSlideCaption { opacity: 0; transform: translateY(14px); transition: opacity var(--ghs-transition-duration) ease, transform var(--ghs-transition-duration) ease; }
.ghsOverlayAnimation-slideUp .ghsSlide.isActive .ghsSlideCaption { opacity: 1; transform: translateY(0); }

.ghsSliderArrow { position: absolute; top: 50%; z-index: 4; display: grid; place-items: center; width: 42px; height: 42px; padding: 0; border: 0; border-radius: 50%; background: rgba(0, 0, 0, .48); color: #fff; cursor: pointer; transform: translateY(-50%); transition: background .18s ease, transform .18s ease; }
.ghsSliderArrow:hover, .ghsSliderArrow:focus-visible { background: rgba(0, 0, 0, .72); transform: translateY(-50%) scale(1.06); }
.ghsArrows-inside .ghsSliderArrowPrevious { left: 12px; }
.ghsArrows-inside .ghsSliderArrowNext { right: 12px; }
.ghsArrows-edge .ghsSliderArrow { border-radius: 0 50% 50% 0; }
.ghsArrows-edge .ghsSliderArrowPrevious { left: 0; }
.ghsArrows-edge .ghsSliderArrowNext { right: 0; border-radius: 50% 0 0 50%; }
.ghsSliderArrow:disabled { opacity: .35; cursor: default; }

.ghsSliderDots { z-index: 4; display: flex; justify-content: center; gap: 7px; color: #fff; }
.ghsDots-inside .ghsSliderDots { position: absolute; left: 50%; bottom: 12px; transform: translateX(-50%); }
.ghsDots-below .ghsSliderDots { position: static; margin-top: 10px; color: var(--wcfContentText, #333); }
.ghsSliderDot { width: 9px; height: 9px; padding: 0; border: 1px solid currentColor; border-radius: 50%; background: transparent; color: inherit; cursor: pointer; }
.ghsSliderDot.isActive { background: currentColor; }

/* Jury crop previews always show the entire saved derivative at its real aspect ratio. */
body .ghsJuryCrop img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 240px;
    object-fit: contain;
}

/* SuperHERO wrappers deliberately stay outside WSC's compact header grid on tablet/mobile. */
.ghsSuperHeroPosition {
    box-sizing: border-box;
    display: block;
    clear: both;
    width: 100%;
    max-width: none;
    min-width: 0;
}
.ghsSuperHeroPosition > .boxContainer,
.ghsSuperHeroPosition > .boxContainer > .box,
.ghsSuperHeroPosition > .boxContainer > .box > .boxContent {
    box-sizing: border-box;
    display: block;
    width: 100%;
    max-width: none;
    min-width: 0;
    margin: 0;
    padding: 0;
}
.ghsSuperHeroPosition .ghsSlider {
    width: 100%;
    max-width: none;
    min-width: 0;
    border-radius: 0;
}
.ghsSuperHeroPosition .ghsSliderViewport {
    border-radius: 0;
}
#pageHeaderContainer.ghsSuperHeroReplaceFacadeActive #pageHeaderFacade {
    display: none !important;
}

/* Keep month-folder cards compact: three per row on desktop, then 2 / 1 responsively. */
@media (min-width: 801px) {
    body .ghsFolderGrid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 561px) and (max-width: 800px) {
    body .ghsFolderGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
    body .ghsFolderGrid { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 1023px) {
    .ghsSuperHeroPosition {
        position: relative;
        z-index: auto;
    }
}

@media (max-width: 700px) {
    .ghsSliderArrow { width: 34px; height: 34px; }
    .ghsArrows-inside .ghsSliderArrowPrevious { left: 7px; }
    .ghsArrows-inside .ghsSliderArrowNext { right: 7px; }
    .ghsMobileArrows-hidden .ghsSliderArrow { display: none; }
    .ghsSlideOverlay { padding: 14px; }
    .ghsSlideCaption { max-width: 92%; }
    .ghsOverlayMobile-title .ghsSlideCaptionGenerated .ghsSlidePrefix,
    .ghsOverlayMobile-title .ghsSlideCaptionGenerated .ghsSlideAuthor,
    .ghsOverlayMobile-titleAuthor .ghsSlideCaptionGenerated .ghsSlidePrefix { display: none; }
    .ghsOverlayMobile-hidden .ghsSlideOverlay { display: none; }
    .ghsSuperHeroPosition .ghsSliderViewport { min-height: 120px; }
}

@media (prefers-reduced-motion: reduce) {
    .ghsSlide, .ghsSlideImage, .ghsSlideCaption, .ghsSliderArrow { transition: none !important; animation: none !important; }
    .ghsTransition-zoom .ghsSlideImage { transform: none; }
}
