/* Minimal structural CSS only. Full styling remains in your external CSS tool. */

/* Force visibility */
body.tab-featured-iframe #tab-featured-root .tabf-hero{display:block!important;}
body.tab-featured-iframe #tab-featured-root .tabf-blocks{display:block!important;visibility:visible!important;opacity:1!important;}
body.tab-featured-iframe #tab-featured-root .tabf-tiles{display:block!important;}
body.tab-featured-iframe #tab-featured-root .tabf-wides{display:flex!important;}
body.tab-featured-iframe #tab-featured-root .tabf-slot{display:block!important;position:relative!important;min-width:0!important;}

/* Defensive: keep tile children in normal flow */
body.tab-featured-iframe #tab-featured-root .tabf-tiles-grid{display:grid!important;position:relative!important;width:100%!important;height:auto!important;min-height:0!important;grid-auto-flow:row!important;align-items:start!important;overflow:visible!important;}
body.tab-featured-iframe #tab-featured-root .tabf-tiles-grid>*{position:relative!important;inset:auto!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;width:auto!important;height:auto!important;max-width:100%!important;max-height:none!important;transform:none!important;float:none!important;clear:none!important;}

/* IMPORTANT:
   Do NOT override Swiper transforms/slide widths when initialized.
   Only protect the NOT-initialized fallback state from legacy/global swiper CSS. */
body.tab-featured-iframe #tab-featured-root .tabf-swiper{width:100%;min-width:0;position:relative;}
body.tab-featured-iframe #tab-featured-root .tabf-swiper.swiper-initialized{overflow:hidden;} /* normal Swiper behaviour */
body.tab-featured-iframe #tab-featured-root .tabf-swiper:not(.swiper-initialized){overflow:visible;}

/* Neutralise legacy swiper "full screen" rules ONLY before init */
body.tab-featured-iframe #tab-featured-root .tabf-swiper:not(.swiper-initialized),
body.tab-featured-iframe #tab-featured-root .tabf-swiper:not(.swiper-initialized) .swiper-wrapper,
body.tab-featured-iframe #tab-featured-root .tabf-swiper:not(.swiper-initialized) .swiper-slide{
  position:relative!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
}
body.tab-featured-iframe #tab-featured-root .tabf-swiper:not(.swiper-initialized) .swiper-wrapper{transform:none!important;}
body.tab-featured-iframe #tab-featured-root .tabf-swiper:not(.swiper-initialized) .swiper-slide{min-width:0!important;}

/* Hero media */
body.tab-featured-iframe #tab-featured-root .tabf-hero{width:100%;}
body.tab-featured-iframe #tab-featured-root .tabf-slide picture,
body.tab-featured-iframe #tab-featured-root .tabf-slide img{width:100%;height:auto;display:block;}

/* Blocks */
body.tab-featured-iframe #tab-featured-root .tabf-blocks{width:100%;margin-top:16px;padding:20px;}
body.tab-featured-iframe #tab-featured-root .tabf-tiles-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
body.tab-featured-iframe #tab-featured-root .tabf-wides{margin-top:16px;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start;}
@media (max-width: 860px){
  body.tab-featured-iframe #tab-featured-root .tabf-tiles-grid{grid-template-columns:1fr!important;}
  body.tab-featured-iframe #tab-featured-root .tabf-wides{grid-template-columns:1fr!important;}
}
body.tab-featured-iframe #tab-featured-root .tabf-card{position:relative;}
body.tab-featured-iframe #tab-featured-root .tabf-card picture,
body.tab-featured-iframe #tab-featured-root .tabf-card img{width:100%;height:auto;display:block;border-radius:8px;}

/* Fallback: show first slide if Swiper isn’t initialized */
body.tab-featured-iframe #tab-featured-root .tabf-swiper:not(.swiper-initialized) .swiper-slide{display:none;}
body.tab-featured-iframe #tab-featured-root .tabf-swiper:not(.swiper-initialized) .swiper-slide:first-child{display:block;}

/* Stack tiles on mobile */
@media (max-width: 860px){
  body.tab-featured-iframe #tab-featured-root .tabf-tiles-grid{grid-template-columns:1fr!important;}
}

/* Hero nav arrows (custom; NOT Swiper classes) */
.tabf-hero .tabf-hero-nav,
body.tab-featured-iframe #tab-featured-root .tabf-hero .tabf-hero-nav{
  position:absolute;top:50%;transform:translateY(-50%);
  width:30px;height:30px;background-color:rgba(204,204,204,.5);
  border-radius:50%;display:flex;align-items:center;justify-content:center;
  cursor:pointer;z-index:10;
}
.tabf-hero .tabf-hero-nav--prev,
body.tab-featured-iframe #tab-featured-root .tabf-hero .tabf-hero-nav--prev{left:15px;}
.tabf-hero .tabf-hero-nav--next,
body.tab-featured-iframe #tab-featured-root .tabf-hero .tabf-hero-nav--next{right:15px;}

.tabf-hero .tabf-hero-nav::after,
body.tab-featured-iframe #tab-featured-root .tabf-hero .tabf-hero-nav::after{
  content:"";display:block;width:18px;height:12px;pointer-events:none;
  background-repeat:no-repeat;background-position:center;background-size:contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 18' fill='none'%3E%3Cpath d='M3 3l10.8 10L24 3' stroke='%23FFF' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E");
}
.tabf-hero .tabf-hero-nav--prev::after,
body.tab-featured-iframe #tab-featured-root .tabf-hero .tabf-hero-nav--prev::after{transform:rotate(90deg);}
.tabf-hero .tabf-hero-nav--next::after,
body.tab-featured-iframe #tab-featured-root .tabf-hero .tabf-hero-nav--next::after{transform:rotate(-90deg);}

/* Swiper will still apply this disabled class by default */
.tabf-hero .tabf-hero-nav.swiper-button-disabled,
body.tab-featured-iframe #tab-featured-root .tabf-hero .tabf-hero-nav.swiper-button-disabled{opacity:.35;cursor:default;}

/* Pagination bullets */
body.tab-featured-iframe #tab-featured-root .swiper-pagination{display:flex;align-items:center;justify-content:center;gap:10px;}
body.tab-featured-iframe #tab-featured-root .swiper-pagination-bullet{width:15px;height:15px;background-color:#ccc;border-radius:50%;cursor:pointer;opacity:.6;transition:background-color .3s ease,opacity .3s ease;margin:0!important;}
body.tab-featured-iframe #tab-featured-root .swiper-pagination-bullet-active{background-color:#e8004d;opacity:1;}