
:root{--ep3-red:#c8102e;--ep3-black:#121212;--ep3-line:#e8e8e8}
body.elementor-page{background:#fff}
.ep3-wrap{max-width:var(--ep3-max,1460px);margin:0 auto;padding-left:28px;padding-right:28px;box-sizing:border-box;font-family:Arial,Helvetica,sans-serif;color:#111}
.ep3-wrap a{color:inherit;text-decoration:none}
.ep3-header{position:relative}
.ep3-topbar{height:34px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eee;font-size:12px;color:#555}
.ep3-topbar span{margin:0 8px;color:#bbb}.ep3-toplinks{display:flex;align-items:center;gap:11px}.ep3-toplinks a{background:var(--ep3-red);color:#fff;font-weight:800;padding:10px 16px;margin-left:10px}
.ep3-brandrow{height:108px;position:relative;display:grid;grid-template-columns:1fr 1.25fr 1fr;align-items:center}
.ep3-skyline{position:absolute;left:0;right:0;bottom:0;height:72px;opacity:.12;background:
linear-gradient(165deg,transparent 0 14%,#333 14% 15%,transparent 15% 19%,#333 19% 20%,transparent 20% 32%,#333 32% 33%,transparent 33% 100%);
clip-path:polygon(0 70%,7% 54%,13% 61%,20% 42%,29% 58%,36% 48%,44% 64%,51% 48%,58% 63%,67% 50%,74% 67%,83% 49%,91% 62%,100% 45%,100% 100%,0 100%)}
.ep3-brandcenter{z-index:2;text-align:center}.ep3-logo{font-size:48px;line-height:.95;font-weight:900;letter-spacing:-3px}.ep3-logo b{color:var(--ep3-red)}.ep3-tagline{margin-top:7px;font-size:12px;letter-spacing:2px;color:#6b6b6b}
.ep3-motto{z-index:2;text-align:center;font:italic 20px/1.25 Georgia,serif;color:#777;justify-self:end;max-width:260px}
.ep3-nav{height:49px;border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5;display:flex;align-items:center;gap:0}
.ep3-nav a{height:49px;display:flex;align-items:center;padding:0 26px;font-weight:900;font-size:13px}.ep3-nav a:first-child{background:var(--ep3-red);color:#fff}.ep3-nav a:hover{background:#f6f6f6}.ep3-nav a:first-child:hover{background:#b40d28}.ep3-nav-search{margin-left:auto;font-size:27px}.ep3-hamb{font-size:21px;margin-left:25px}
.ep3-breaking{display:flex;align-items:stretch;padding-left:0;padding-right:0;max-width:none;background:var(--ep3-red);height:42px;color:#fff}
.ep3-break-label{padding:0 24px 0 max(28px,calc((100vw - var(--ep3-max,1460px))/2 + 28px));display:flex;align-items:center;gap:10px;font-weight:900;font-size:13px;white-space:nowrap}.ep3-break-label i{width:10px;height:10px;border-radius:50%;background:#fff}
.ep3-break-track{min-width:0;flex:1;display:flex;align-items:center;gap:48px;overflow:hidden;background:#cf0d2d;padding:0 22px}.ep3-break-track a{font-size:13px;white-space:nowrap}.ep3-break-arrows{padding-right:max(28px,calc((100vw - var(--ep3-max,1460px))/2 + 28px));display:flex;align-items:center;font-size:24px;white-space:nowrap}
.ep3-hero{padding-top:16px}.ep3-hero-grid{display:grid;grid-template-columns:minmax(0,2.05fr) minmax(320px,.92fr) minmax(320px,.78fr);gap:12px}
.ep3-mainstory,.ep3-side{position:relative;display:block;background-size:cover;background-position:center;overflow:hidden}.ep3-mainstory{height:460px}.ep3-grad{position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.88) 100%)}
.ep3-maincopy{position:absolute;left:25px;right:25px;bottom:20px;color:#fff;z-index:2}.ep3-maincopy em,.ep3-side em{display:inline-block;background:var(--ep3-red);color:#fff;font-style:normal;font-size:11px;font-weight:900;padding:5px 8px}
.ep3-maincopy h1{font-size:38px;line-height:1.04;margin:9px 0 10px;font-weight:900;max-width:95%}.ep3-mainmeta{font-size:11px}.ep3-maincopy p{font-size:13px;line-height:1.45;margin:9px 0 0;max-width:90%;color:#e7e7e7}
.ep3-sidestories{display:grid;grid-template-rows:1fr 1fr;gap:12px}.ep3-side{min-height:224px}.ep3-side>div:last-child{position:absolute;left:16px;right:16px;bottom:14px;color:#fff;z-index:2}.ep3-side h2{font-size:20px;line-height:1.1;margin:7px 0;font-weight:900}.ep3-side small{font-size:10px}
.ep3-pop{background:#fff;border-top:4px solid var(--ep3-red);padding:9px 0 0 16px}.ep3-pop h3{font-size:20px;margin:0 0 8px;font-weight:900}.ep3-pop-tabs{display:grid;grid-template-columns:1fr 1fr 1.4fr;border-bottom:1px solid #ddd;font-size:9px;color:#777;align-items:center}.ep3-pop-tabs>*{padding:6px 4px;text-align:center}.ep3-pop-tabs b{color:var(--ep3-red);border:1px solid var(--ep3-red);border-bottom:none}
.ep3-pop ol{list-style:none;padding:0;margin:0;counter-reset:pop}.ep3-pop li{counter-increment:pop;padding:7px 0;border-bottom:1px solid #eee}.ep3-pop li a{display:grid;grid-template-columns:28px 62px 1fr;align-items:center;gap:8px;font-size:11px;font-weight:700;line-height:1.2}.ep3-pop li a:before{content:counter(pop);font-size:22px;color:var(--ep3-red);font-weight:900}.ep3-pop img{width:62px;height:44px;object-fit:cover}
.ep3-ticker{margin-top:10px;min-height:45px;display:flex;align-items:center;border-top:1px solid #eee;border-bottom:1px solid #eee;padding-left:0;padding-right:0;overflow:hidden}.ep3-ticker-label{padding-left:20px;padding-right:22px;color:var(--ep3-red);white-space:nowrap}.ep3-ticker-label strong{font-size:13px;color:#111;margin-left:8px}.ep3-ticker-items{display:flex;align-items:center;min-width:0;overflow:hidden;flex:1}.ep3-ticker-items a{display:flex;gap:9px;align-items:center;padding:0 22px;border-left:1px solid #ddd;min-width:0}.ep3-ticker-items b{color:var(--ep3-red);font-size:11px}.ep3-ticker-items span{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ep3-allflow{font-size:11px;color:var(--ep3-red)!important;white-space:nowrap;padding-right:18px}
.ep3-section-head{display:flex;align-items:center;justify-content:space-between;margin:13px 0 9px}.ep3-section-head h2{font-size:24px;margin:0;font-weight:900;display:flex;align-items:center;gap:12px}.ep3-section-head h2:before{content:"";width:4px;height:28px;background:var(--ep3-red)}.ep3-section-head a{font-size:11px;color:var(--ep3-red);font-weight:700}
.ep3-local{padding-top:0}.ep3-local-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(300px,.98fr);gap:22px}.ep3-local-content{display:grid;grid-template-columns:1.05fr 1.35fr;gap:14px}.ep3-local-main img{width:100%;height:235px;object-fit:cover}.ep3-kicker{font-size:10px;color:var(--ep3-red);font-weight:900;margin-top:7px}.ep3-kicker span{color:#888;font-weight:500}.ep3-local-main h3{font-size:22px;line-height:1.05;margin:5px 0}.ep3-local-main p{font-size:12px;line-height:1.45;color:#666;margin:5px 0}.ep3-local-small{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ep3-local-small img{width:100%;height:92px;object-fit:cover}.ep3-local-small h4{font-size:13px;line-height:1.1;margin:3px 0;font-weight:800}.ep3-local-ad{display:flex;align-items:center;justify-content:center;background:#f0f0f0;min-height:320px;color:#666;text-align:center;background-image:linear-gradient(rgba(255,255,255,.35),rgba(255,255,255,.35))}
.ep3-fourcols{padding-top:16px}.ep3-fourgrid{border-top:1px solid #e5e5e5;padding-top:10px;display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.ep3-mini-col{min-width:0}.ep3-mini-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.ep3-mini-head h3{font-size:19px;margin:0;font-weight:900;display:flex;align-items:center;gap:8px}.ep3-mini-head h3:before{content:"";width:4px;height:23px;background:var(--ep3-red)}.ep3-mini-head a{font-size:9px;color:var(--ep3-red);font-weight:700}.ep3-mini-lead{border-bottom:1px solid #eee;padding-bottom:8px}.ep3-mini-lead a{display:block}.ep3-mini-img{position:relative}.ep3-mini-img img{width:100%;height:112px;object-fit:cover}.ep3-mini-img span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:29px;text-shadow:0 2px 7px #000}.ep3-mini-lead h4{font-size:13px;line-height:1.15;margin:5px 0 0}.ep3-mini-list article{padding:6px 0;border-bottom:1px solid #eee}.ep3-mini-list a{display:grid;grid-template-columns:58px 1fr;gap:8px;align-items:center}.ep3-mini-list img{width:58px;height:42px;object-fit:cover}.ep3-mini-list span{font-size:10px;line-height:1.2}
.ep3-footer{max-width:none;background:#0d0e10;color:#fff;margin-top:24px;padding-top:22px;padding-bottom:22px}.ep3-footer-inner{max-width:var(--ep3-max,1460px);margin:0 auto;display:flex;justify-content:space-between;align-items:center}.ep3-footer-logo{font-size:22px;font-weight:900}.ep3-footer-logo b{color:var(--ep3-red)}.ep3-footer-inner>div:last-child{font-size:11px;color:#aaa}.ep3-footer small{display:block;max-width:var(--ep3-max,1460px);margin:15px auto 0;padding-top:10px;border-top:1px solid #272727;color:#777;font-size:9px}

@media(max-width:1200px){
.ep3-wrap{padding-left:18px;padding-right:18px}.ep3-brandrow{grid-template-columns:.8fr 1.4fr .8fr}.ep3-logo{font-size:41px}.ep3-motto{font-size:16px}.ep3-nav a{padding:0 16px}.ep3-hero-grid{grid-template-columns:1.8fr .9fr}.ep3-pop{grid-column:1/-1}.ep3-pop ol{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.ep3-pop li{border:0}.ep3-pop li a{grid-template-columns:25px 1fr}.ep3-pop img{display:none}.ep3-local-layout{grid-template-columns:1fr}.ep3-local-ad{min-height:170px}.ep3-fourgrid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:767px){
.ep3-wrap{padding-left:12px;padding-right:12px}.ep3-topbar{font-size:9px}.ep3-toplinks span{display:none}.ep3-brandrow{height:82px;display:flex;justify-content:center}.ep3-logo{font-size:31px}.ep3-tagline{font-size:8px}.ep3-motto,.ep3-skyline{display:none}.ep3-nav{overflow:auto;gap:0}.ep3-nav a{padding:0 13px;font-size:10px;white-space:nowrap}.ep3-nav-search,.ep3-hamb{display:none}.ep3-breaking{height:37px}.ep3-break-label{font-size:10px;padding-left:12px;padding-right:12px}.ep3-break-track{padding:0 10px}.ep3-break-track a{font-size:10px}.ep3-break-arrows{display:none}.ep3-hero-grid{grid-template-columns:1fr}.ep3-mainstory{height:390px}.ep3-maincopy h1{font-size:29px}.ep3-maincopy p{display:none}.ep3-sidestories{grid-template-columns:1fr 1fr;grid-template-rows:auto}.ep3-side{min-height:170px}.ep3-side h2{font-size:15px}.ep3-pop{grid-column:auto;padding-left:0}.ep3-pop ol{grid-template-columns:1fr}.ep3-pop li a{grid-template-columns:28px 58px 1fr}.ep3-pop img{display:block;width:58px;height:42px}.ep3-ticker{overflow-x:auto}.ep3-ticker-items a{min-width:180px}.ep3-allflow{display:none}.ep3-local-content{grid-template-columns:1fr}.ep3-local-small{grid-template-columns:1fr 1fr}.ep3-local-main img{height:210px}.ep3-fourgrid{grid-template-columns:1fr}.ep3-mini-img img{height:185px}.ep3-section-head h2{font-size:20px}
}


/* ===== v3.1 FINE TUNE ===== */
.ep3-brandrow{
  grid-template-columns:1fr auto 1fr;
  min-height:116px;
}
.ep3-brandcenter{justify-self:center; min-width:520px}
.ep3-logo{font-size:52px;letter-spacing:-3.6px}
.ep3-tagline{font-size:11px;letter-spacing:2.7px}
.ep3-motto{justify-self:end;font-size:19px;max-width:250px;line-height:1.32;padding-right:8px}
.ep3-skyline{
  height:78px;
  opacity:.18;
  background:
    linear-gradient(90deg,transparent 0 8%,rgba(50,50,50,.55) 8% 9%,transparent 9% 14%,rgba(50,50,50,.45) 14% 15%,transparent 15% 22%,rgba(50,50,50,.5) 22% 23%,transparent 23% 100%);
  clip-path:polygon(0 76%,5% 60%,10% 68%,16% 54%,22% 63%,28% 49%,35% 65%,41% 54%,48% 68%,54% 51%,60% 63%,66% 48%,72% 66%,78% 50%,84% 61%,90% 46%,96% 60%,100% 54%,100% 100%,0 100%);
}
.ep3-nav a{font-size:12px;padding:0 23px}
.ep3-mainstory{height:448px}
.ep3-maincopy{left:24px;right:24px;bottom:18px}
.ep3-maincopy h1{
  font-size:34px;
  line-height:1.03;
  max-width:92%;
  letter-spacing:-.5px;
}
.ep3-maincopy p{font-size:12px;max-width:86%}
.ep3-side{min-height:218px}
.ep3-side h2{font-size:18px;line-height:1.08}
.ep3-pop{padding-left:13px}
.ep3-pop h3{font-size:18px}
.ep3-pop li a{font-size:10.5px}
.ep3-ticker{min-height:43px}

.ep3-section-head{margin-top:14px;margin-bottom:8px}
.ep3-section-head h2{font-size:22px}
.ep3-local-layout{grid-template-columns:minmax(0,3.15fr) minmax(285px,.9fr);gap:18px}
.ep3-local-content{grid-template-columns:1.1fr 1.4fr;gap:12px}
.ep3-local-main img{height:220px}
.ep3-local-main h3{font-size:20px}
.ep3-local-main p{font-size:11.5px}
.ep3-local-small{gap:10px}
.ep3-local-small img{height:84px}
.ep3-local-small h4{font-size:12px}
.ep3-local-ad{min-height:305px}

.ep3-fourgrid{gap:18px;padding-top:9px}
.ep3-mini-head h3{font-size:17px}
.ep3-mini-head a{font-size:8.5px}
.ep3-mini-img img{height:104px}
.ep3-mini-lead h4{font-size:12px}
.ep3-mini-list span{font-size:9.5px}
.ep3-mini-list img{width:54px;height:40px}
.ep3-mini-list a{grid-template-columns:54px 1fr;gap:7px}

.ep3-footer{margin-top:18px;padding-top:18px;padding-bottom:18px}
.ep3-footer-logo{font-size:20px}

@media(max-width:1200px){
  .ep3-brandcenter{min-width:0}
  .ep3-logo{font-size:42px}
}
@media(max-width:767px){
  .ep3-brandrow{min-height:82px}
  .ep3-brandcenter{min-width:0}
  .ep3-logo{font-size:31px}
  .ep3-mainstory{height:380px}
  .ep3-maincopy h1{font-size:27px}
  .ep3-side{min-height:165px}
  .ep3-local-main img{height:205px}
}


/* ===== v3.2 HEADER / FOOTER MATCH ===== */
.ep3-topbar{
  background:#f5f5f5;
  border-bottom:1px solid #e2e2e2;
  color:#2f2f2f;
  grid-template-columns:1fr auto 1fr;
  display:grid;
  align-items:center;
  padding:0 4px;
}
.ep3-top-left{justify-self:start}
.ep3-top-weather{
  justify-self:center;
  font-size:13px;
  color:#444;
  font-weight:600;
}
.ep3-toplinks{
  justify-self:end;
  gap:12px;
  color:#222;
}
.ep3-toplink{
  color:#444 !important;
  font-size:12px;
}
.ep3-toplinks > span{
  font-size:14px;
  color:#222;
}
.ep3-toplinks a:last-child{
  background:var(--ep3-red);
  color:#fff !important;
  font-size:12px;
  font-weight:800;
  padding:10px 18px;
  margin-left:10px;
}
.ep3-brandrow{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  min-height:112px;
  position:relative;
}
.ep3-skyline{
  position:relative;
  display:block;
  height:74px;
  opacity:.22;
}
.ep3-skyline-left{
  justify-self:start;
  width:100%;
  background:
    linear-gradient(180deg, transparent 0 50%, rgba(0,0,0,.08) 50% 100%),
    linear-gradient(90deg, transparent 0 8%, rgba(0,0,0,.14) 8% 9%, transparent 9% 12%, rgba(0,0,0,.10) 12% 13%, transparent 13% 17%, rgba(0,0,0,.12) 17% 18%, transparent 18% 100%);
  clip-path:polygon(0 70%,8% 56%,14% 63%,22% 48%,31% 62%,39% 54%,46% 66%,54% 51%,61% 64%,70% 49%,79% 61%,88% 46%,100% 58%,100% 100%,0 100%);
}
.ep3-skyline-right{
  justify-self:end;
  width:100%;
  background:
    linear-gradient(180deg, transparent 0 56%, rgba(0,0,0,.08) 56% 100%),
    radial-gradient(circle at 74% 36%, rgba(0,0,0,.18) 0 3px, transparent 4px),
    linear-gradient(90deg, transparent 0 60%, rgba(0,0,0,.10) 60% 61%, transparent 61% 63%, rgba(0,0,0,.10) 63% 64%, transparent 64% 100%);
  clip-path:polygon(0 59%,24% 52%,42% 66%,56% 44%,62% 21%,65% 6%,68% 22%,70% 44%,78% 58%,100% 50%,100% 100%,0 100%);
}
.ep3-brandcenter{
  min-width:560px;
  padding-top:4px;
}
.ep3-logo{
  font-size:64px;
  line-height:.92;
  letter-spacing:-4px;
}
.ep3-tagline{
  margin-top:6px;
  font-size:12px;
  letter-spacing:3px;
}
.ep3-motto{
  position:absolute;
  right:6px;
  top:18px;
  max-width:245px;
  text-align:center;
  font-size:20px;
  color:#6f6f6f;
  line-height:1.24;
}
.ep3-nav{
  border-top:1px solid #dcdcdc;
  border-bottom:1px solid #dcdcdc;
  height:48px;
}
.ep3-nav a{
  font-size:13px;
  font-weight:800;
  padding:0 24px;
}
.ep3-nav-search{font-size:28px}
.ep3-hamb{font-size:22px}

.ep3-footer{
  background:#0d0e10;
  margin-top:22px;
  padding-top:20px;
  padding-bottom:18px;
  border-top:1px solid #191919;
}
.ep3-footer-inner{
  max-width:var(--ep3-max,1460px);
  margin:0 auto;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:20px;
}
.ep3-footer-left small{
  display:block;
  color:#6d6d6d;
  font-size:10px;
  margin-top:10px;
}
.ep3-footer-logo{
  font-size:36px;
  line-height:.95;
  font-weight:900;
  letter-spacing:-2px;
}
.ep3-footer-center{
  color:#9c9c9c;
  text-align:center;
  font-size:12px;
}
.ep3-footer-right{
  display:flex;
  align-items:center;
  gap:14px;
  color:#fff;
  font-size:13px;
}
.ep3-footer-right a{
  color:#b9b9b9 !important;
  font-size:12px;
}
.ep3-footer small{
  display:none;
}

@media(max-width:1200px){
  .ep3-brandcenter{min-width:0}
  .ep3-logo{font-size:52px}
  .ep3-motto{position:static;justify-self:end;font-size:17px}
  .ep3-footer-inner{grid-template-columns:1fr; text-align:center}
  .ep3-footer-right, .ep3-footer-left{justify-content:center}
}
@media(max-width:767px){
  .ep3-topbar{
    display:flex;
    justify-content:space-between;
    gap:10px;
    padding:0 8px;
  }
  .ep3-top-weather,.ep3-toplink{display:none}
  .ep3-toplinks a:last-child{
    padding:8px 12px;
    font-size:10px;
  }
  .ep3-brandrow{
    display:flex;
    justify-content:center;
    min-height:86px;
  }
  .ep3-skyline-left,.ep3-skyline-right,.ep3-motto{display:none}
  .ep3-brandcenter{min-width:0}
  .ep3-logo{font-size:44px}
  .ep3-tagline{font-size:9px;letter-spacing:2px}
  .ep3-footer-logo{font-size:28px}
  .ep3-footer-center{font-size:11px}
  .ep3-footer-right{flex-wrap:wrap;justify-content:center}
}


/* ===== v3.3 REAL LOGO ===== */
.ep3-brandcenter{
  min-width:590px;
}
.ep3-logo-image-wrap{
  display:flex;
  align-items:center;
  justify-content:center;
}
.ep3-logo-image{
  display:block;
  width:auto;
  height:auto;
  max-width:520px;
  max-height:76px;
  object-fit:contain;
}
.ep3-tagline{
  margin-top:5px;
}
@media(max-width:1200px){
  .ep3-brandcenter{min-width:0}
  .ep3-logo-image{max-width:430px;max-height:66px}
}
@media(max-width:767px){
  .ep3-logo-image{max-width:280px;max-height:52px}
  .ep3-tagline{font-size:8px;letter-spacing:1.5px}
}


/* ===== v3.4 OFFICIAL LOGO FULL MATCH ===== */

/* Top strip – thinner and calmer, like the mockup */
.ep3-topbar{
  height:31px;
  min-height:31px;
  background:#f3f3f3;
  border-bottom:1px solid #e4e4e4;
  padding:0 4px;
  font-size:11px;
}
.ep3-top-left{
  display:flex;
  align-items:center;
  gap:4px;
}
.ep3-top-weather{
  font-size:12px;
  font-weight:600;
}
.ep3-toplinks{
  gap:10px;
}
.ep3-toplinks > span{
  font-size:12px;
}
.ep3-toplink{
  font-size:11px ;
}
.ep3-toplinks a:last-child{
  height:31px;
  display:flex;
  align-items:center;
  padding:0 15px;
  margin-left:6px;
  font-size:11px;
}

/* Main branding – official logo enlarged and centered */
.ep3-brandrow{
  min-height:104px;
  height:104px;
  grid-template-columns:1fr 390px 1fr;
  position:relative;
  overflow:hidden;
}
.ep3-brandcenter{
  min-width:0 !important;
  width:390px;
  justify-self:center;
  z-index:3;
  padding-top:0;
}
.ep3-logo-image-wrap{
  height:69px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  overflow:hidden;
}
.ep3-logo-image{
  width:auto;
  height:auto;
  max-width:290px;
  max-height:68px;
  object-fit:contain;
  display:block;
}
.ep3-tagline{
  margin-top:5px;
  font-size:9px;
  line-height:1;
  letter-spacing:2.5px;
  color:#686868;
  white-space:nowrap;
}
.ep3-motto{
  right:15px;
  top:17px;
  max-width:250px;
  font-size:18px;
  line-height:1.28;
  color:#777;
  z-index:4;
}
.ep3-skyline{
  position:absolute;
  bottom:0;
  top:auto;
  height:70px;
  opacity:.18;
  z-index:1;
}
.ep3-skyline-left{
  left:0;
  width:42%;
}
.ep3-skyline-right{
  right:0;
  width:39%;
}

/* Navigation – match spacing/weight from mockup */
.ep3-nav{
  height:45px;
  min-height:45px;
  border-top:1px solid #dedede;
  border-bottom:1px solid #dedede;
}
.ep3-nav a{
  height:45px;
  min-height:45px;
  padding:0 22px;
  font-size:12px;
  font-weight:800;
}
.ep3-nav a:first-child{
  padding-left:28px;
  padding-right:28px;
}
.ep3-nav-search{
  font-size:25px;
  margin-right:3px;
}
.ep3-hamb{
  font-size:19px;
  margin-left:19px;
}

/* Footer – lighter, flatter, less heavy than previous versions */
.ep3-footer{
  background:#0c0d0f;
  margin-top:18px;
  padding:18px 0 16px;
  min-height:82px;
}
.ep3-footer-inner{
  max-width:var(--ep3-max,1460px);
  margin:0 auto;
  padding:0 28px;
  display:grid;
  grid-template-columns:220px 1fr 320px;
  align-items:center;
  gap:20px;
}
.ep3-footer-left{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.ep3-footer-logo-image-wrap{
  width:190px;
  height:42px;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.ep3-footer-logo-image{
  display:block;
  max-width:175px;
  max-height:36px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.ep3-footer-left small{
  margin-top:7px;
  color:#606060;
  font-size:8px;
}
.ep3-footer-center{
  font-size:10px;
  color:#a0a0a0;
  text-align:center;
}
.ep3-footer-right{
  justify-content:flex-end;
  gap:11px;
}
.ep3-footer-right a{
  font-size:10px ;
  color:#b9b9b9 !important;
}
.ep3-footer-right span{
  font-size:11px;
}

/* keep the rest of the page visually aligned with the header */
.ep3-breaking{
  height:39px;
}
.ep3-break-label{
  font-size:11px;
}
.ep3-break-track a{
  font-size:11px;
}

@media(max-width:1200px){
  .ep3-brandrow{
    grid-template-columns:.8fr 330px .8fr;
  }
  .ep3-brandcenter{
    width:330px;
  }
  .ep3-logo-image{
    max-width:255px;
    max-height:60px;
  }
  .ep3-motto{
    max-width:210px;
    font-size:15px;
  }
  .ep3-nav a{
    padding:0 14px;
    font-size:11px;
  }
  .ep3-footer-inner{
    grid-template-columns:1fr;
    text-align:center;
  }
  .ep3-footer-left{
    align-items:center;
  }
  .ep3-footer-right{
    justify-content:center;
  }
}
@media(max-width:767px){
  .ep3-topbar{
    height:29px;
    min-height:29px;
  }
  .ep3-toplinks a:last-child{
    height:29px;
  }
  .ep3-brandrow{
    min-height:78px;
    height:78px;
    display:flex;
    justify-content:center;
  }
  .ep3-brandcenter{
    width:auto;
  }
  .ep3-logo-image-wrap{
    height:50px;
  }
  .ep3-logo-image{
    max-width:215px;
    max-height:48px;
  }
  .ep3-tagline{
    font-size:7px;
    letter-spacing:1.5px;
  }
  .ep3-nav{
    height:42px;
    min-height:42px;
  }
  .ep3-nav a{
    height:42px;
    min-height:42px;
    font-size:10px;
    padding:0 12px;
  }
  .ep3-footer-inner{
    padding:0 15px;
  }
  .ep3-footer-logo-image-wrap{
    width:165px;
    height:38px;
  }
  .ep3-footer-logo-image{
    max-width:150px;
    max-height:32px;
  }
}


/* =========================================================
   v4.0 FULL MOCKUP MATCH
   ========================================================= */
.ep3-wrap{max-width:var(--ep3-max,1460px);padding-left:30px;padding-right:30px}
.ep3-hero{padding-top:12px}
.ep3-topbar{height:30px;min-height:30px;font-size:11px}
.ep3-brandrow{height:108px;min-height:108px;grid-template-columns:1fr 420px 1fr}
.ep3-brandcenter{width:420px}
.ep3-logo-image-wrap{height:78px}
.ep3-logo-image{max-width:330px;max-height:76px}
.ep3-tagline{margin-top:3px;font-size:10px;letter-spacing:2.4px}
.ep3-motto{top:19px;right:10px;max-width:260px;font-size:18px;line-height:1.3}
.ep3-skyline{height:74px;opacity:.20}
.ep3-nav{height:46px;min-height:46px}
.ep3-nav a{height:46px;min-height:46px;padding:0 24px;font-size:12px}
.ep3-breaking{height:40px}

.ep3-hero-grid{grid-template-columns:minmax(0,2.2fr) minmax(300px,.98fr) minmax(330px,.95fr);gap:10px}
.ep3-mainstory{height:410px}
.ep3-maincopy h1{font-size:31px;line-height:1.03;max-width:88%}
.ep3-maincopy p{font-size:11px;max-width:82%}
.ep3-side{min-height:200px}
.ep3-side h2{font-size:17px}
.ep3-pop h3{font-size:18px}
.ep3-pop li{padding:6px 0}
.ep3-pop li a{grid-template-columns:27px 60px 1fr;gap:7px;font-size:10px}
.ep3-pop img{width:60px;height:42px}

.ep3-ticker{min-height:41px;margin-top:8px}
.ep3-ticker-items a{padding:0 18px}
.ep3-ticker-items span{font-size:10px}

.ep3-section-head{margin-top:10px;margin-bottom:7px}
.ep3-section-head h2{font-size:21px}
.ep3-local-layout{grid-template-columns:minmax(0,3.45fr) minmax(300px,.95fr);gap:16px}
.ep3-local-content{grid-template-columns:1.08fr 1.5fr;gap:12px}
.ep3-local-main img{height:205px}
.ep3-local-main h3{font-size:18px;line-height:1.08}
.ep3-local-main p{font-size:11px;line-height:1.35}
.ep3-local-small{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}
.ep3-local-small article{min-width:0}
.ep3-local-small img{width:100%;height:80px;object-fit:cover}
.ep3-local-small h4{font-size:11px;line-height:1.13;margin:2px 0 0}
.ep3-local-ad{min-height:280px;height:100%}

.ep4-fourcols{padding-top:12px}
.ep4-fourgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;border-top:1px solid #e6e6e6;padding-top:9px}
.ep4-bottom-col{min-width:0}
.ep4-bottom-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}
.ep4-bottom-head h3{margin:0;font-size:16px;line-height:1;font-weight:900;display:flex;align-items:center;gap:7px}
.ep4-bottom-head h3:before{content:"";width:4px;height:21px;background:var(--ep3-red)}
.ep4-bottom-head a{font-size:8px;color:var(--ep3-red)!important;white-space:nowrap}
.ep4-bottom-body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:9px;align-items:start}
.ep4-bottom-lead{min-width:0}
.ep4-bottom-lead-img{position:relative;width:100%}
.ep4-bottom-lead-img img{width:100%;height:92px;object-fit:cover;display:block}
.ep4-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px;text-shadow:0 2px 8px rgba(0,0,0,.9)}
.ep4-bottom-lead h4{margin:5px 0 0;font-size:10px;line-height:1.18;font-weight:800}
.ep4-bottom-list{min-width:0}
.ep4-bottom-list article{padding:0 0 6px;margin:0 0 6px;border-bottom:1px solid #eee}
.ep4-bottom-list article:last-child{margin-bottom:0}
.ep4-bottom-list a{display:grid;grid-template-columns:46px minmax(0,1fr);gap:6px;align-items:start}
.ep4-bottom-list img{width:46px;height:34px;object-fit:cover}
.ep4-bottom-list span{font-size:8.5px;line-height:1.12}

.ep3-footer{min-height:72px;padding:14px 0 13px;margin-top:14px}
.ep3-footer-inner{grid-template-columns:200px 1fr 300px;padding:0 30px}
.ep3-footer-logo-image-wrap{width:172px;height:38px}
.ep3-footer-logo-image{max-width:158px;max-height:32px}
.ep3-footer-center{font-size:9px}
.ep3-footer-right a{font-size:9px}
.ep3-footer-right span{font-size:10px}

@media(min-width:1201px){.ep3-local{padding-bottom:5px}}
@media(max-width:1200px){
  .ep3-hero-grid{grid-template-columns:1.7fr .9fr}
  .ep3-pop{grid-column:1/-1}
  .ep3-local-layout{grid-template-columns:1fr}
  .ep3-local-ad{min-height:150px}
  .ep4-fourgrid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:767px){
  .ep3-wrap{padding-left:12px;padding-right:12px}
  .ep3-brandrow{height:78px;min-height:78px}
  .ep3-logo-image{max-width:215px;max-height:48px}
  .ep3-hero-grid{grid-template-columns:1fr}
  .ep3-mainstory{height:360px}
  .ep3-maincopy h1{font-size:26px}
  .ep3-sidestories{grid-template-columns:1fr 1fr}
  .ep3-side{min-height:155px}
  .ep3-local-content{grid-template-columns:1fr}
  .ep3-local-main img{height:205px}
  .ep3-local-small{grid-template-columns:1fr 1fr}
  .ep4-fourgrid{grid-template-columns:1fr}
  .ep4-bottom-body{grid-template-columns:1.15fr .85fr}
  .ep4-bottom-lead-img img{height:125px}
}


/* =========================================================
   v4.1 BREAKING FIX + EQUAL IMAGES + MODERN FONT
   ========================================================= */

/* Modern font */
.ep3-wrap,
.ep3-wrap *{
  font-family:"Inter", Arial, Helvetica, sans-serif;
}
.ep3-logo,
.ep3-footer-logo,
.ep3-motto{
  font-family:"Inter", Arial, Helvetica, sans-serif;
}

/* BREAKING NEWS: remove arrows completely */
.ep3-break-arrows{
  display:none !important;
}
.ep3-breaking{
  justify-content:flex-start;
}
.ep3-break-track{
  padding-right:max(28px,calc((100vw - var(--ep3-max,1460px))/2 + 28px));
}

/* Uniform image sizing across homepage */
.ep3-mainstory,
.ep3-side,
.ep3-mainstory img,
.ep3-side img{
  object-fit:cover;
}

.ep3-local-main img{
  height:220px !important;
  object-fit:cover !important;
}
.ep3-local-small img{
  height:95px !important;
  object-fit:cover !important;
}
.ep4-bottom-lead-img img{
  height:110px !important;
  object-fit:cover !important;
}
.ep4-bottom-list img{
  width:52px !important;
  height:38px !important;
  object-fit:cover !important;
}
.ep3-pop img{
  width:62px !important;
  height:44px !important;
  object-fit:cover !important;
}

/* Make card title rhythm more consistent */
.ep3-local-small h4,
.ep4-bottom-lead h4,
.ep4-bottom-list span,
.ep3-pop li a{
  line-height:1.2;
}

/* More modern font weights */
.ep3-nav a,
.ep3-break-label,
.ep3-section-head h2,
.ep4-bottom-head h3{
  font-weight:800;
}
.ep3-maincopy h1,
.ep3-side h2,
.ep3-local-main h3{
  font-weight:900;
  letter-spacing:-0.02em;
}

/* Tighter cleaner look */
.ep3-maincopy p,
.ep3-local-main p,
.ep4-bottom-list span{
  color:#555;
}
.ep3-maincopy p{
  color:#efefef;
}

/* mobile */
@media(max-width:767px){
  .ep3-local-main img{
    height:205px !important;
  }
  .ep3-local-small img{
    height:88px !important;
  }
  .ep4-bottom-lead-img img{
    height:118px !important;
  }
}


/* ===== v4.2 WORKING POPULAR TABS ===== */
.ep3-pop-tabs{
  display:grid;
  grid-template-columns:1fr 1fr 1.4fr;
  border-bottom:1px solid #ddd;
  align-items:end;
}
.ep3-pop-tabs button{
  appearance:none;
  border:0;
  background:transparent;
  cursor:pointer;
  padding:6px 4px;
  font-family:inherit;
  font-size:9px;
  color:#777;
  text-align:center;
  font-weight:600;
}
.ep3-pop-tabs button:hover{
  color:var(--ep3-red);
}
.ep3-pop-tabs button.is-active{
  color:var(--ep3-red);
  border:1px solid var(--ep3-red);
  border-bottom:0;
  background:#fff;
  font-weight:800;
}
.ep3-pop-panel{
  display:none;
  list-style:none;
  padding:0;
  margin:0;
  counter-reset:pop;
}
.ep3-pop-panel.is-active{
  display:block;
}


/* =========================================================
   v4.3 EXACT HEADER MATCH
   ========================================================= */

/* Top utility bar exactly structured like the mockup */
.ep3-header .ep3-topbar{
  display:grid !important;
  grid-template-columns: 1fr auto 1fr !important;
  align-items:center !important;
  height:30px !important;
  min-height:30px !important;
  background:#f3f3f3 !important;
  border-bottom:1px solid #e4e4e4 !important;
  color:#2d2d2d !important;
  font-size:11px ;
  padding:0 0 !important;
}
.ep3-header .ep3-top-left{
  justify-self:start;
  display:flex;
  align-items:center;
  gap:6px;
  color:#333;
}
.ep3-header .ep3-top-center{
  justify-self:center;
  display:flex;
  align-items:center;
  gap:5px;
  color:#333;
  font-size:12px;
  font-weight:500;
}
.ep3-header .ep3-top-right{
  justify-self:end;
  display:flex;
  align-items:center;
  gap:10px;
  color:#222;
}
.ep3-header .ep3-social{
  display:flex;
  align-items:center;
  gap:9px;
  color:#111;
  font-size:12px;
  line-height:1;
}
.ep3-header .ep3-top-link,
.ep3-header .ep3-top-right a.ep3-top-link{
  background:none !important;
  color:#222 !important;
  padding:0 !important;
  margin:0 !important;
  height:auto !important;
  display:inline !important;
  font-size:12px ;
  font-weight:500 !important;
  text-decoration:none !important;
}
.ep3-header .ep3-top-sep{
  color:#9a9a9a;
  margin:0 1px;
}
.ep3-header .ep3-caret{
  font-size:10px;
  position:relative;
  top:-1px;
}
.ep3-header .ep3-livebtn,
.ep3-header .ep3-top-right a.ep3-livebtn{
  background:var(--ep3-red) !important;
  color:#fff !important;
  height:30px !important;
  display:inline-flex !important;
  align-items:center !important;
  padding:0 16px !important;
  margin:0 0 0 6px !important;
  font-size:11px ;
  font-weight:800 !important;
  letter-spacing:.01em;
  text-decoration:none !important;
}

/* Branding row closer to mockup */
.ep3-header .ep3-brandrow{
  height:112px !important;
  min-height:112px !important;
  grid-template-columns:1fr 440px 1fr !important;
  align-items:center !important;
}
.ep3-header .ep3-brandcenter{
  width:440px !important;
  justify-self:center;
  text-align:center;
}
.ep3-header .ep3-logo-image-wrap{
  height:78px !important;
  display:flex;
  align-items:flex-end;
  justify-content:center;
}
.ep3-header .ep3-logo-image{
  max-width:315px !important;
  max-height:74px !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
}
.ep3-header .ep3-tagline{
  margin-top:4px !important;
  font-size:9px ;
  line-height:1 ;
  letter-spacing:2.7px ;
  color:#707070 !important;
  white-space:nowrap;
}
.ep3-header .ep3-skyline-left{
  left:0;
  width:43%;
  opacity:.18 !important;
}
.ep3-header .ep3-skyline-right{
  right:0;
  width:39%;
  opacity:.18 !important;
}
.ep3-header .ep3-motto{
  position:absolute !important;
  right:6px !important;
  top:15px !important;
  max-width:250px !important;
  font-size:18px ;
  line-height:1.28 ;
  color:#777 !important;
  text-align:center !important;
}

/* Navigation */
.ep3-header .ep3-nav{
  height:46px !important;
  min-height:46px !important;
  border-top:1px solid #e3e3e3 !important;
  border-bottom:1px solid #e3e3e3 !important;
}
.ep3-header .ep3-nav a{
  height:46px !important;
  display:flex !important;
  align-items:center !important;
  padding:0 23px !important;
  font-size:12px ;
  font-weight:800 !important;
  letter-spacing:0 ;
}
.ep3-header .ep3-nav a:first-child{
  background:var(--ep3-red) !important;
  color:#fff !important;
}
.ep3-header .ep3-nav-search{
  font-size:24px ;
  margin-left:auto !important;
}
.ep3-header .ep3-hamb{
  font-size:20px ;
  margin-left:18px !important;
}

/* Mobile */
@media(max-width:767px){
  .ep3-header .ep3-topbar{
    grid-template-columns:1fr auto !important;
    gap:10px;
    padding:0 8px !important;
  }
  .ep3-header .ep3-top-center{
    order:2;
    justify-self:end;
    font-size:10px;
  }
  .ep3-header .ep3-top-right{
    display:none !important;
  }
  .ep3-header .ep3-brandrow{
    height:82px !important;
    min-height:82px !important;
    display:flex !important;
    justify-content:center !important;
  }
  .ep3-header .ep3-logo-image{
    max-width:220px !important;
    max-height:50px !important;
  }
  .ep3-header .ep3-tagline{
    font-size:7px ;
    letter-spacing:1.8px ;
  }
  .ep3-header .ep3-motto,
  .ep3-header .ep3-skyline-left,
  .ep3-header .ep3-skyline-right{
    display:none !important;
  }
}


/* =========================================================
   v4.4 HEADER BACKGROUND IMAGE + EXACT LOGO PLACEMENT
   ========================================================= */
.ep3-header .ep3-brandrow{
  position:relative !important;
  background:#f7f7f7 !important;
  overflow:hidden !important;
}
.ep3-header .ep3-brandrow:before,
.ep3-header .ep3-brandrow:after{
  content:"";
  position:absolute;
  top:0;
  height:70px;
  background-repeat:no-repeat;
  background-size:contain;
  opacity:1;
  pointer-events:none;
  z-index:1;
}
.ep3-header .ep3-brandrow:before{
  left:0;
  width:520px;
  background-image:url('header-left-top.png');
  background-position:left top;
}
.ep3-header .ep3-brandrow:after{
  right:0;
  width:400px;
  background-image:url('header-right-top.png');
  background-position:right top;
}
.ep3-header .ep3-skyline-left,
.ep3-header .ep3-skyline-right,
.ep3-header .ep3-motto{
  display:none !important;
}
.ep3-header .ep3-brandcenter{
  position:relative;
  z-index:3;
  width:430px !important;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.ep3-header .ep3-logo-image-wrap{
  height:80px !important;
  align-items:center !important;
  justify-content:center !important;
  margin-top:-4px;
}
.ep3-header .ep3-logo-image{
  max-width:330px !important;
  max-height:78px !important;
  object-fit:contain !important;
  display:block;
  filter:none !important;
}
.ep3-header .ep3-tagline{
  margin-top:0 !important;
  font-size:9px ;
  letter-spacing:2.6px ;
  color:#6c6c6c !important;
  text-align:center;
  white-space:nowrap;
}

@media(max-width:1200px){
  .ep3-header .ep3-brandrow:before{width:360px;height:64px;background-size:cover;background-position:left top}
  .ep3-header .ep3-brandrow:after{width:290px;height:64px;background-size:cover;background-position:right top}
  .ep3-header .ep3-brandcenter{width:360px !important}
  .ep3-header .ep3-logo-image{max-width:285px !important;max-height:70px !important}
}
@media(max-width:767px){
  .ep3-header .ep3-brandrow:before,
  .ep3-header .ep3-brandrow:after{display:none}
  .ep3-header .ep3-brandcenter{width:auto !important}
  .ep3-header .ep3-logo-image-wrap{height:54px !important;margin-top:0}
  .ep3-header .ep3-logo-image{max-width:225px !important;max-height:52px !important}
  .ep3-header .ep3-tagline{font-size:7px ;letter-spacing:1.8px }
}


/* =========================================================
   v4.5 HEADER CUTOUT LOGO + LARGER FONTS
   ========================================================= */
.ep3-header .ep3-brandrow{
  height:118px !important;
  min-height:118px !important;
  grid-template-columns:1fr 500px 1fr !important;
  overflow:hidden !important;
}
.ep3-header .ep3-brandrow:before{width:560px !important;height:76px !important;background-size:contain !important;top:10px !important}
.ep3-header .ep3-brandrow:after{width:430px !important;height:76px !important;background-size:contain !important;top:10px !important}
.ep3-header .ep3-brandcenter{width:500px !important;z-index:4 !important;}
.ep3-header .ep3-logo-image-wrap{height:84px !important;margin-top:2px !important;}
.ep3-header .ep3-logo-image{max-width:400px !important;max-height:58px !important;width:auto !important;height:auto !important;object-fit:contain !important;}
.ep3-header .ep3-tagline{margin-top:2px !important;font-size:10px ;letter-spacing:2.7px ;}
.ep3-header .ep3-nav a{font-size:13px ;}
.ep3-header .ep3-nav-search{font-size:26px }
.ep3-header .ep3-hamb{font-size:22px }

/* Slightly larger typography across homepage */
.ep3-maincopy h1{font-size:34px }
.ep3-maincopy p{font-size:12px }
.ep3-side h2{font-size:18px }
.ep3-pop h3{font-size:19px }
.ep3-pop li a{font-size:11px }
.ep3-section-head h2{font-size:24px }
.ep3-local-main h3{font-size:20px }
.ep3-local-main p{font-size:12px }
.ep3-local-small h4{font-size:12px }
.ep4-bottom-head h3{font-size:17px }
.ep4-bottom-lead h4{font-size:11px }
.ep4-bottom-list span{font-size:9.5px }
.ep3-footer-center{font-size:10px }
.ep3-footer-right a{font-size:10px }

@media(max-width:1200px){
  .ep3-header .ep3-brandrow{grid-template-columns:1fr 420px 1fr !important;height:108px !important;min-height:108px !important}
  .ep3-header .ep3-brandcenter{width:420px !important}
  .ep3-header .ep3-logo-image{max-width:340px !important;max-height:52px !important}
}
@media(max-width:767px){
  .ep3-header .ep3-brandrow{height:88px !important;min-height:88px !important;display:flex !important;justify-content:center !important}
  .ep3-header .ep3-brandcenter{width:auto !important}
  .ep3-header .ep3-logo-image-wrap{height:58px !important}
  .ep3-header .ep3-logo-image{max-width:260px !important;max-height:46px !important}
  .ep3-maincopy h1{font-size:28px }
}


/* =========================================================
   v4.6 ELEMENTOR EDITABLE HEADER + FOOTER
   ========================================================= */

/* Header background art now comes from Elementor media controls */
.ep3-header .ep3-brandrow:before{
  background-image:var(--ep3-bg-left, url('header-left-top.png')) !important;
}
.ep3-header .ep3-brandrow:after{
  background-image:var(--ep3-bg-right, url('header-right-top.png')) !important;
}

/* Keep uploaded/cutout logo fully visible */
.ep3-header .ep3-logo-image{
  object-fit:contain !important;
}

/* Social links in top bar */
.ep3-header .ep3-social a{
  color:#111 !important;
  background:none !important;
  padding:0 !important;
  margin:0 !important;
  font-size:12px ;
  font-weight:600 !important;
}

/* Footer media logo */
.ep3-footer-logo-image-wrap{
  background:transparent !important;
}
.ep3-footer-logo-image{
  display:block;
  width:175px;
  max-width:175px;
  max-height:48px;
  object-fit:contain;
}
.ep3-footer-social{
  display:flex;
  align-items:center;
  gap:9px;
}
.ep3-footer-social a{
  color:#fff;
  font-size:11px;
  text-decoration:none;
}

/* Elementor controls should win over historical hard-coded sizing */
.elementor-widget-ep3_header .ep3-brandrow,
.elementor-widget-ep3_header .ep3-logo-image,
.elementor-widget-ep3_header .ep3-nav,
.elementor-widget-ep3_footer .ep3-footer{
  transition:none;
}


/* =========================================================
   v4.7 ALL ELEMENTOR WIDGETS: FONT + CATEGORY + AD COLUMN
   ========================================================= */
.epx-with-ad{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
  align-items:stretch;
}
.epx-with-ad.has-ad{
  grid-template-columns:minmax(0,calc(100% - var(--epx-ad-width,25%) - 18px)) minmax(180px,var(--epx-ad-width,25%));
}
.epx-ad-column{
  background:#f4f4f4;
  min-width:0;
  min-height:180px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.epx-ad-column > *{
  max-width:100%;
}
.epx-ad-placeholder{
  width:100%;
  min-height:180px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  text-align:center;
  color:#777;
  font-size:13px;
  box-sizing:border-box;
}
.epx-ad-compact{
  min-height:42px;
}
.epx-ad-compact .epx-ad-placeholder{
  min-height:42px;
  padding:8px;
  font-size:11px;
}
.ep3-standalone-ad{
  min-height:250px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:20px;
  box-sizing:border-box;
  overflow:hidden;
}
.ep3-standalone-ad > *{
  max-width:100%;
}
.ep3-local .ep3-local-content{
  width:100%;
}
.ep4-fourcols .ep4-fourgrid{
  width:100%;
}

@media(max-width:900px){
  .epx-with-ad.has-ad{
    grid-template-columns:1fr;
  }
  .epx-ad-column{
    min-height:120px;
  }
}


/* =========================================================
   v4.8 ELEMENTOR TYPOGRAPHY FIX + CLEAN HEADER + FULL IMAGES
   ========================================================= */

/* Elementor typography must be allowed to override theme defaults. */
.elementor-widget-ep3_header .ep3-nav a,
.elementor-widget-ep3_header .ep3-topbar,
.elementor-widget-ep3_header .ep3-tagline,
.elementor-widget-ep3_header .ep3-motto,
.elementor-widget-ep3_breaking .ep3-break-label,
.elementor-widget-ep3_breaking .ep3-break-track a,
.elementor-widget-ep3_hero .ep3-maincopy h1,
.elementor-widget-ep3_hero .ep3-maincopy p,
.elementor-widget-ep3_hero .ep3-side h2,
.elementor-widget-ep3_hero .ep3-pop h3,
.elementor-widget-ep3_hero .ep3-pop li a,
.elementor-widget-ep3_ticker .ep3-ticker-label,
.elementor-widget-ep3_ticker .ep3-ticker-items a,
.elementor-widget-ep3_local .ep3-section-head h2,
.elementor-widget-ep3_local .ep3-local-main h3,
.elementor-widget-ep3_local .ep3-local-main p,
.elementor-widget-ep3_local .ep3-local-small h4,
.elementor-widget-ep3_fourcols .ep4-bottom-head h3,
.elementor-widget-ep3_fourcols .ep4-bottom-lead h4,
.elementor-widget-ep3_fourcols .ep4-bottom-list span,
.elementor-widget-ep3_footer .ep3-footer,
.elementor-widget-ep3_ad_column .ep3-standalone-ad{
  font-family:inherit;
}

/* Header backgrounds use the corrected crops with no stray central E. */
.ep3-header .ep3-brandrow:before{
  background-image:var(--ep3-bg-left, url('header-left-top.png')) !important;
  width:460px !important;
}
.ep3-header .ep3-brandrow:after{
  background-image:var(--ep3-bg-right, url('header-right-top.png')) !important;
  width:360px !important;
}

/* Keep equal image boxes, but show the WHOLE image instead of cropping the bottom. */
.ep3-local-main img,
.ep3-local-small img,
.ep4-bottom-lead-img img,
.ep4-bottom-list img,
.ep3-pop img{
  object-fit:contain !important;
  object-position:center center !important;
  background:#f3f3f3;
}

/* Hero side images remain cover because they are background-image editorial cards. */
.ep3-mainstory,
.ep3-side{
  background-position:center center;
  background-repeat:no-repeat;
  background-size:cover;
}

@media(max-width:1200px){
  .ep3-header .ep3-brandrow:before{width:340px !important}
  .ep3-header .ep3-brandrow:after{width:280px !important}
}
@media(max-width:767px){
  .ep3-header .ep3-brandrow:before,
  .ep3-header .ep3-brandrow:after{display:none !important}
}


/* =========================================================
   v4.9 WIDE / FULLSCREEN MOCKUP + NATURAL IMAGES
   ========================================================= */

/* Break the homepage out of Elementor's narrow content width.
   Keep only a small edge margin, like the original mockup. */
body.elementor-page .ep3-wrap{
  width:calc(100vw - 36px) !important;
  max-width:none !important;
  margin-left:50% !important;
  margin-right:0 !important;
  transform:translateX(-50%) !important;
  padding-left:14px !important;
  padding-right:14px !important;
  box-sizing:border-box !important;
}

/* Header and footer should visually span the same wide canvas. */
body.elementor-page .ep3-header,
body.elementor-page .ep3-footer{
  width:calc(100vw - 36px) !important;
  max-width:none !important;
}

/* Header decorative images: full, wide and never clipped into small boxes. */
.ep3-header .ep3-brandrow{
  overflow:hidden !important;
  min-height:116px !important;
}
.ep3-header .ep3-brandrow:before,
.ep3-header .ep3-brandrow:after{
  top:0 !important;
  bottom:0 !important;
  height:100% !important;
  background-size:100% auto !important;
  background-repeat:no-repeat !important;
  opacity:1 !important;
}
.ep3-header .ep3-brandrow:before{
  width:43vw !important;
  max-width:720px !important;
  background-position:left bottom !important;
}
.ep3-header .ep3-brandrow:after{
  width:36vw !important;
  max-width:620px !important;
  background-position:right bottom !important;
}

/* Do not crop card images and do not create grey letterbox gaps.
   Let each image use its natural aspect ratio at 100% column width. */
.ep3-local-main img,
.ep3-local-small img,
.ep4-bottom-lead-img img,
.ep4-bottom-list img,
.ep3-pop img{
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  min-height:0 !important;
  object-fit:initial !important;
  object-position:initial !important;
  background:transparent !important;
  display:block !important;
}

/* Main ELASSONA image: fill its whole left column, no blank sides. */
.ep3-local-main{
  width:100%;
  min-width:0;
}
.ep3-local-main img{
  aspect-ratio:auto !important;
}

/* Small ELASSONA cards: image touches both sides of its card. */
.ep3-local-small article{
  width:100%;
  min-width:0;
  overflow:hidden;
}
.ep3-local-small img{
  margin:0 !important;
}

/* Bottom columns: lead image fills available card width. */
.ep4-bottom-lead-img{
  width:100%;
  height:auto !important;
  overflow:visible !important;
  background:transparent !important;
}
.ep4-bottom-lead-img img{
  width:100% !important;
  height:auto !important;
}

/* Tiny list thumbs keep a stable width, but no vertical crop. */
.ep4-bottom-list img{
  width:54px !important;
  height:auto !important;
}
.ep3-pop img{
  width:62px !important;
  height:auto !important;
}

/* Open the internal layouts to use the extra screen width. */
.ep3-hero-grid{
  grid-template-columns:minmax(0,2.2fr) minmax(330px,.95fr) minmax(340px,.92fr) !important;
  gap:12px !important;
}
.ep3-local-content{
  grid-template-columns:minmax(0,1.08fr) minmax(0,1.48fr) !important;
  gap:14px !important;
}
.ep4-fourgrid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:20px !important;
}

/* If an ad is enabled, keep it as a real separate column. */
.epx-with-ad.has-ad{
  grid-template-columns:minmax(0,1fr) minmax(260px,var(--epx-ad-width,24%)) !important;
}

/* More mockup-like breathing room on wide screens. */
@media(min-width:1500px){
  .ep3-mainstory{height:470px !important}
  .ep3-side{min-height:229px !important}
  .ep3-maincopy h1{font-size:38px !important}
  .ep3-section-head h2{font-size:25px !important}
}

/* Tablet: return to contained layout. */
@media(max-width:1200px){
  body.elementor-page .ep3-wrap{
    width:calc(100vw - 20px) !important;
    padding-left:10px !important;
    padding-right:10px !important;
  }
  .ep3-header .ep3-brandrow:before{width:42vw !important}
  .ep3-header .ep3-brandrow:after{width:34vw !important}
  .ep3-hero-grid{grid-template-columns:1.7fr .9fr !important}
  .ep3-pop{grid-column:1/-1}
  .ep4-fourgrid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}

/* Mobile */
@media(max-width:767px){
  body.elementor-page .ep3-wrap{
    width:100vw !important;
    padding-left:10px !important;
    padding-right:10px !important;
  }
  .ep3-header .ep3-brandrow:before,
  .ep3-header .ep3-brandrow:after{
    display:none !important;
  }
  .ep3-local-content{grid-template-columns:1fr !important}
  .ep3-local-small{grid-template-columns:1fr 1fr !important}
  .ep4-fourgrid{grid-template-columns:1fr !important}
  .epx-with-ad.has-ad{grid-template-columns:1fr !important}
}


/* =========================================================
   v5.0 BALANCED MOCKUP
   Wide like mockup, not edge-to-edge. No crop + no grey gaps.
   ========================================================= */

/* Real mockup width: wide centered canvas */
body.elementor-page .ep3-wrap,
body.elementor-page .ep3-header,
body.elementor-page .ep3-footer{
  width:min(1500px, calc(100vw - 36px)) !important;
  max-width:1500px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  transform:none !important;
  box-sizing:border-box !important;
}

body.elementor-page .ep3-wrap{
  padding-left:0 !important;
  padding-right:0 !important;
}

/* Header centered again inside same canvas */
.ep3-header .ep3-brandrow{
  grid-template-columns:1fr 430px 1fr !important;
  height:108px !important;
  min-height:108px !important;
}
.ep3-header .ep3-brandcenter{
  width:430px !important;
  justify-self:center !important;
}
.ep3-header .ep3-logo-image{
  max-width:330px !important;
  max-height:58px !important;
}
.ep3-header .ep3-brandrow:before{
  width:510px !important;
  max-width:42% !important;
}
.ep3-header .ep3-brandrow:after{
  width:430px !important;
  max-width:36% !important;
}

/* A reusable image frame:
   blurred image fills the box, original image stays 100% visible. */
.ep5-imgbox{
  position:relative;
  overflow:hidden;
  background-image:var(--ep5-img);
  background-size:cover;
  background-position:center;
  isolation:isolate;
}
.ep5-imgbox:before{
  content:"";
  position:absolute;
  inset:-14px;
  background-image:var(--ep5-img);
  background-size:cover;
  background-position:center;
  filter:blur(13px);
  transform:scale(1.10);
  opacity:.58;
  z-index:-2;
}
.ep5-imgbox:after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(255,255,255,.08);
  z-index:-1;
}
.ep5-imgbox img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  object-fit:contain !important;
  display:block !important;
  position:relative;
  z-index:1;
  background:transparent !important;
}

/* ELASSONA exact visual balance */
.ep3-local-content{
  grid-template-columns:minmax(0,1.08fr) minmax(0,1.42fr) !important;
  gap:14px !important;
}
.ep5-imgbox-main{
  aspect-ratio:16 / 10;
}
.ep5-imgbox-small{
  aspect-ratio:16 / 9;
}
.ep3-local-small{
  gap:12px 14px !important;
}
.ep3-local-main h3{
  margin-top:5px !important;
}

/* Restore ad column ratio closer to mockup */
.ep3-local .epx-with-ad.has-ad{
  grid-template-columns:minmax(0,1fr) 300px !important;
  gap:18px !important;
}

/* Hero closer to original mockup proportions */
.ep3-hero-grid{
  grid-template-columns:minmax(0,2.12fr) minmax(310px,.92fr) minmax(320px,.86fr) !important;
  gap:10px !important;
}
.ep3-mainstory{
  height:420px !important;
}
.ep3-side{
  min-height:205px !important;
}

/* Bottom four blocks need more visual weight */
.ep4-fourgrid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
}
.ep4-bottom-body{
  grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr) !important;
  gap:9px !important;
}
.ep5-imgbox-bottom{
  aspect-ratio:16 / 9;
}
.ep4-bottom-lead-img{
  height:auto !important;
  overflow:hidden !important;
}
.ep4-bottom-lead h4{
  line-height:1.18;
}
.ep4-bottom-list span{}

/* Prevent old v4.9 natural-image rules from overriding v5 boxes */
.ep5-imgbox-main img,
.ep5-imgbox-small img,
.ep5-imgbox-bottom img{
  height:100% !important;
  object-fit:contain !important;
}

/* Consistent vertical rhythm */
.ep3-section-head{
  margin-top:13px !important;
}
.ep4-fourcols{
  padding-top:16px !important;
}

/* Very large screens */
@media(min-width:1600px){
  body.elementor-page .ep3-wrap,
  body.elementor-page .ep3-header,
  body.elementor-page .ep3-footer{
    max-width:1540px !important;
    width:min(1540px, calc(100vw - 48px)) !important;
  }
  .ep3-mainstory{height:440px !important}
  .ep3-side{min-height:215px !important}
}

/* Tablet */
@media(max-width:1200px){
  body.elementor-page .ep3-wrap,
  body.elementor-page .ep3-header,
  body.elementor-page .ep3-footer{
    width:calc(100vw - 20px) !important;
  }
  .ep3-hero-grid{
    grid-template-columns:1.65fr .9fr !important;
  }
  .ep3-pop{
    grid-column:1/-1;
  }
  .ep3-local .epx-with-ad.has-ad{
    grid-template-columns:1fr !important;
  }
  .ep4-fourgrid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* Mobile */
@media(max-width:767px){
  body.elementor-page .ep3-wrap,
  body.elementor-page .ep3-header,
  body.elementor-page .ep3-footer{
    width:100% !important;
  }
  .ep3-hero-grid{grid-template-columns:1fr !important}
  .ep3-local-content{grid-template-columns:1fr !important}
  .ep4-fourgrid{grid-template-columns:1fr !important}
}


/* =========================================================
   v5.1 CLEAN HEADER
   ========================================================= */

/* Remove all decorative header image crops */
.ep3-header .ep3-brandrow:before,
.ep3-header .ep3-brandrow:after,
.ep3-header .ep3-skyline,
.ep3-header .ep3-skyline-left,
.ep3-header .ep3-skyline-right{
  display:none !important;
  content:none !important;
  background-image:none !important;
}

/* Clean premium branding area */
.ep3-header .ep3-brandrow{
  background:#ffffff !important;
  height:104px !important;
  min-height:104px !important;
  display:grid !important;
  grid-template-columns:1fr 430px 1fr !important;
  align-items:center !important;
  position:relative !important;
  overflow:visible !important;
  border-bottom:0 !important;
}

/* Center logo clearly */
.ep3-header .ep3-brandcenter{
  width:430px !important;
  justify-self:center !important;
  text-align:center !important;
  position:relative !important;
  z-index:2 !important;
}

.ep3-header .ep3-logo-image-wrap{
  height:68px !important;
  margin:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.ep3-header .ep3-logo-image{
  width:auto !important;
  height:auto !important;
  max-width:330px !important;
  max-height:58px !important;
  object-fit:contain !important;
  display:block !important;
}

.ep3-header .ep3-tagline{
  margin-top:4px !important;
  font-size:9px !important;
  letter-spacing:2.5px !important;
  color:#777 !important;
  white-space:nowrap !important;
}

/* Motto remains at right but clean */
.ep3-header .ep3-motto{
  display:block !important;
  position:absolute !important;
  right:14px !important;
  top:23px !important;
  max-width:250px !important;
  font-size:17px !important;
  line-height:1.3 !important;
  color:#777 !important;
  text-align:center !important;
  z-index:2 !important;
}

/* slightly cleaner top/header spacing */
.ep3-header .ep3-topbar{
  border-bottom:1px solid #e8e8e8 !important;
}
.ep3-header .ep3-nav{
  border-top:1px solid #e6e6e6 !important;
  border-bottom:1px solid #e6e6e6 !important;
}

/* Mobile */
@media(max-width:900px){
  .ep3-header .ep3-brandrow{
    grid-template-columns:1fr !important;
    height:92px !important;
    min-height:92px !important;
  }
  .ep3-header .ep3-motto{
    display:none !important;
  }
  .ep3-header .ep3-brandcenter{
    width:auto !important;
  }
}


/* =========================================================
   v5.2 PERFECT CENTER CLEAN HEADER
   ========================================================= */

.ep3-header .ep3-brandrow{
  position:relative !important;
  display:block !important;
  height:92px !important;
  min-height:92px !important;
  background:#fff !important;
  overflow:visible !important;
}

/* Logo is ALWAYS exactly centered in header */
.ep3-header .ep3-brandcenter{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  width:auto !important;
  min-width:360px !important;
  margin:0 !important;
  padding:0 !important;
  text-align:center !important;
  z-index:5 !important;
}

.ep3-header .ep3-logo-image-wrap{
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.ep3-header .ep3-logo-image{
  width:auto !important;
  height:auto !important;
  max-width:330px !important;
  max-height:54px !important;
  object-fit:contain !important;
  display:block !important;
  margin:0 auto !important;
}

.ep3-header .ep3-tagline{
  margin-top:5px !important;
  font-size:9px !important;
  line-height:1 !important;
  letter-spacing:2.4px !important;
  text-align:center !important;
  white-space:nowrap !important;
}

/* Motto independent from logo */
.ep3-header .ep3-motto{
  position:absolute !important;
  right:28px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  max-width:245px !important;
  margin:0 !important;
  font-size:16px !important;
  line-height:1.28 !important;
  text-align:center !important;
  color:#777 !important;
  z-index:4 !important;
}

/* Navigation sits tightly under branding */
.ep3-header .ep3-nav{
  margin-top:0 !important;
}

/* desktop */
@media(min-width:1201px){
  .ep3-header .ep3-brandcenter{
    min-width:380px !important;
  }
}

/* tablet */
@media(max-width:1200px){
  .ep3-header .ep3-brandrow{
    height:86px !important;
    min-height:86px !important;
  }
  .ep3-header .ep3-logo-image{
    max-width:285px !important;
    max-height:48px !important;
  }
  .ep3-header .ep3-motto{
    right:16px !important;
    max-width:200px !important;
    font-size:14px !important;
  }
}

/* mobile */
@media(max-width:767px){
  .ep3-header .ep3-brandrow{
    height:76px !important;
    min-height:76px !important;
  }
  .ep3-header .ep3-brandcenter{
    min-width:0 !important;
    width:100% !important;
  }
  .ep3-header .ep3-logo-image{
    max-width:220px !important;
    max-height:44px !important;
  }
  .ep3-header .ep3-tagline{
    font-size:7px !important;
    letter-spacing:1.5px !important;
  }
  .ep3-header .ep3-motto{
    display:none !important;
  }
}


/* =========================================================
   v5.3 RESPONSIVE MOBILE MENU
   ========================================================= */

/* Desktop menu */
.ep3-desktop-menu{
  display:flex;
  align-items:center;
  min-width:0;
}
.ep3-desktop-menu > a{
  display:flex;
}

/* Hamburger button */
.ep3-hamb{
  appearance:none;
  border:0;
  background:transparent;
  width:42px;
  height:42px;
  padding:9px;
  margin-left:14px !important;
  cursor:pointer;
  display:none;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  position:relative;
  z-index:12;
}
.ep3-hamb span{
  display:block;
  width:24px;
  height:2px;
  background:#111;
  transition:transform .22s ease, opacity .22s ease;
  margin:0 auto;
}
.ep3-hamb.is-open span:nth-child(1){
  transform:translateY(7px) rotate(45deg);
}
.ep3-hamb.is-open span:nth-child(2){
  opacity:0;
}
.ep3-hamb.is-open span:nth-child(3){
  transform:translateY(-7px) rotate(-45deg);
}

/* Mobile menu hidden by default */
.ep3-mobile-menu{
  display:none;
}

/* Mobile */
@media(max-width:767px){

  .ep3-header{
    position:relative;
    z-index:100;
  }

  .ep3-header .ep3-nav{
    height:52px !important;
    min-height:52px !important;
    display:flex !important;
    align-items:center !important;
    padding:0 8px !important;
    overflow:visible !important;
  }

  /* Hide desktop horizontal items */
  .ep3-desktop-menu{
    display:none !important;
  }

  .ep3-header .ep3-nav-search{
    display:block !important;
    margin-left:auto !important;
    font-size:23px !important;
    line-height:1 !important;
  }

  .ep3-hamb{
    display:flex !important;
  }

  /* Actual responsive dropdown */
  .ep3-mobile-menu{
    display:block;
    position:absolute;
    left:0;
    right:0;
    top:100%;
    background:#fff;
    border-top:1px solid #ececec;
    box-shadow:0 10px 25px rgba(0,0,0,.12);
    max-height:0;
    overflow:hidden;
    opacity:0;
    visibility:hidden;
    transition:max-height .3s ease, opacity .22s ease, visibility .22s ease;
    z-index:999;
  }

  .ep3-mobile-menu.is-open{
    max-height:80vh;
    opacity:1;
    visibility:visible;
    overflow-y:auto;
  }

  .ep3-mobile-menu a{
    display:flex;
    align-items:center;
    width:100%;
    min-height:52px;
    padding:0 18px;
    border-bottom:1px solid #efefef;
    font-size:14px;
    font-weight:800;
    color:#111 !important;
    text-decoration:none;
    box-sizing:border-box;
  }

  .ep3-mobile-menu a:first-child{
    background:var(--ep3-red);
    color:#fff !important;
  }

  .ep3-mobile-menu a:active{
    background:#f5f5f5;
  }

  .ep3-mobile-menu a:first-child:active{
    background:#b80e29;
  }

  /* Header content */
  .ep3-header .ep3-brandrow{
    height:78px !important;
    min-height:78px !important;
  }

  .ep3-header .ep3-logo-image{
    max-width:220px !important;
    max-height:43px !important;
  }

  .ep3-header .ep3-topbar{
    height:30px !important;
    min-height:30px !important;
    padding:0 8px !important;
  }

  .ep3-header .ep3-top-left{
    font-size:9px !important;
  }

  .ep3-header .ep3-top-center{
    font-size:9px !important;
  }

  .ep3-header .ep3-top-right{
    display:none !important;
  }

  /* Prevent background scrolling feeling awkward while menu is open */
  html.ep3-menu-open{
    overflow-x:hidden;
  }
}

/* Tablet: allow menu to wrap less aggressively */
@media(min-width:768px) and (max-width:1050px){
  .ep3-header .ep3-nav a{
    padding-left:12px !important;
    padding-right:12px !important;
    font-size:11px !important;
  }
}


/* =========================================================
   v5.4 IMAGE / VIDEO ADS
   ========================================================= */
.epx-ad-column,
.ep3-standalone-ad{
  min-height:var(--ep-ad-height,250px) !important;
  height:var(--ep-ad-height,250px) !important;
  padding:0 !important;
  position:relative;
  overflow:hidden;
}

.ep-ad-link{
  display:block;
  width:100%;
  height:100%;
}

.ep-ad-media{
  display:block;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:var(--ep-ad-fit,cover) !important;
  object-position:center !important;
  margin:0 !important;
}

.ep-ad-video{
  background:#000;
}

.epx-ad-placeholder{
  width:100%;
  height:100%;
  min-height:var(--ep-ad-height,250px) !important;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:20px;
  box-sizing:border-box;
}

/* Compact placements still honor selected media height, but default visually sane */
.epx-ad-compact{
  min-height:var(--ep-ad-height,120px) !important;
}

/* Mobile */
@media(max-width:767px){
  .epx-ad-column,
  .ep3-standalone-ad{
    width:100%;
  }
}


/* =========================================================
   v5.5 OPTION 2 — PREMIUM + SPONSOR GRID
   ========================================================= */
.ep5-premium-banner{
  width:100%;
  position:relative;
  overflow:hidden;
  background:#f3f3f3;
}
.ep5-premium-banner > a{
  display:block;
  width:100%;
  height:100%;
}
.ep5-premium-banner img,
.ep5-premium-banner video{
  width:100%;
  height:100%;
  display:block;
  object-fit:var(--ep5-fit,cover);
}
.ep5-ad-label{
  position:absolute;
  top:10px;
  left:10px;
  z-index:3;
  background:rgba(0,0,0,.7);
  color:#fff;
  font-size:10px;
  font-weight:800;
  padding:5px 8px;
  letter-spacing:.04em;
}
.ep5-premium-placeholder{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#777;
}
.ep5-sponsor-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:12px;
}
.ep5-sponsor-heading{
  margin:0;
  font-size:22px;
  font-weight:900;
  display:flex;
  align-items:center;
  gap:9px;
}
.ep5-sponsor-heading:before{
  content:"";
  width:4px;
  height:24px;
  background:var(--ep3-red);
}
.ep5-sponsor-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.ep5-sponsor-card{
  border:1px solid #e8e8e8;
  background:#fff;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px;
  box-sizing:border-box;
  transition:transform .18s ease, box-shadow .18s ease;
}
.ep5-sponsor-card:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.ep5-sponsor-card a{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}
.ep5-sponsor-card img,
.ep5-sponsor-card video{
  width:100%;
  height:100%;
  display:block;
  object-fit:var(--ep5-sponsor-fit,contain);
}
.ep5-sponsor-empty{
  color:#888;
  font-size:12px;
}

@media(max-width:1024px){
  .ep5-sponsor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:767px){
  .ep5-sponsor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ep5-sponsor-heading{font-size:19px}
}


/* =========================================================
   v5.6 EP 4 NEWS COLUMNS — ELEMENTOR TYPOGRAPHY FIX
   No fixed font-size here: Elementor controls have final say.
   ========================================================= */
.elementor-widget-ep3_fourcols .ep4-bottom-head h3{
  font-size:inherit;
}
.elementor-widget-ep3_fourcols .ep4-bottom-lead h4{
  font-size:inherit;
}
.elementor-widget-ep3_fourcols .ep4-bottom-list span{
  font-size:inherit;
}
.elementor-widget-ep3_fourcols .ep4-bottom-head a{
  font-size:inherit;
}

/* Visual defaults only when Elementor has not emitted typography styles. */
.elementor-widget-ep3_fourcols:not(.elementor-element-edit-mode) .ep4-bottom-head h3{ }


/* =========================================================
   v5.9 POPULAR TABS MOBILE FIX
   Older .ep3-pop ol rules were more specific than .ep3-pop-panel,
   causing every tab panel to be visible on mobile/tablet.
   ========================================================= */
.ep3-pop .ep3-pop-panel[data-panel]{
  display:none !important;
}
.ep3-pop .ep3-pop-panel[data-panel].is-active{
  display:block !important;
}

@media(max-width:1200px){
  .ep3-pop .ep3-pop-panel[data-panel]{
    display:none !important;
    grid-template-columns:none !important;
  }
  .ep3-pop .ep3-pop-panel[data-panel].is-active{
    display:block !important;
  }
}
