
/* =========================================================
   v5.7 SAFE INNER PAGES
   No template override. No homepage Elementor writes.
   ========================================================= */

body.ep57-inner-page{
  --ep57-red:#c8102e;
  --ep57-text:#151515;
  --ep57-muted:#757575;
  --ep57-line:#e9e9e9;
}

/* Our global header/footer */
body.ep57-inner-page .ep57-global-header{
  position:relative;
  z-index:999;
  background:#fff;
}
body.ep57-inner-page .ep57-global-footer{
  position:relative;
  z-index:20;
  background:#0c0d0f;
  margin-top:36px;
}

/* Hide only known Foxiz outer site header/footer containers.
   Content/sidebar/ad hooks remain untouched. */
body.ep57-inner-page > #site-header,
body.ep57-inner-page > .site-header,
body.ep57-inner-page .header-wrap:not(.ep57-global-header *),
body.ep57-inner-page > #site-footer,
body.ep57-inner-page > .site-footer,
body.ep57-inner-page .footer-wrap:not(.ep57-global-footer *){
  display:none !important;
}

/* Editorial typography, scoped strictly to posts */
body.ep57-inner-page.single-post .entry-title,
body.ep57-inner-page.single-post .single-title,
body.ep57-inner-page.single-post h1.entry-title{
  font-family:"Inter",Arial,sans-serif !important;
  font-size:clamp(34px,4vw,52px) !important;
  line-height:1.05 !important;
  letter-spacing:-.035em !important;
  font-weight:900 !important;
  color:var(--ep57-text) !important;
  max-width:1050px;
}

body.ep57-inner-page.single-post .entry-content,
body.ep57-inner-page.single-post .single-content{
  font-size:18px !important;
  line-height:1.75 !important;
  color:#242424 !important;
}
body.ep57-inner-page.single-post .entry-content p,
body.ep57-inner-page.single-post .single-content p{
  margin-bottom:1.35em !important;
}
body.ep57-inner-page.single-post .entry-content h2,
body.ep57-inner-page.single-post .entry-content h3,
body.ep57-inner-page.single-post .single-content h2,
body.ep57-inner-page.single-post .single-content h3{
  font-family:"Inter",Arial,sans-serif !important;
  font-weight:800 !important;
  letter-spacing:-.02em !important;
  line-height:1.16 !important;
}
body.ep57-inner-page.single-post .entry-content blockquote,
body.ep57-inner-page.single-post .single-content blockquote{
  border-left:4px solid var(--ep57-red) !important;
  background:#fafafa !important;
  padding:18px 22px !important;
  margin:26px 0 !important;
}

/* Featured media: modern, consistent crop */
body.ep57-inner-page.single-post .single-featured img,
body.ep57-inner-page.single-post .featured-image img,
body.ep57-inner-page.single-post .entry-featured img,
body.ep57-inner-page.single-post .single-header img{
  width:100% !important;
  object-fit:cover !important;
}

/* Breadcrumb/meta */
body.ep57-inner-page.single-post .breadcrumb,
body.ep57-inner-page.single-post .breadcrumbs,
body.ep57-inner-page.category .breadcrumb,
body.ep57-inner-page.category .breadcrumbs{
  font-size:11px !important;
  color:#888 !important;
}
body.ep57-inner-page.single-post .entry-meta,
body.ep57-inner-page.single-post .single-meta{
  font-size:12px !important;
  color:var(--ep57-muted) !important;
}

/* Category/archive title */
body.ep57-inner-page.category .archive-title,
body.ep57-inner-page.category .category-title,
body.ep57-inner-page.category h1.page-title{
  font-family:"Inter",Arial,sans-serif !important;
  font-size:clamp(30px,3.4vw,44px) !important;
  font-weight:900 !important;
  letter-spacing:-.03em !important;
  text-transform:uppercase;
  position:relative;
  padding-left:14px;
}
body.ep57-inner-page.category .archive-title:before,
body.ep57-inner-page.category .category-title:before,
body.ep57-inner-page.category h1.page-title:before{
  content:"";
  position:absolute;
  left:0;
  top:4px;
  width:5px;
  height:calc(100% - 8px);
  background:var(--ep57-red);
}

/* Common Foxiz/Ruby cards: equal images + cleaner hierarchy */
body.ep57-inner-page.category .p-wrap img,
body.ep57-inner-page.category .p-featured img,
body.ep57-inner-page.search .p-wrap img,
body.ep57-inner-page.search .p-featured img{
  width:100% !important;
  object-fit:cover !important;
}
body.ep57-inner-page.category .entry-title,
body.ep57-inner-page.category .p-title,
body.ep57-inner-page.search .entry-title,
body.ep57-inner-page.search .p-title{
  font-family:"Inter",Arial,sans-serif !important;
  font-weight:800 !important;
  letter-spacing:-.018em !important;
  line-height:1.18 !important;
}

/* Do NOT alter ad / sponsor / premium banner display */
body.ep57-inner-page .adsbygoogle,
body.ep57-inner-page [class*="ad-"],
body.ep57-inner-page [class*="advert"],
body.ep57-inner-page .ep3-ad-column,
body.ep57-inner-page .ep5-premium-banner,
body.ep57-inner-page .ep5-sponsor-grid{
  visibility:visible !important;
}

/* Mobile article improvements */
@media(max-width:767px){
  body.ep57-inner-page.single-post .entry-title,
  body.ep57-inner-page.single-post .single-title,
  body.ep57-inner-page.single-post h1.entry-title{
    font-size:32px !important;
    line-height:1.08 !important;
  }

  body.ep57-inner-page.single-post .entry-content,
  body.ep57-inner-page.single-post .single-content{
    font-size:17px !important;
    line-height:1.7 !important;
  }

  body.ep57-inner-page .ep57-global-footer{
    margin-top:24px;
  }
}


/* =========================================================
   v5.9 TRUE GLOBAL HEADER / FOOTER SYNC
   Header/footer HTML is rendered directly from the ACTIVE front page.
   Do not restyle it here: ep3.css remains the single visual source.
   ========================================================= */
body.ep57-inner-page .ep59-exact-sync .ep3-header,
body.ep57-inner-page .ep59-exact-sync .ep3-footer{
  display:block !important;
}

/* Keep the original homepage widths and spacing intact on inner pages. */
body.ep57-inner-page .ep59-exact-sync .ep3-wrap{
  box-sizing:border-box;
}


/* v6.0 exact Elementor source sync */
body.ep57-inner-page .ep59-exact-sync{
  width:100%;
}
body.ep57-inner-page .ep59-exact-sync > .ep3-wrap{
  max-width:none !important;
  width:100% !important;
}


/* v6.1: synced header/footer visual settings come from homepage Elementor CSS */
body.ep57-inner-page .ep59-exact-sync .elementor-element{
  box-sizing:border-box;
}


/* =========================================================
   v6.2 EXACT ELEMENTOR WRAPPER SYNC
   Keep the copied .elementor-element-XXXX wrapper untouched so
   the homepage post-specific Elementor CSS matches exactly.
   ========================================================= */
body.ep57-inner-page .ep59-exact-sync > .elementor-element{
  width:100% !important;
  max-width:none !important;
}
body.ep57-inner-page .ep59-exact-sync .elementor-widget-container{
  width:100%;
}


/* v6.4
   Header colors are injected from the live Elementor widget settings.
   Do not establish a fallback brand background here. */
body.ep57-inner-page .ep57-global-header .ep3-brandrow{
  transition:background-color .15s ease;
}


/* v6.5 SAFETY: never hide article/content wrappers */
body.ep57-inner-page main,
body.ep57-inner-page article,
body.ep57-inner-page .entry-content,
body.ep57-inner-page .single-content,
body.ep57-inner-page .content-inner,
body.ep57-inner-page .single-body{
  display:block;
  visibility:visible;
  opacity:1;
}


/* =========================================================
   v6.6 ARTICLE TITLE FIX
   Only the real single-post H1 gets the large editorial size.
   Card/list/sidebar titles are reset to normal sizes.
   ========================================================= */

/* Reset broad title styling that could hit list widgets */
body.ep57-inner-page.single-post .entry-title,
body.ep57-inner-page.single-post .single-title{
  font-size:inherit !important;
  line-height:inherit !important;
  letter-spacing:normal !important;
  font-weight:inherit !important;
  max-width:none !important;
}

/* Large styling ONLY for the actual article page H1 */
body.ep57-inner-page.single-post main h1.entry-title,
body.ep57-inner-page.single-post main .single-header h1,
body.ep57-inner-page.single-post main .single-title.is-main-title,
body.ep57-inner-page.single-post .single-header .entry-title{
  font-family:"Inter",Arial,sans-serif !important;
  font-size:clamp(36px,3.4vw,48px) !important;
  line-height:1.08 !important;
  letter-spacing:-.03em !important;
  font-weight:900 !important;
  color:#151515 !important;
  max-width:980px !important;
}

/* Normal article/card titles inside lists, sidebars, related blocks */
body.ep57-inner-page.single-post .p-wrap .entry-title,
body.ep57-inner-page.single-post .p-wrap .p-title,
body.ep57-inner-page.single-post .sidebar .entry-title,
body.ep57-inner-page.single-post .sidebar .p-title,
body.ep57-inner-page.single-post .widget .entry-title,
body.ep57-inner-page.single-post .widget .p-title,
body.ep57-inner-page.single-post .related-posts .entry-title,
body.ep57-inner-page.single-post .related-posts .p-title,
body.ep57-inner-page.single-post .more-posts .entry-title,
body.ep57-inner-page.single-post .more-posts .p-title{
  font-family:"Inter",Arial,sans-serif !important;
  font-size:18px !important;
  line-height:1.2 !important;
  letter-spacing:-.015em !important;
  font-weight:800 !important;
  max-width:none !important;
}

/* Compact list style where Foxiz uses titles as headlines in vertical lists */
body.ep57-inner-page.single-post .p-list .entry-title,
body.ep57-inner-page.single-post .p-list .p-title,
body.ep57-inner-page.single-post .list-post .entry-title,
body.ep57-inner-page.single-post .list-post .p-title{
  font-size:16px !important;
  line-height:1.22 !important;
}

@media(max-width:767px){
  body.ep57-inner-page.single-post main h1.entry-title,
  body.ep57-inner-page.single-post main .single-header h1,
  body.ep57-inner-page.single-post .single-header .entry-title{
    font-size:32px !important;
    line-height:1.1 !important;
  }

  body.ep57-inner-page.single-post .p-wrap .entry-title,
  body.ep57-inner-page.single-post .p-wrap .p-title,
  body.ep57-inner-page.single-post .widget .entry-title,
  body.ep57-inner-page.single-post .widget .p-title{
    font-size:16px !important;
  }
}
