/* Defaults leave 0.4.27 painting intact; only explicitly edited components opt in. */
.fw-preview .fw-sections{justify-content:var(--fd-tab-align,center)}
.fw-preview .fw-sections button{background:transparent;color:var(--fd-tab-inactive_text)}
.fw-preview .fw-sections button[aria-pressed=true]{background:transparent;color:var(--fd-tab-inactive_text);border-bottom-color:var(--fd-tab-active)}
.fw-preview .fw-grid.fw-strict-grid{display:grid;grid-template-columns:repeat(var(--fd-desktop,2),minmax(0,1fr));align-items:start;gap:32px 24px}
.fw-strict-grid>.fw-card{grid-column:auto;grid-row:auto;display:block}
.fw-strict-grid .fw-image-button{aspect-ratio:var(--fw-own-ratio,.75)}
.fw-preview.fd-designed{background:var(--fd-background)}
.fw-preview.fd-designed .fw-grid,.fw-preview.fd-designed .fw-layout-row{gap:var(--fd-gap)}
.fw-preview.fd-designed .fw-card.fd-custom-card{display:flex;flex-direction:column;position:relative;border-radius:var(--fd-radius);border:var(--fd-border) solid var(--fd-bordercolor);box-shadow:var(--fd-shadow);overflow:hidden;background:var(--fd-field)}
.fw-preview .fd-custom-card::after{display:none!important}
.fw-preview .fd-custom-card>h3,.fd-custom-card .fw-caption{display:none!important}
.fd-media{position:relative;width:100%;overflow:hidden;background:var(--fd-field)}
.fw-preview .fd-custom-card .fw-image-button,.fw-preview .fd-custom-card .fw-video-frame{width:100%;height:100%;min-height:0!important;aspect-ratio:inherit;border-radius:0;background:var(--fd-field)!important}
.fw-preview .fd-custom-card .fw-image-button img,.fw-preview .fd-custom-card video{width:100%;height:100%;min-height:0!important;object-fit:var(--fd-fit)!important;object-position:center;background:var(--fd-field)!important}
.fd-label-layer{font-family:inherit;pointer-events:none;box-sizing:border-box;z-index:2;overflow-wrap:anywhere;width:100%}
.fd-label{font-family:inherit;font-size:var(--fd-font);line-height:1.35;box-sizing:border-box}
.fd-label-content{white-space:pre-wrap}
.fd-overlay-top,.fd-overlay-bottom{position:absolute;left:0;right:0;max-height:max(20px,calc((100% - 104px)/2));overflow-y:auto;scrollbar-width:thin}
.fd-overlay-top{top:0}
.fd-overlay-bottom{bottom:44px}

.fd-label-layer:focus-within{pointer-events:auto}
.fd-label-layer.fd-scrollable{pointer-events:auto;touch-action:pan-y;overscroll-behavior:contain}
.fd-outside-top,.fd-outside-bottom{position:relative}
.fd-clamped{display:-webkit-box;-webkit-line-clamp:var(--fd-lines);-webkit-box-orient:vertical;overflow:hidden}
.fd-more{pointer-events:auto;font:inherit;color:inherit;background:transparent;border:0;text-decoration:underline;padding:6px;cursor:pointer}
.fd-text-panel{position:absolute;z-index:30;inset:10%;overflow:auto;background:#181818;color:#fff;padding:24px;font:18px/1.6 inherit;touch-action:pan-y;white-space:pre-wrap}
.fd-text-panel button{display:block;margin:0 0 20px auto}
.fw-preview .fd-custom-card .fw-controls{position:absolute;inset:0;padding:0;pointer-events:none}
.fd-custom-card .fw-controls button{pointer-events:auto}
.fw-preview[data-caption-mode] .fw-card.fd-custom-card .fw-controls>button:not(.fw-auto-toggle){position:absolute;top:50%;left:4px;transform:translateY(-50%);border:0!important;background:var(--fd-arrowbg)!important;font-size:var(--fd-arrowsize)!important;color:var(--fd-arrow)!important;min-height:44px;min-width:44px;padding:0}
.fw-preview[data-caption-mode] .fw-card.fd-custom-card .fw-controls>button:not(.fw-auto-toggle):last-child{left:auto;right:4px}
.fd-custom-card .fw-dots{position:absolute;bottom:0;left:48px;right:48px}
.fd-designed .fw-dots button::after,.fd-designed .fw-view-dots button::after{width:var(--fd-dotsize)!important;height:var(--fd-dotsize)!important;background:var(--fd-dot)!important;opacity:.55}
.fd-designed .fw-dots button[aria-current=true]::after,.fd-designed .fw-view-dots button[aria-current=true]::after{opacity:1}
.fw-lightbox.fd-designed .fw-view-arrow,.fd-designed .fh-nav{color:var(--fd-arrow)!important;font-size:var(--fd-arrowsize)!important;background:var(--fd-arrowbg)!important}
[data-design-arrows=false] .fw-controls>button,[data-design-arrows=false] .fw-view-arrow,[data-design-arrows=false] .fh-nav{display:none!important}
[data-design-dots=false] .fw-dots,[data-design-dots=false] .fw-view-dots,[data-design-dots=false] .fh-dots{display:none!important}
.foxy-home-carousel .fh-track{gap:var(--fh-gap,5px);transition-duration:var(--fd-duration,300ms)}
.foxy-home-carousel .fh-slide{flex-basis:calc((100% - (var(--fh-columns) - 1)*var(--fh-gap,5px))/var(--fh-columns))}
.foxy-home-carousel.fd-designed .fh-window{border-radius:var(--fd-radius);overflow:hidden}
.foxy-home-carousel.fd-designed img{object-fit:var(--fd-fit)!important;background:var(--fd-field)}
/* Dot styling belongs to the circle, never to its full click target. */
.foxy-home-carousel.fd-designed .fh-controls,.foxy-home-carousel.fd-designed .fh-dots,.foxy-home-carousel.fd-designed .fh-dots button{background:transparent!important;border:0;box-shadow:none}
.foxy-home-carousel.fd-designed .fh-dots button{width:28px;height:44px;padding:4px}
.foxy-home-carousel.fd-designed .fh-dots button::after{background:var(--fd-dot);width:var(--fd-dotsize);height:var(--fd-dotsize);opacity:.55}
.foxy-home-carousel.fd-designed .fh-dots button[aria-current=true]::after{background:var(--fd-dot);opacity:1}
.fh-open{position:relative}
.foxy-home-carousel .fh-slide.fd-home-custom{aspect-ratio:auto;position:relative;display:flex;flex-direction:column;background:var(--fd-field);border:var(--fd-border) solid var(--fd-bordercolor);box-shadow:var(--fd-shadow);box-sizing:border-box}
.fd-home-media{position:relative;aspect-ratio:var(--fh-ratio);width:100%}
.fd-home-media .fh-open{height:100%}
.fd-custom-slide .fd-overlay-top{top:var(--fw-caption-top,16px);left:16px;right:16px;width:auto}
.fd-custom-slide .fd-overlay-bottom{bottom:var(--fw-caption-bottom,16px);left:16px;right:16px;width:auto}
.fd-custom-slide .fd-label-layer{max-height:max(20px,calc((100% - var(--fw-caption-top,16px) - var(--fw-caption-bottom,16px) - 24px)/2))}
.fd-designed.fw-lightbox{font-family:inherit}
@media(max-width:600px){.fw-preview .fw-grid.fw-strict-grid{grid-template-columns:repeat(var(--fd-mobile,1),minmax(0,1fr))}.fd-label{font-size:var(--fd-font-mobile)}.fd-custom-slide .fd-overlay-top,.fd-custom-slide .fd-overlay-bottom{left:16px;right:16px}.fd-text-panel{inset:8px;padding:18px}}
@media(prefers-reduced-motion:reduce){.foxy-home-carousel .fh-track{transition-duration:0ms!important}}

.fw-preview.fd-designed{font-family:inherit}

.fw-preview .fw-grid.fw-strict-grid .fw-card .fw-image-button{aspect-ratio:var(--fw-own-ratio,.75)}
@media(min-width:601px){.fw-layout-row:not(.fw-layout-mixed) .fd-media{aspect-ratio:var(--fw-row-ratio)!important}}

.foxy-home-carousel.fd-designed{background:var(--fd-background)}
.foxy-home-carousel .fh-slide.fd-home-custom{border-radius:var(--fd-radius);overflow:hidden}

/* Fullscreen labels and edge shading share the fitted media coordinate system. */
.fd-custom-slide .fd-label{width:100%;min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.fd-custom-slide .fd-label-content{white-space:pre-wrap;overflow-wrap:anywhere}
.fd-full-shade{position:absolute;left:0;right:0;z-index:1;pointer-events:none}
.fd-full-shade[data-position=top]{top:0}
.fd-full-shade[data-position=bottom]{bottom:0}

/* Stage and count share a caption line; visibility remains independently configurable. */
.fd-custom-slide .fd-photo-meta{box-sizing:border-box;width:100%;line-height:1.35}
.fd-custom-slide .fd-photo-meta .fd-label{display:inline;width:auto;max-width:none}
.fd-custom-slide .fd-photo-meta .fd-label-counter{white-space:nowrap}
.fd-meta-separator{white-space:pre}
/* Apply arrow settings even before the first edit of a fullscreen component. */
.fw-lightbox[data-design-component] .fw-view-arrow{background:var(--fd-arrowbg,transparent)!important;color:var(--fd-arrow,#fff)!important;font-size:var(--fd-arrowsize,44px)!important}

/* Gallery captions: one metadata row and shading anchored to the media edge. */
.fd-custom-card .fd-media{flex-shrink:0}
:is(.fd-custom-card,.fd-video-stage) .fd-overlay-bottom{bottom:var(--fd-caption-reserve,0px)}
:is(.fd-custom-card,.fd-video-stage) .fd-overlay-top,:is(.fd-custom-card,.fd-video-stage) .fd-overlay-bottom{max-height:max(20px,calc((100% - var(--fd-caption-reserve,0px) - 16px)/2))}
.fd-custom-card .fd-photo-meta{box-sizing:border-box;width:100%;line-height:1.35}
.fd-custom-card .fd-photo-meta .fd-label{display:inline;width:auto;max-width:none;white-space:normal;overflow-wrap:anywhere}
.fd-custom-card .fd-photo-meta .fd-label-counter{white-space:nowrap}
:is(.fd-custom-card,.fd-video-stage) .fd-card-shade{position:absolute;left:0;right:0;z-index:1;pointer-events:none}
:is(.fd-custom-card,.fd-video-stage) .fd-card-shade[data-position=top]{top:0}
:is(.fd-custom-card,.fd-video-stage) .fd-card-shade[data-position=bottom]{bottom:0}
.fd-custom-card .fd-outside-bottom{display:flex;flex-direction:column;flex:1}
.fd-custom-card .fd-outside-bottom>:last-child{flex:1}
.fd-custom-card .fw-controls{z-index:3}
.fd-custom-card .fw-video-controls{z-index:3}

.fw-preview[data-caption-mode] .fw-card.fd-custom-card .fd-outside-bottom>.fw-dots{position:relative;inset:auto;flex:0 0 auto;min-height:44px}

.fd-custom-card .fd-outside-bottom>.fw-dots button{pointer-events:auto}
:is(.fd-custom-card,.fd-video-stage) .fd-overlay-top>.fd-label,:is(.fd-custom-card,.fd-video-stage) .fd-overlay-bottom>.fd-label,:is(.fd-custom-card,.fd-video-stage) .fd-overlay-top>.fd-photo-meta,:is(.fd-custom-card,.fd-video-stage) .fd-overlay-bottom>.fd-photo-meta{padding-left:max(var(--fd-side-reserve,0px),var(--fd-label-padding,16px))!important;padding-right:max(var(--fd-side-reserve,0px),var(--fd-label-padding,16px))!important}

/* 0.6.8: ordinary captions never become an independent scroll/focus surface. */
.fd-custom-card .fd-label-layer,.fd-custom-card .fd-label-layer:focus-within,.fd-custom-card .fd-label-layer.fd-scrollable,.fd-custom-slide .fd-label-layer{pointer-events:none;overflow:visible;outline:0;box-shadow:none}
:is(.fd-custom-card,.fd-video-stage) .fd-overlay-top,:is(.fd-custom-card,.fd-video-stage) .fd-overlay-bottom{max-height:none;overflow:visible}
.fd-fitted-text{display:block;overflow:hidden}
.fd-custom-card .fd-outside-top{display:flex;flex-direction:column;flex-shrink:0}
.fd-custom-card .fd-outside-top>:last-child{flex:1}
.fw-fixed-meta{position:absolute;z-index:5;left:16px;right:16px;bottom:var(--fw-meta-bottom,16px);pointer-events:none;overflow-wrap:anywhere}
.fw-fixed-meta .fd-photo-meta{line-height:1.35;width:100%}
.fw-fixed-meta .fd-label{display:inline;white-space:normal;overflow-wrap:anywhere}
.fw-fixed-meta .fd-label-counter{white-space:nowrap}
.fw-lightbox .fw-view-dots{background:transparent;border:0;box-shadow:none;border-radius:0}

.fd-label-counter .fd-label-content{white-space:nowrap}

/* No empty navigation shelf when dots are disabled, including the legacy renderer. */
.fw-preview[data-caption-mode=overlay][data-design-dots=false] .fw-overlay-multiple .fw-caption{padding-bottom:14px}
.fw-lightbox[data-design-component=gallery_full] .fd-overlay-bottom{bottom:16px}
.fw-preview .fw-card h3[hidden]{display:none!important}

/* Before/After titles share the configured Results inset, independently of navigation. */
.fw-preview .fw-card.fd-custom-card[data-section=before_after] .fd-overlay-top>.fd-label-title{padding-left:var(--fd-label-padding,16px)!important;padding-right:var(--fd-label-padding,16px)!important}

/* Adjacent upper captions share one vertical gap instead of adding both paddings. */
.fw-preview :is(.fd-custom-card,.fd-video-stage) .fd-overlay-top>.fd-label-title+.fd-label-description,
dialog.fw-lightbox[data-design-component=gallery_full] .fd-overlay-top>.fd-label-title+.fd-label-description{padding-top:0!important}
dialog.fw-lightbox[data-design-component=gallery_full] .fd-overlay-top>.fd-label-title+.fd-label-description{text-align:left!important}

dialog.fw-lightbox[data-design-component=gallery_full] .fw-video-scene .fd-overlay-bottom{bottom:var(--fw-video-caption-bottom,16px)}
/* The stage row reserves its real line height even on short landscape videos. */
dialog.fw-lightbox[data-design-component=gallery_full] .fw-video-scene .fd-overlay-bottom{max-height:none;overflow:visible}
