/* Flexi Flick base styles, including Nectar like columns, spacing, and dots */

.flexiflick-shortcode { position: relative; }
.flexiflick-shortcode .flexiflick-carousel { width: 100%; }

/* Default cell width, JS will override with precise calc for gutters */
.flexiflick-shortcode .tb-cell,
.flexiflick-shortcode .flexiflick-cell { width: 25%; }

/* Inner blocks that match the Transbuild feel */
.flexiflick-shortcode .inner-wrap-outer { height: 100%; }
.flexiflick-shortcode .inner-wrap { height: 100%; display: flex; flex-direction: column; gap: 8px; }
.flexiflick-shortcode .tb-step span { color:#6cb83a; font-weight:600; letter-spacing:.02em; }
.flexiflick-shortcode .tb-fancy.aspect-4-5 { position: relative; width: 100%; }
.flexiflick-shortcode .tb-fancy.aspect-4-5::before { content:""; display:block; padding-top: 125%; } /* 4:5 */
.flexiflick-shortcode .tb-fancy .image-wrap { position:absolute; inset:0; overflow:hidden; border-radius:8px; }
.flexiflick-shortcode .tb-fancy .box-bg { position:absolute; inset:0; background-size:cover; background-position:center; }
.flexiflick-shortcode .tb-fancy .text { margin-top:10px; }
.flexiflick-shortcode .tb-fancy .text h6 { margin: 0 0 6px; }

/* Dots, keep similar to Nectar material style */
.flexiflick-shortcode .flickity-page-dots { position: static; display:flex; gap:10px; margin-top:18px; justify-content:center; }
.flexiflick-shortcode .flickity-page-dots .dot { width:10px; height:10px; opacity:.35; background:#333; }
.flexiflick-shortcode .flickity-page-dots .dot.is-selected { opacity:1; }

/* Progress bar */
.flexiflick-progress-wrap { position: relative; height: 3px; background: rgba(0,0,0,.08); margin-top: 8px; overflow: hidden; }
.flexiflick-progress { position:absolute; left:0; top:0; height:100%; width:0%; background:#6cb83a; transition: width .25s linear; }
