/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/


@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


}
/* OpenClaw Batarlis Fitness premium Flatsome system 2026-09-20 */
.bf-home-hero .banner-inner,
.bf-inner-hero .banner-inner { background-position: center 45%; }
.bf-home-hero h1 { font-size: clamp(2.7rem,5.4vw,5.3rem); line-height: .98; letter-spacing: -.045em; margin-bottom: 24px; }
.bf-inner-hero h1 { font-size: clamp(2.45rem,4.5vw,4.7rem); line-height: 1.02; letter-spacing: -.035em; }
.bf-home-hero .lead,
.bf-promise .lead,
.bf-future .lead,
.bf-vision .lead { font-size: 1.16rem; line-height: 1.75; max-width: 760px; }
.bf-eyebrow p,
.eyebrow { color: var(--primary-color); font-size: .78rem; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; }
.bf-section-heading h2,
.bf-promise h2,
.bf-products h2,
.bf-future h2,
.bf-final-cta h2,
.bf-values h2,
.bf-vision h2 { font-size: clamp(2rem,3.5vw,3.55rem); line-height: 1.08; letter-spacing: -.025em; }
.bf-card-row > .col > .col-inner { height: 100%; }
.bf-feature-card,
.bf-future-card,
.bf-value-card,
.bf-contact-form-card { height: 100%; border: 1px solid rgba(255,255,255,.12); border-radius: 18px; background: linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025)); box-shadow: 0 24px 60px rgba(0,0,0,.24); }
.bf-feature-card { padding: 32px 25px; }
.bf-feature-card .icon-box-img { color: var(--primary-color); }
.bf-future-card,
.bf-value-card { padding: 38px; transition: transform .25s ease,border-color .25s ease; }
.bf-future-card:hover,
.bf-value-card:hover { transform: translateY(-6px); border-color: var(--primary-color); }
.bf-card-number { color: var(--primary-color); font-size: 2.3rem; font-weight: 700; line-height: 1; margin-bottom: 26px; }
.bf-story-image img,
.bf-about-image img { border-radius: 22px; box-shadow: 0 28px 70px rgba(0,0,0,.42); aspect-ratio: 4/3; object-fit: cover; }
.bf-founder-visual,
.bf-founder-visual .banner-inner { border-radius: 22px; overflow: hidden; }
.bf-products .product-small.box { height: 100%; padding: 12px; border: 1px solid rgba(255,255,255,.1); border-radius: 16px; background: rgba(255,255,255,.035); transition: transform .25s ease,border-color .25s ease; }
.bf-products .product-small.box:hover { transform: translateY(-5px); border-color: var(--primary-color); }
.bf-products .box-image { border-radius: 12px; overflow: hidden; }
.bf-products .price { color: var(--primary-color); }
.bf-contact-item,
.bf-hours { margin-top: 22px; padding: 20px 22px; border-left: 3px solid var(--primary-color); background: rgba(255,255,255,.04); border-radius: 0 12px 12px 0; }
.bf-contact-item h4,
.bf-contact-item p,
.bf-hours h4,
.bf-hours p { margin-bottom: 5px; }
.bf-contact-form-card { padding: 42px; }
.bf-contact-form-card label { display: block; font-weight: 700; color: rgba(255,255,255,.88); margin-bottom: 18px; }
.bf-contact-form-card input:not([type="submit"]),
.bf-contact-form-card textarea,
.bf-contact-form-card select { margin-top: 8px; border: 1px solid rgba(255,255,255,.18); border-radius: 9px; background: rgba(255,255,255,.06); color: #fff; box-shadow: none; }
.bf-contact-form-card input:not([type="submit"]):focus,
.bf-contact-form-card textarea:focus { border-color: var(--primary-color); }
.bf-contact-form-card input[type="submit"] { border-radius: 99px; }
.bf-map-wrap { line-height: 0; }
.bf-map-wrap iframe { width: 100%; min-height: 480px; filter: grayscale(1) contrast(1.08); }
.bf-company-details p,
.bf-footer-bottom p { margin-bottom: 0; }
.bf-footer-main { border-top: 1px solid rgba(255,255,255,.12); }
.bf-footer-main h4 { color: var(--primary-color); margin-bottom: 20px; }
.bf-footer-main .ux-menu-link__link { min-height: 34px; color: rgba(255,255,255,.78); }
.bf-footer-main .ux-menu-link__link:hover { color: var(--primary-color); }
.bf-footer-partner { color: var(--primary-color); }
.bf-footer-bottom { border-top: 1px solid rgba(255,255,255,.08); }

/* Product category identity: Power in Meat */
body.term-meats .shop-page-title { position: relative; min-height: 330px; display: flex; align-items: center; background-image: linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.5)),url('/wp-content/uploads/2026/09/power-in-meat.jpeg'); background-size: cover; background-position: center 46%; }
body.term-meats .shop-page-title .page-title-inner { position: relative; z-index: 2; }
body.term-meats .shop-page-title .shop-page-title-is-xlarge { font-size: clamp(2.25rem,5vw,4.5rem); text-shadow: 0 5px 24px rgba(0,0,0,.6); }
body.term-meats .shop-page-title .woocommerce-breadcrumb,
body.term-meats .shop-page-title .woocommerce-result-count { color: rgba(255,255,255,.82); }
body.term-meats .shop-page-title::after { content: 'BATARLIS FITNESS × POWER IN MEAT'; position: absolute; left: max(15px,calc((100% - 1380px)/2 + 15px)); bottom: 36px; color: var(--primary-color); font-size: .76rem; font-weight: 700; letter-spacing: .18em; }

@media (prefers-reduced-motion: reduce) {
  .bf-future-card,.bf-value-card,.bf-products .product-small.box { transition: none; }
}
@media (max-width: 849px) {
  .bf-contact-form-card { padding: 32px; }
  body.term-meats .shop-page-title { min-height: 280px; }
}
@media (max-width: 549px) {
  .bf-home-hero h1 { font-size: 2.65rem; }
  .bf-inner-hero h1 { font-size: 2.4rem; }
  .bf-home-hero .lead { font-size: 1rem; }
  .bf-feature-card,.bf-future-card,.bf-value-card { padding: 28px 24px; }
  .bf-contact-form-card { padding: 26px 20px; }
  .bf-map-wrap iframe { min-height: 380px; }
  body.term-meats .shop-page-title { min-height: 255px; }
  body.term-meats .shop-page-title::after { left: 15px; right: 15px; bottom: 24px; font-size: .66rem; }
}

/* Batarlis banner artwork fit correction — 2026-09-20 */
.bf-home-hero .banner-bg,
.bf-inner-hero .banner-bg,
.bf-founder-visual .banner-bg {
  background-color: #030303;
  background-repeat: no-repeat !important;
  background-position: right center !important;
}
.bf-home-hero .overlay,
.bf-inner-hero .overlay {
  background: linear-gradient(90deg, rgba(0,0,0,.97) 0%, rgba(0,0,0,.82) 42%, rgba(0,0,0,.22) 72%, rgba(0,0,0,.08) 100%) !important;
}
.bf-founder-visual .banner-bg { background-position: center !important; }
body.term-meats .shop-page-title {
  background-color: #030303;
  background-size: auto 88%;
  background-repeat: no-repeat;
  background-position: right center;
}
@media (max-width: 549px) {
  .bf-home-hero .banner-bg,
  .bf-inner-hero .banner-bg { background-position: center top !important; }
  .bf-home-hero .overlay,
  .bf-inner-hero .overlay { background: linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.62) 48%, rgba(0,0,0,.98) 78%) !important; }
  body.term-meats .shop-page-title { background-size: 100% auto; background-position: center top; }
}


/* Exact image element fit: Flatsome defaults .bg-fill img to cover. */
.bf-home-hero .banner-bg > img,
.bf-inner-hero .banner-bg > img,
.bf-founder-visual .banner-bg > img {
  object-fit: contain !important;
  object-position: right center !important;
}
.bf-founder-visual .banner-bg > img { object-position: center !important; }
body.term-meats .shop-page-title {
  background-size: 100% 100%, auto 88%;
  background-position: center, right center;
}
@media (max-width: 549px) {
  .bf-home-hero .banner-bg > img,
  .bf-inner-hero .banner-bg > img { object-position: center top !important; }
  body.term-meats .shop-page-title {
    background-size: 100% 100%, 100% auto;
    background-position: center, center top;
  }
}


/* Category mobile artwork must remain fully visible. */
@media (max-width: 549px) {
  body.term-meats .shop-page-title {
    background-size: 100% 100%, auto 90%;
    background-position: center, right center;
  }
}


/* AI wide hero artwork — owner approved 2026-09-20 */
.bf-home-hero .banner-bg > img,
.bf-inner-hero .banner-bg > img {
  object-fit: cover !important;
  object-position: center center !important;
}
body.term-meats .shop-page-title {
  background-image: linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.36)),url('/wp-content/uploads/2026/09/batarlis-ai-hero-04.jpg') !important;
  background-size: cover, cover !important;
  background-position: center, center !important;
}


/* Center constrained lead copy within native centered columns — 2026-09-20 */
.bf-promise .lead,
.bf-vision .lead {
  margin-left: auto;
  margin-right: auto;
}


/* Keep imported WooCommerce descriptions readable on the dark product template — 2026-09-20 */
.single-product .product-short-description,
.single-product .woocommerce-Tabs-panel {
  color: #f1f1f1;
}
.single-product .product-short-description [style*="color"],
.single-product .woocommerce-Tabs-panel [style*="color"] {
  color: inherit !important;
}
.single-product .product-short-description p,
.single-product .product-short-description span {
  font-family: inherit !important;
  font-size: 1rem !important;
  line-height: 1.65;
}
.single-product .woocommerce-Tabs-panel a {
  color: #d4af63;
}


/* Batarlis assurance strip — 2026-09-20 */
.bf-trust-strip { background:#0b0b0b; border-top:1px solid rgba(212,175,99,.24); border-bottom:1px solid rgba(212,175,99,.24); }
.bf-trust-strip .section-content > .row { max-width:100% !important; }
.bf-trust-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); max-width:1320px; margin:0 auto; }
.bf-trust-item { min-height:112px; display:flex; align-items:center; justify-content:center; gap:15px; padding:22px 18px; border-right:1px solid rgba(255,255,255,.10); color:#f5f0e7; }
.bf-trust-item:first-child { border-left:1px solid rgba(255,255,255,.10); }
.bf-trust-item i { flex:0 0 38px; width:38px; height:38px; display:grid; place-items:center; color:#d4af63; font-size:29px; }
.bf-trust-item span { display:flex; flex-direction:column; min-width:0; }
.bf-trust-item strong { color:#fff; font-size:.88rem; line-height:1.25; letter-spacing:.02em; }
.bf-trust-item small { color:#aaa59c; font-size:.72rem; line-height:1.35; margin-top:4px; }
@media (max-width:849px) { .bf-trust-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .bf-trust-item { border:1px solid rgba(255,255,255,.08); min-height:100px; } .bf-trust-item:last-child { grid-column:1/-1; } }
@media (max-width:549px) { .bf-trust-grid { grid-template-columns:1fr; } .bf-trust-item,.bf-trust-item:last-child { grid-column:auto; justify-content:flex-start; min-height:82px; padding:17px 24px; } }


/* Remove persistent cinematic B/cloud artwork behind the homepage category grid — 2026-10-03 */
.home .bf-home-category-grid,
.home .bf-home-category-grid .section-bg,
.home .bf-home-category-grid .bg,
.home .bf-home-category-grid .bg-fill,
.home .bf-home-category-grid .section-bg-overlay,
.home .bf-home-category-grid::before,
.home .bf-home-category-grid::after {
  background-image: none !important;
  background: #000 !important;
}
.home .bf-home-category-grid .section-bg img,
.home .bf-home-category-grid .bg img,
.home .bf-home-category-grid .bg-fill img {
  display: none !important;
}

/* Hard stop: no decorative/video-like background layers inside homepage category grid — 2026-10-03 */
.home .bf-home-category-grid,
.home .bf-home-category-grid *:not(img),
.home .bf-home-category-grid *::before,
.home .bf-home-category-grid *::after {
  background-image: none !important;
}
.home .bf-home-category-grid {
  background-color: #000 !important;
}

/* Remove homepage-wide cinematic B/cloud layer after the intro; keep only tile images — 2026-10-03 */
body.home,
body.home #wrapper,
body.home #main,
body.home .page-wrapper,
body.home .page-inner,
body.home .content-area,
body.home .site-main,
body.home .entry-content,
body.home .page-content {
  background: #000 !important;
  background-image: none !important;
}
body.home #wrapper::before,
body.home #wrapper::after,
body.home #main::before,
body.home #main::after,
body.home .page-wrapper::before,
body.home .page-wrapper::after,
body.home .entry-content::before,
body.home .entry-content::after {
  content: none !important;
  display: none !important;
  background-image: none !important;
}

/* Hide the transparent Batarlis B/cloud artwork that lingered behind homepage categories — 2026-10-03 */
body.home img[src*="batartlis-transp.png"] {
  display: none !important;
}

/* Home must not keep the CS4U transition logo/curtain behind the loaded page — 2026-10-03 */
body.home .cs4uct-curtain,
body.home .cs4uct-curtain *,
body.home [class*="cs4uct"],
body.home img[src*="batartlis-transp.png"] {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Homepage category tiles must be fully opaque so no transition artwork/video frame shows through — 2026-10-03 */
body.home .bf-home-category-grid .box-image,
body.home .bf-home-category-grid .image-cover,
body.home .bf-home-category-grid .box-image a,
body.home .bf-home-category-grid .box-image div {
  background: #000 !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  filter: none !important;
}
body.home .bf-home-category-grid .box-image img,
body.home .bf-home-category-grid img {
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  filter: none !important;
}

/* Oscar homepage category video reveal — 2026-10-04. Other pages and transition artwork remain unchanged. */
body.home #wrapper,
body.home #main,
body.home .page-wrapper,
body.home .page-inner,
body.home .content-area,
body.home .site-main,
body.home .entry-content,
body.home .page-content,
body.home .bf-home-category-grid,
body.home .bf-home-category-grid .section-bg,
body.home .bf-home-category-grid .bg,
body.home .bf-home-category-grid .bg-fill,
body.home .bf-home-category-grid .section-bg-overlay,
body.home .bf-home-category-grid::before,
body.home .bf-home-category-grid::after {
  background: transparent !important;
}
body.home .bf-home-category-grid .box-image,
body.home .bf-home-category-grid .image-cover,
body.home .bf-home-category-grid .box-image a,
body.home .bf-home-category-grid .box-image div {
  background: rgba(0, 0, 0, .45) !important;
}
