/*!
 * Themeasy — Image Accordion Widget Styles
 *
 * Horizontal (or vertical) accordion of image panels. Each panel expands on
 * click or hover, revealing overlay content (icon, title, description, CTA).
 *
 * Skins:
 *   - classic         — overlay bar + gradient reveal
 *   - bordered        — minimal framing with borders, no gradient
 *   - stacked-labels  — rotated vertical label on collapsed state, horizontal on active
 *
 * Public tokens (--tms-*) are consumed — never private (--themeasy-*).
 *
 * @author Themeasy
 * @link https://themeasy.co
 * @since 1.0.0
 */
.tms-image-accordion{--tms-image-accordion-duration:.6s;--tms-image-accordion-timing:cubic-bezier(.25, .46, .45, .94);--tms-image-accordion-active-flex:4;--tms-image-accordion-collapsed-flex:1;--tms-image-accordion-height:480px;--tms-image-accordion-gap:6px;--tms-image-accordion-overlay-gradient-stop:#000000bf;width:100%;min-height:var(--tms-image-accordion-height);gap:var(--tms-image-accordion-gap);flex-direction:row;display:flex;position:relative}.tms-image-accordion .tms-image-accordion__item{flex:var(--tms-image-accordion-collapsed-flex) 1 0%;background-color:var(--tms-surface-color,#101010);min-width:0;min-height:0;transition:flex-grow var(--tms-image-accordion-duration) var(--tms-image-accordion-timing), box-shadow var(--tms-image-accordion-duration) var(--tms-image-accordion-timing);position:relative}.tms-image-accordion .tms-image-accordion__item--active{flex-grow:var(--tms-image-accordion-active-flex)}.tms-image-accordion .tms-image-accordion__trigger{z-index:1;width:100%;height:100%;color:inherit;font:inherit;cursor:pointer;text-align:inherit;border-radius:inherit;background:0 0;border:0;margin:0;padding:0;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.tms-image-accordion .tms-image-accordion__media{border-radius:inherit;width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.tms-image-accordion .tms-image-accordion__img{object-fit:cover;object-position:center center;width:100%;height:100%;transition:transform var(--tms-image-accordion-duration) var(--tms-image-accordion-timing);display:block;transform:scale(1)}.tms-image-accordion .tms-image-accordion__item--active .tms-image-accordion__img{transform:scale(1.05)}.tms-image-accordion .tms-image-accordion__overlay{pointer-events:none;transition:background-color var(--tms-image-accordion-duration) var(--tms-image-accordion-timing), opacity var(--tms-image-accordion-duration) var(--tms-image-accordion-timing);background-color:#00000059;position:absolute;top:0;bottom:0;left:0;right:0}.tms-image-accordion .tms-image-accordion__content{z-index:2;color:#fff;pointer-events:none;transition:opacity var(--tms-image-accordion-duration) var(--tms-image-accordion-timing), transform var(--tms-image-accordion-duration) var(--tms-image-accordion-timing);flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:.625rem;padding:1.5rem;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.tms-image-accordion .tms-image-accordion__content>*{pointer-events:auto;max-width:100%}.tms-image-accordion .tms-image-accordion__icon-wrap{justify-content:center;align-items:center;display:inline-flex}.tms-image-accordion .tms-image-accordion__icon{color:#fff;justify-content:center;align-items:center;width:1em;height:1em;font-size:2rem;line-height:1;display:inline-flex}.tms-image-accordion .tms-image-accordion__icon svg{fill:currentColor;width:1em;height:1em;display:block}.tms-image-accordion .tms-image-accordion__icon svg[fill=none]{fill:none;stroke:currentColor}.tms-image-accordion .tms-image-accordion__icon:before{font-size:inherit;line-height:1}.tms-image-accordion .tms-image-accordion__title{color:#fff;white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin:0;line-height:1.2;overflow:hidden}.tms-image-accordion .tms-image-accordion__description{color:#ffffffd9;margin:0;line-height:1.5}.tms-image-accordion .tms-image-accordion__button{z-index:3;border-radius:var(--tms-radius-sm,.25rem);background-color:var(--tms-primary-color);color:#fff;cursor:pointer;pointer-events:auto;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1rem;line-height:1.2;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s;display:inline-flex;position:relative}.tms-image-accordion .tms-image-accordion__button--simple{color:#fff;background:0 0;border:0;padding:0}.tms-image-accordion .tms-image-accordion__button--outline{color:#fff;background:0 0;border-color:#fff}.tms-image-accordion .tms-image-accordion__button--muted-fill{color:#fff;background-color:#ffffff26}.tms-image-accordion .tms-image-accordion__button--icon-left{flex-direction:row-reverse}.tms-image-accordion .tms-image-accordion__button-icon{justify-content:center;align-items:center;width:1em;height:1em;line-height:1;display:inline-flex}.tms-image-accordion .tms-image-accordion__button-icon svg{fill:currentColor;width:1em;height:1em;display:block}.tms-image-accordion .tms-image-accordion__button-icon svg[fill=none]{fill:none;stroke:currentColor}.tms-image-accordion .tms-image-accordion__button:hover{filter:brightness(1.05)}.tms-image-accordion .tms-image-accordion__button:focus-visible{filter:brightness(1.05)}.elementor-widget.tms-image-accordion-orientation-vertical .tms-image-accordion{flex-direction:column}@media (max-width:1024px){.elementor-widget.tms-image-accordion-orientation-tablet-vertical .tms-image-accordion{flex-direction:column}.elementor-widget.tms-image-accordion-orientation-tablet-horizontal .tms-image-accordion{flex-direction:row}}@media (max-width:767px){.elementor-widget.tms-image-accordion-orientation-mobile-vertical .tms-image-accordion{flex-direction:column}.elementor-widget.tms-image-accordion-orientation-mobile-horizontal .tms-image-accordion{flex-direction:row}}@media (hover:hover){.tms-image-accordion.tms-image-accordion--trigger-hover .tms-image-accordion__item:hover{flex-grow:var(--tms-image-accordion-active-flex)}.tms-image-accordion.tms-image-accordion--trigger-hover:has(.tms-image-accordion__item:hover) .tms-image-accordion__item:not(:hover){flex-grow:var(--tms-image-accordion-collapsed-flex)}}.tms-image-accordion.tms-image-accordion--skin-classic .tms-image-accordion__overlay{background-image:linear-gradient(to bottom, transparent 40%, var(--tms-image-accordion-overlay-gradient-stop) 100%)}.tms-image-accordion.tms-image-accordion--skin-classic .tms-image-accordion__content{opacity:1}.tms-image-accordion.tms-image-accordion--skin-classic .tms-image-accordion__item .tms-image-accordion__description,.tms-image-accordion.tms-image-accordion--skin-classic .tms-image-accordion__item .tms-image-accordion__button{opacity:0;visibility:hidden;transition:opacity calc(var(--tms-image-accordion-duration) * .35) var(--tms-image-accordion-timing) 0s, visibility 0s linear calc(var(--tms-image-accordion-duration) * .35), transform calc(var(--tms-image-accordion-duration) * .35) var(--tms-image-accordion-timing) 0s;pointer-events:none;transform:translateY(8px)}.tms-image-accordion.tms-image-accordion--skin-classic .tms-image-accordion__item--active .tms-image-accordion__description,.tms-image-accordion.tms-image-accordion--skin-classic .tms-image-accordion__item--active .tms-image-accordion__button{opacity:1;visibility:visible;transition:opacity calc(var(--tms-image-accordion-duration) * .4) var(--tms-image-accordion-timing) calc(var(--tms-image-accordion-duration) * .55), visibility 0s linear calc(var(--tms-image-accordion-duration) * .55), transform calc(var(--tms-image-accordion-duration) * .4) var(--tms-image-accordion-timing) calc(var(--tms-image-accordion-duration) * .55);pointer-events:auto;transform:translateY(0)}.tms-image-accordion.tms-image-accordion--skin-bordered{background-color:var(--tms-border-color,#e5e5e5);padding:2px}.tms-image-accordion.tms-image-accordion--skin-bordered .tms-image-accordion__item{border-radius:0}.tms-image-accordion.tms-image-accordion--skin-bordered .tms-image-accordion__overlay{background-image:none}.tms-image-accordion.tms-image-accordion--skin-bordered .tms-image-accordion__content{text-align:center;justify-content:center;align-items:center}.tms-image-accordion.tms-image-accordion--skin-bordered .tms-image-accordion__item .tms-image-accordion__content>*{opacity:0;visibility:hidden;transition:opacity calc(var(--tms-image-accordion-duration) * .35) var(--tms-image-accordion-timing) 0s, visibility 0s linear calc(var(--tms-image-accordion-duration) * .35), transform calc(var(--tms-image-accordion-duration) * .35) var(--tms-image-accordion-timing) 0s;pointer-events:none;transform:translateY(10px)}.tms-image-accordion.tms-image-accordion--skin-bordered .tms-image-accordion__item--active .tms-image-accordion__content>*{opacity:1;visibility:visible;transition:opacity calc(var(--tms-image-accordion-duration) * .4) var(--tms-image-accordion-timing) calc(var(--tms-image-accordion-duration) * .55), visibility 0s linear calc(var(--tms-image-accordion-duration) * .55), transform calc(var(--tms-image-accordion-duration) * .4) var(--tms-image-accordion-timing) calc(var(--tms-image-accordion-duration) * .55);pointer-events:auto;transform:translateY(0)}.tms-image-accordion.tms-image-accordion--skin-stacked-labels .tms-image-accordion__content{justify-content:flex-end;align-items:flex-start}.tms-image-accordion.tms-image-accordion--skin-stacked-labels .tms-image-accordion__item:not(.tms-image-accordion__item--active) .tms-image-accordion__content{justify-content:center;align-items:center}.tms-image-accordion.tms-image-accordion--skin-stacked-labels .tms-image-accordion__item:not(.tms-image-accordion__item--active) .tms-image-accordion__title{writing-mode:vertical-rl;white-space:nowrap;transition:transform var(--tms-image-accordion-duration) var(--tms-image-accordion-timing);transform:rotate(180deg)}.tms-image-accordion.tms-image-accordion--skin-stacked-labels .tms-image-accordion__item:not(.tms-image-accordion__item--active) .tms-image-accordion__icon-wrap,.tms-image-accordion.tms-image-accordion--skin-stacked-labels .tms-image-accordion__item:not(.tms-image-accordion__item--active) .tms-image-accordion__description,.tms-image-accordion.tms-image-accordion--skin-stacked-labels .tms-image-accordion__item:not(.tms-image-accordion__item--active) .tms-image-accordion__button{display:none}.tms-image-accordion.tms-image-accordion--skin-stacked-labels .tms-image-accordion__item--active .tms-image-accordion__title{writing-mode:horizontal-tb;white-space:normal;transform:rotate(0)}.elementor-widget.tms-image-accordion-orientation-vertical .tms-image-accordion.tms-image-accordion--skin-stacked-labels .tms-image-accordion__item:not(.tms-image-accordion__item--active) .tms-image-accordion__title{writing-mode:horizontal-tb;letter-spacing:.08em;text-transform:uppercase;transform:none}@media (max-width:1024px){.elementor-widget.tms-image-accordion-orientation-tablet-vertical .tms-image-accordion.tms-image-accordion--skin-stacked-labels .tms-image-accordion__item:not(.tms-image-accordion__item--active) .tms-image-accordion__title{writing-mode:horizontal-tb;letter-spacing:.08em;text-transform:uppercase;transform:none}}@media (max-width:767px){.elementor-widget.tms-image-accordion-orientation-mobile-vertical .tms-image-accordion.tms-image-accordion--skin-stacked-labels .tms-image-accordion__item:not(.tms-image-accordion__item--active) .tms-image-accordion__title{writing-mode:horizontal-tb;letter-spacing:.08em;text-transform:uppercase;transform:none}}@media (max-width:480px){.tms-image-accordion{flex-direction:column;min-height:auto}.tms-image-accordion .tms-image-accordion__item{min-height:calc(var(--tms-image-accordion-height) * .45)}}.tms-image-accordion .tms-image-accordion__trigger:focus-visible{outline:2px solid var(--tms-primary-color);outline-offset:-4px;border-radius:inherit}@media (prefers-reduced-motion:reduce){.tms-image-accordion,.tms-image-accordion .tms-image-accordion__item,.tms-image-accordion .tms-image-accordion__img,.tms-image-accordion .tms-image-accordion__overlay,.tms-image-accordion .tms-image-accordion__content,.tms-image-accordion .tms-image-accordion__title,.tms-image-accordion .tms-image-accordion__description,.tms-image-accordion .tms-image-accordion__button{transition-duration:.01ms!important;transform:none!important}}