/* Energy portfolio extensions. 2026 review. Namespaced to avoid altering existing site styles. */
:root{--ep-navy:#0b2942;--ep-deep:#071c30;--ep-accent:#169a95;--ep-soft:#eff6f7;--ep-text:#23394c}
body[data-ep-company="cadeville"]{--ep-navy:#112e3b;--ep-deep:#08222b;--ep-accent:#0b957b;--ep-soft:#f0f8f5}
body[data-ep-company="perryville"]{--ep-navy:#102b47;--ep-deep:#071e35;--ep-accent:#c48b31;--ep-soft:#f9f5ed}
.ep-showcase,.ep-page,.ep-added,.ep-header,.ep-footer{font-family:inherit;color:var(--ep-text)}
.ep-page *,.ep-showcase *,.ep-added *{box-sizing:border-box}
.ep-wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.ep-showcase{padding:76px 0;background:#fff}
.ep-showcase.ep-tint{background:var(--ep-soft)}
.ep-eyebrow{display:inline-block;color:var(--ep-accent);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.13em;margin-bottom:12px}
.ep-showcase h2,.ep-added h2{font-size:clamp(30px,4vw,46px);line-height:1.12;font-weight:800;color:var(--ep-navy);letter-spacing:-.025em;margin:0 0 14px}
.ep-lead{font-size:17px;line-height:1.75;color:#536879;max-width:860px;margin:0 0 30px}
.ep-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.ep-card{background:white;border:1px solid #dae5ea;border-radius:16px;overflow:hidden;box-shadow:0 10px 26px rgba(10,42,66,.055);display:flex;flex-direction:column;min-width:0;transition:transform .2s,box-shadow .2s}
.ep-card:hover{transform:translateY(-4px);box-shadow:0 15px 32px rgba(10,42,66,.13)}
.ep-card img{width:100%;height:170px;object-fit:cover;display:block}
.ep-card-copy{padding:22px;display:flex;flex-direction:column;flex:1}
.ep-card h3{font-size:20px;font-weight:800;color:var(--ep-navy);line-height:1.22;margin:0 0 12px}
.ep-card p{font-size:14px;line-height:1.65;color:#4f6575;margin:0 0 15px}
.ep-pill{font-size:11px;letter-spacing:.07em;font-weight:800;color:var(--ep-accent);margin:0 0 10px;text-transform:uppercase}
.ep-card a:not(.ep-btn){font-size:14px;font-weight:800;color:var(--ep-accent);text-decoration:none;margin-top:auto}
.ep-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;padding:14px 24px;border-radius:9px;text-decoration:none!important;background:var(--ep-accent);color:#fff!important;font-weight:750;font-size:14px;transition:filter .2s}
.ep-btn:hover{filter:brightness(.9)}
.ep-more{display:flex;gap:20px;flex-wrap:wrap;align-items:center;margin-top:28px}
.ep-note{border:1px solid #c4dce2;background:#f4fafb;border-radius:12px;padding:16px 20px;margin:25px 0 30px;color:#365463;font-size:14px;line-height:1.65}
.ep-markets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ep-market{border:1px solid #d8e2e6;border-radius:14px;background:white;overflow:hidden;box-shadow:0 7px 18px rgba(0,30,50,.05)}
.ep-market img{display:block;width:100%;height:155px;object-fit:cover}
.ep-market-inner{padding:20px 23px 25px}
.ep-market h3{font-size:20px;font-weight:800;line-height:1.25;margin:8px 0;color:var(--ep-navy)}
.ep-market h4{font-size:13px;font-weight:700;color:var(--ep-accent);margin:0 0 12px}
.ep-market p{font-size:14px;line-height:1.67;color:#4c6373;margin:0}
.ep-market-type{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#54817e;background:#eaf4f2;border-radius:5px;padding:6px 8px}
.ep-company-site{color:var(--ep-navy)!important;background:#e5f4f1!important}
.ep-inline-markets{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0 26px}
.ep-inline-markets a{padding:11px 14px;border:1px solid #d7e4e5;border-radius:10px;background:white;color:var(--ep-navy);text-decoration:none;font-weight:750;font-size:13px}
.ep-added{padding:55px 0;background:var(--ep-soft)}
.ep-added h2{font-size:clamp(25px,3vw,38px)}
.ep-page{min-height:100vh;background:#f6f9fa;position:relative;z-index:1}
.ep-header{position:relative;z-index:10;background:white;border-bottom:1px solid #dfebec}
.ep-header-wrap{display:flex;align-items:center;gap:25px;justify-content:space-between;max-width:1200px;margin:auto;padding:14px 24px;flex-wrap:wrap}
.ep-logo{max-width:192px;max-height:58px;width:auto;height:auto;object-fit:contain}
.ep-header a{color:var(--ep-navy);text-decoration:none;font-weight:750}
.ep-nav{display:flex;gap:16px;flex-wrap:wrap;align-items:center}
.ep-nav a{font-size:13px;white-space:nowrap;padding:5px 0}
.ep-nav a[aria-current="page"]{border-bottom:2px solid var(--ep-accent);color:var(--ep-accent)}
.ep-hero{min-height:310px;background-size:cover;background-position:center;display:flex;align-items:center;color:#fff;padding:65px 0}
.ep-hero h1{font-size:clamp(38px,5.4vw,62px);line-height:1.09;font-weight:850;letter-spacing:-.035em;color:white;max-width:860px;margin:10px 0 18px}
.ep-hero p{max-width:760px;font-size:17px;line-height:1.7;color:#e0edf1;margin:0}
.ep-hero .ep-eyebrow{color:#86dbcc}
.ep-body{padding:64px 0 76px}
.ep-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.ep-product-grid .ep-card img{height:235px}
.ep-product-grid .ep-card-copy{padding:26px}
.ep-product-grid .ep-card h3{font-size:24px}
.ep-product-grid .ep-card p{font-size:15px}
.ep-apps{list-style:none!important;display:flex;gap:8px;flex-wrap:wrap;margin:7px 0 22px!important;padding:0!important}
.ep-apps li{background:#eef3f5;border-radius:6px;padding:7px 9px;font-size:12px;color:var(--ep-navy);list-style:none!important}
.ep-footer{background:var(--ep-deep);color:#e4eef3;padding:35px 0}
.ep-footer-content{display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between}
.ep-footer a{color:#c0f0ea;text-decoration:none}
.ep-footer p{color:#a9c2cd;font-size:13px;line-height:1.6;margin:4px 0}
.ep-cta{padding:30px 35px;background:var(--ep-navy);color:#fff;border-radius:16px;margin-top:35px;display:flex;gap:24px;align-items:center;justify-content:space-between}
.ep-cta h2{color:#fff!important;font-size:24px;margin:0 0 8px}
.ep-cta p{color:#d7e7ea;margin:0}
/* Low-specificity navigation additions, preserving existing header styles */
a[data-ep-nav]{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
@media(max-width:1024px){.ep-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-markets{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-nav{gap:12px}}
@media(max-width:640px){.ep-wrap{padding:0 18px}.ep-showcase{padding:48px 0}.ep-grid,.ep-markets,.ep-product-grid{grid-template-columns:1fr}.ep-card img,.ep-product-grid .ep-card img{height:200px}.ep-header-wrap{align-items:start}.ep-nav{gap:10px 14px}.ep-hero{min-height:300px;padding:50px 0}.ep-hero h1{font-size:36px}.ep-cta{padding:23px;flex-direction:column;align-items:start}.ep-body{padding:42px 0 50px}}
