:root{--navy:#0d2f4f;--blue:#0b67b2;--teal:#168f91;--ink:#1b2935;--muted:#5d6c78;--line:#dce6ec;--soft:#f4f8fb;--white:#fff;--radius:20px;--shadow:0 16px 44px rgba(13,47,79,.10);--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.72 Inter,Arial,sans-serif;background:#fff}img{max-width:100%;height:auto}a{color:var(--blue);text-underline-offset:3px}.ep-shell,.ep-page>section:not(.ep-hero):not(.ep-home-slider):not(.ep-footer-rfq),.ep-product-content>section{width:min(var(--max),calc(100% - 40px));margin-inline:auto}.ep-main{min-height:55vh}.ep-header{position:sticky;top:var(--wp-admin--admin-bar--height,0);z-index:90;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid rgba(13,47,79,.08)}.ep-header-inner{max-width:1440px;margin:auto;min-height:76px;padding:8px 24px;display:flex;align-items:center;gap:24px}.ep-logo img{width:54px;height:54px;object-fit:contain}.ep-nav{display:flex;align-items:center;gap:20px;flex:1}.ep-nav>a,.ep-nav-drop>a{font-weight:750;color:var(--navy);text-decoration:none}.ep-nav-drop{position:relative}.ep-nav-drop:hover .ep-mega,.ep-nav-drop:focus-within .ep-mega{display:grid}.ep-mega{display:none;position:absolute;top:30px;left:-140px;width:min(920px,86vw);grid-template-columns:repeat(3,1fr);gap:18px;padding:22px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px}.ep-mega h3{margin:0 0 8px;font-size:15px}.ep-mega a{display:block;padding:4px 0;text-decoration:none}.ep-header-actions{display:flex;align-items:center;gap:12px}.ep-menu-toggle{display:none}.ep-search{position:relative}.ep-search input{width:190px;padding:10px 12px;border:1px solid var(--line);border-radius:999px}.ep-search-results{position:absolute;top:44px;right:0;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);width:320px;display:none}.ep-search-results a{display:block;padding:9px 12px;text-decoration:none}.ep-btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 20px;border-radius:999px;background:var(--blue);color:#fff!important;text-decoration:none;font-weight:800;transition:transform .2s ease,box-shadow .2s ease}.ep-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(11,103,178,.25)}.ep-btn-small{padding:9px 14px;font-size:14px}.ep-home-slider{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;background:#edf4f8}.ep-home-slide{min-width:100%;scroll-snap-align:start}.ep-hero,.ep-home-slide{position:relative;isolation:isolate;min-height:590px;background-image:linear-gradient(90deg,rgba(7,29,47,.80) 0%,rgba(7,29,47,.46) 38%,rgba(7,29,47,.06) 72%),var(--hero);background-size:cover;background-position:center;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.ep-hero-curve-a,.ep-home-slide{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 720' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 0h1440v630c-180 62-340-20-520 18-210 46-380 92-560 16C240 614 118 620 0 654V0z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 720' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 0h1440v630c-180 62-340-20-520 18-210 46-380 92-560 16C240 614 118 620 0 654V0z'/%3E%3C/svg%3E")}.ep-hero-curve-b{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 720' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 0h1440v642c-270 40-390-64-630 7-250 74-480 23-810-13V0z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 720' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 0h1440v642c-270 40-390-64-630 7-250 74-480 23-810-13V0z'/%3E%3C/svg%3E")}.ep-hero-curve-c{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 720' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 0h1440v660c-230-34-460 35-704-2C480 620 270 610 0 664V0z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 720' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 0h1440v660c-230-34-460 35-704-2C480 620 270 610 0 664V0z'/%3E%3C/svg%3E")}.ep-hero-inner{padding-top:125px;padding-bottom:150px;color:#fff}.ep-hero-inner>*{max-width:660px}.ep-home-copy{width:min(var(--max),calc(100% - 40px));margin:auto;padding:130px 0 160px;color:#fff}.ep-home-copy>*{max-width:660px}.ep-kicker{letter-spacing:.13em;text-transform:uppercase;font-weight:800;font-size:13px}.ep-hero h1,.ep-home-slide h1{font-size:clamp(42px,5vw,74px);line-height:1.05;margin:.2em 0;color:#fff}.ep-hero p,.ep-home-slide p{font-size:20px}.ep-lead{width:min(var(--max),calc(100% - 40px));margin:20px auto 0;color:var(--muted);font-size:19px}.ep-page>section,.ep-product-content>section{padding-block:70px}.ep-page>section:nth-of-type(even):not(.ep-hero),.ep-product-content>section:nth-of-type(even){background:var(--soft);box-shadow:0 0 0 100vmax var(--soft);clip-path:inset(0 -100vmax)}h1,h2,h3{color:var(--navy);line-height:1.2}h2{font-size:clamp(30px,3vw,44px);margin:0 0 20px}h3{font-size:20px}.ep-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.ep-card{padding:26px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 8px 24px rgba(13,47,79,.05);transition:transform .2s ease,border-color .2s ease}.ep-card:hover{transform:translateY(-4px);border-color:#8bc1df}.ep-card img{aspect-ratio:16/10;object-fit:cover;border-radius:14px}.ep-split{display:grid!important;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}.ep-media{margin:26px 0}.ep-media img{display:block;width:100%;border-radius:18px;box-shadow:var(--shadow)}.ep-media.contain img{object-fit:contain;background:#fff;max-height:760px}.ep-media-grid{display:grid!important;grid-template-columns:repeat(3,1fr);gap:20px}.ep-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:#fff}.ep-spec-table{width:100%;border-collapse:collapse;min-width:640px}.ep-spec-table th,.ep-spec-table td{padding:13px 15px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.ep-spec-table th{background:#eaf3f8;color:var(--navy)}.ep-callout,.ep-moq-note{padding:20px 22px;border-left:4px solid var(--teal);background:#eef9f8;border-radius:12px;margin:24px 0}.ep-moq-note{border-color:#c67a00;background:#fff8e9}.ep-faq details{border-bottom:1px solid var(--line);padding:16px 0}.ep-faq summary{font-weight:800;color:var(--navy);cursor:pointer}.ep-checklist{columns:2;gap:30px}.ep-rfq-panel{background:linear-gradient(135deg,#0d2f4f,#0b67b2)!important;color:#fff;border-radius:28px;padding:44px!important;box-shadow:none!important}.ep-rfq-panel h2{color:#fff}.ep-rfq-panel .ep-moq-note{color:var(--ink)}.ep-product-grid,.ep-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.ep-product-card,.ep-post-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(13,47,79,.06);padding-bottom:20px}.ep-product-card img,.ep-post-card img{width:100%;aspect-ratio:1/1;object-fit:contain;background:#fff}.ep-product-card h3,.ep-product-card p,.ep-product-card .ep-text-link,.ep-post-card h2,.ep-post-card p,.ep-post-card .ep-text-link{margin-left:20px;margin-right:20px}.ep-text-link{font-weight:800}.ep-process{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ep-process .ep-num{font-size:36px;font-weight:900;color:#bed9e8}.ep-contact-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:36px}.ep-map iframe{width:100%;height:460px;border:0;border-radius:18px}.ep-footer{background:#081d2d;color:#d8e5ec}.ep-footer a{color:#fff}.ep-footer-top{max-width:var(--max);margin:auto;padding:56px 20px 28px;display:grid;grid-template-columns:1fr 1fr;gap:40px}.ep-logo-footer img{filter:brightness(0) invert(1)}.ep-footer-rfq{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;max-width:var(--max);margin:auto;padding:40px 20px}.ep-footer-rfq h2{color:#fff}.ep-form-wrap{background:#fff;color:var(--ink);padding:26px;border-radius:18px}.ep-footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:20px;display:flex;justify-content:space-between;max-width:var(--max);margin:auto}.ep-product-shell{width:min(var(--max),calc(100% - 40px));margin:45px auto;display:grid;grid-template-columns:1fr 1fr;gap:44px}.ep-article-head{background:var(--soft);padding:70px 0 30px}.ep-article-head h1{font-size:clamp(38px,4vw,60px)}.ep-article-content{padding-block:40px 70px}.ep-article-content>section{padding-block:42px}.ep-toc{padding:20px;background:#f2f7fa;border-radius:16px;margin:24px 0}.ep-not-found{padding:100px 20px}.ep-marquee{overflow:hidden;white-space:nowrap;border-block:1px solid var(--line);padding:12px}.ep-marquee-track{display:inline-block;animation:epMarquee 25s linear infinite}@keyframes epMarquee{to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ep-marquee-track{animation:none}.ep-btn,.ep-card{transition:none}}@media(max-width:1024px){.ep-header-actions .ep-search{display:none}.ep-card-grid,.ep-product-grid,.ep-post-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.ep-header-inner{flex-wrap:wrap}.ep-menu-toggle{display:block;margin-left:auto}.ep-nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;padding:12px 0}.ep-nav.open{display:flex}.ep-mega{position:static;display:grid!important;width:100%;grid-template-columns:1fr;box-shadow:none;border:0;padding:10px 0}.ep-header-actions{margin-left:auto}.ep-header-actions .ep-btn{display:none}.ep-hero,.ep-home-slide{min-height:520px;background-position:62% center}.ep-hero-inner,.ep-home-copy{padding-top:95px}.ep-split,.ep-contact-grid,.ep-footer-rfq,.ep-product-shell{grid-template-columns:1fr}.ep-card-grid,.ep-product-grid,.ep-post-grid,.ep-media-grid,.ep-process{grid-template-columns:1fr}.ep-checklist{columns:1}.ep-footer-top{grid-template-columns:1fr}.ep-footer-bottom{display:block}.ep-page>section,.ep-product-content>section{padding-block:52px}.ep-hero h1,.ep-home-slide h1{font-size:40px}.ep-hero p,.ep-home-slide p{font-size:17px}}
.ep-card-title{display:block;font-size:20px;font-weight:800;color:var(--navy);line-height:1.25;margin:0 0 12px}
.ep-mini-checks{padding-left:20px;margin:16px 0 22px}.ep-mini-checks li{margin:6px 0}

/* =========================================================
   v1.1.0 deep refinement — planned architecture + media
   ========================================================= */
:root{--sand:#fff7e8;--sand-line:#e5a73b;--section-gap:clamp(64px,7vw,96px);--content:1180px}
body{font-size:17px;line-height:1.72}
.ep-main{padding-bottom:72px;overflow:hidden}
.ep-page>section,.ep-product-content>section{padding-block:var(--section-gap)}
.ep-page>.ep-hero,.ep-page>.ep-home-carousel{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;box-shadow:none!important;clip-path:none!important;background-color:#eef4f7}
.ep-page>.ep-hero+section{padding-top:72px}
.ep-page>.ep-home-carousel+.ep-marquee{margin-top:0}
.ep-section-head{max-width:860px;margin-bottom:32px}.ep-section-head h2{margin-bottom:14px}.ep-section-intro{font-size:19px;color:#42576a;margin:0;max-width:820px}
.ep-page section>p:not(.ep-kicker):not(.ep-section-intro):not(.ep-related),.ep-product-content section>p{max-width:940px}
.ep-related{width:min(var(--max),calc(100% - 40px));margin:34px auto 0;padding:18px 22px;border-radius:14px;background:#f1f7fa;color:#40566a}

/* Hero images already contain the approved curved lower edge. Do not mask them again. */
.ep-hero,.ep-home-slide,.ep-article-hero{position:relative;isolation:isolate;background-image:var(--hero)!important;background-size:cover;background-position:center;-webkit-mask-image:none!important;mask-image:none!important;overflow:hidden}
.ep-hero::before,.ep-home-slide::before,.ep-article-hero::before{content:"";position:absolute;z-index:0;inset:0 0 13% 0;background:linear-gradient(90deg,rgba(5,28,47,.84),rgba(5,28,47,.52) 38%,rgba(5,28,47,.10) 72%,rgba(5,28,47,0));pointer-events:none}
.ep-hero-inner,.ep-home-copy,.ep-article-hero-copy{position:relative;z-index:1}
.ep-hero{min-height:clamp(600px,46vw,820px)}
.ep-hero-inner{padding-top:clamp(125px,11vw,190px);padding-bottom:clamp(170px,16vw,255px)}
.ep-hero-inner>*{max-width:680px}.ep-hero-inner p{max-width:640px}
.ep-kicker{color:#0d6dac}.ep-hero .ep-kicker,.ep-home-slide .ep-kicker,.ep-article-hero .ep-kicker{color:#dcecf7}

/* Homepage three-slide carousel */
.ep-home-carousel{position:relative;background:#eef4f7}
.ep-home-slider-track{position:relative;min-height:clamp(620px,47vw,860px)}
.ep-home-slide{position:absolute;inset:0;min-height:100%;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .65s ease,visibility .65s ease}
.ep-home-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}
.ep-home-copy{width:min(var(--max),calc(100% - 40px));margin:auto;padding-top:clamp(130px,11vw,190px);padding-bottom:clamp(190px,17vw,280px);color:#fff}
.ep-home-copy>*{max-width:680px}.ep-home-copy p{font-size:20px;max-width:630px}.ep-home-slide h1{font-size:clamp(46px,5vw,76px)}
.ep-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.ep-btn-ghost{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.6);backdrop-filter:blur(5px)}.ep-btn-secondary{background:#eaf4fa!important;color:var(--navy)!important;border:1px solid #b9d6e6}
.ep-carousel-controls{position:absolute;z-index:5;left:50%;bottom:clamp(92px,8vw,135px);transform:translateX(-50%);display:flex;align-items:center;gap:14px}
.ep-carousel-arrow{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.7);background:rgba(10,48,78,.65);color:#fff;font-size:26px;line-height:1;cursor:pointer}.ep-carousel-arrow:hover{background:#0b67b2}
.ep-carousel-dots{display:flex;gap:8px}.ep-carousel-dot{width:10px;height:10px;border:0;border-radius:999px;background:rgba(255,255,255,.55);padding:0;cursor:pointer;transition:width .25s ease,background .25s ease}.ep-carousel-dot.is-active{width:30px;background:#fff}
.ep-marquee{background:#fff;color:#365269;border-block:1px solid #e1e9ef;padding:11px 0;font-size:14px;font-weight:700;letter-spacing:.02em}

/* Cards, information architecture and section rhythm */
.ep-card-grid{gap:22px}.ep-card{padding:25px 25px 27px}.ep-card p{color:#526575}.ep-card img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
.ep-product-card img{aspect-ratio:4/3;object-fit:contain;padding:16px}.ep-product-card h3{font-size:20px}
.ep-app-intro .ep-card-grid,.ep-app-integration .ep-card-grid,.ep-application-ops .ep-card-grid{grid-template-columns:repeat(4,1fr)}
.ep-decision-note,.ep-product-data-note,.ep-info-panel{margin-top:26px;padding:26px;border:1px solid #d9e7ef;border-radius:18px;background:#f7fbfd}
.ep-info-panel{margin-top:0}.ep-info-panel h3{margin-top:0}.ep-info-panel ul{padding-left:20px}
.ep-feature-split{gap:54px}.ep-feature-split>.ep-media{margin:0}.ep-feature-split>.ep-media img{max-height:none}
.ep-selection-matrix .ep-table-wrap,.ep-engineering-worked .ep-table-wrap,.ep-application-release .ep-table-wrap{box-shadow:0 10px 30px rgba(13,47,79,.06)}
.ep-media-grid .ep-media{margin:0}.ep-app-gallery .ep-media,.ep-engineering-gallery .ep-media,.ep-article-gallery .ep-media{background:#fff;border:1px solid var(--line);border-radius:18px;padding:10px}.ep-app-gallery img,.ep-engineering-gallery img,.ep-article-gallery img{height:100%;max-height:470px;object-fit:contain!important;box-shadow:none}
.ep-media.contain img{object-fit:contain!important;background:#fff;max-height:none!important;width:100%;height:auto}
.ep-media figcaption{margin-top:8px;color:#617485;font-size:14px}

/* RFQ close panels are short, visual and separated from the footer */
.ep-rfq-panel{display:flex!important;align-items:center;justify-content:space-between;gap:36px;padding:42px!important;margin-top:20px!important}.ep-rfq-panel>div{max-width:760px}.ep-rfq-panel h2{margin-bottom:10px}.ep-rfq-panel p{margin:0}.ep-rfq-panel .ep-kicker{color:#cfe8f6}.ep-rfq-compact .ep-btn{flex:0 0 auto}

/* Product page: main image only in preview area */
.single-product .ep-main{padding-bottom:84px}.ep-product-hero-shell{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:58px;align-items:center;padding:58px 0 76px}
.ep-product-main-image{min-height:560px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e1e9ef;border-radius:26px;box-shadow:var(--shadow);padding:28px}.ep-product-main-image img{display:block;width:100%;max-width:600px;aspect-ratio:1/1;object-fit:contain;background:#fff}
.ep-product-summary-custom h1{font-size:clamp(38px,4vw,58px);margin:.15em 0 .35em}.ep-product-short{font-size:19px;color:#465b6d}.ep-product-meta{color:#536879}
.ep-quick-specs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}.ep-quick-specs div{padding:14px 16px;border-radius:14px;background:#f1f7fa;border:1px solid #dce8ef}.ep-quick-specs dt{font-size:12px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;color:#6a7d8b}.ep-quick-specs dd{margin:4px 0 0;font-weight:800;color:var(--navy)}
.ep-product-content>section:first-child{border-top:1px solid #e7eef2}.ep-product-content h2{max-width:820px}.ep-product-content .ep-table-wrap{margin-top:26px}
.woocommerce div.product .woocommerce-product-gallery,.woocommerce div.product .flex-control-thumbs{display:none!important}

/* Articles: image-backed hero, readable measure, no repetitive wall of text */
.ep-article-hero{min-height:clamp(530px,42vw,720px)}.ep-article-hero-copy{padding-top:clamp(110px,10vw,165px);padding-bottom:clamp(160px,15vw,240px);color:#fff}.ep-article-hero h1{color:#fff;font-size:clamp(42px,5vw,68px);max-width:860px;margin:.18em 0}.ep-article-hero a{color:#fff}.ep-article-deck{max-width:760px;font-size:20px}.ep-breadcrumb{font-size:14px;color:#dbe9f1}.ep-article-content{max-width:1060px;padding-top:56px}.ep-article-content>section{padding-block:42px;border-bottom:1px solid #edf1f4}.ep-article-content>section:last-child{border-bottom:0}.ep-article-content p{max-width:900px}.ep-article-content h2{font-size:clamp(29px,3vw,42px)}.ep-article-content .ep-card-grid,.ep-article-content .ep-table-wrap{max-width:100%}.ep-blog-list{padding-block:72px}

/* Contact/footer contrast and spacing */
.ep-footer{margin-top:0;background:#071e2f;color:#d7e6ee}.ep-footer h2,.ep-footer h3{color:#fff}.ep-footer-rfq{max-width:var(--max);padding:68px 20px 58px;grid-template-columns:.9fr 1.1fr;align-items:start}.ep-rfq-copy>p{max-width:560px}.ep-form-wrap{box-shadow:0 20px 55px rgba(0,0,0,.17)}
.ep-moq-note{color:#213343!important;background:var(--sand)!important;border:1px solid #efd59d;border-left:5px solid var(--sand-line);border-radius:16px;padding:22px 24px;margin-top:26px}.ep-moq-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.ep-moq-head strong{font-size:18px;color:#172d3f}.ep-moq-head span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#80530b;background:#ffe9b7;border-radius:999px;padding:5px 9px}.ep-moq-note ul{margin:0;padding-left:20px}.ep-moq-note li{margin:7px 0}.ep-moq-note p{margin:14px 0 0;color:#425463}
.ep-footer-top{border-top:1px solid rgba(255,255,255,.11);padding-top:48px}.ep-footer-top h2{color:#fff!important}.ep-footer-top ul{padding-left:20px}.ep-footer-bottom{color:#afc3ce}
.ep-contact-main{align-items:stretch}.ep-contact-main>div:first-child{padding:34px;background:#f7fbfd;border:1px solid #deebf2;border-radius:20px}.ep-map iframe{min-height:100%;height:100%}

/* Fix headings/contrast on dark modules */
.ep-rfq-panel h1,.ep-rfq-panel h2,.ep-rfq-panel h3,.ep-footer h1,.ep-footer h2,.ep-footer h3{color:#fff}.ep-rfq-panel p,.ep-rfq-panel li{color:#edf7fb}

/* Progressive motion: all content remains visible if JS fails */
.ep-card,.ep-product-card,.ep-post-card{will-change:transform}.ep-card:hover,.ep-product-card:hover,.ep-post-card:hover{transform:translateY(-5px);box-shadow:0 15px 34px rgba(13,47,79,.11)}

@media(max-width:1100px){.ep-app-intro .ep-card-grid,.ep-app-integration .ep-card-grid,.ep-application-ops .ep-card-grid{grid-template-columns:repeat(2,1fr)}.ep-product-hero-shell{gap:36px}.ep-product-main-image{min-height:460px}}
@media(max-width:768px){
 .ep-main{padding-bottom:48px}.ep-home-slider-track{min-height:650px}.ep-home-slide,.ep-hero,.ep-article-hero{background-position:66% center}.ep-home-copy{padding-top:92px;padding-bottom:190px}.ep-home-copy p{font-size:17px}.ep-home-slide h1{font-size:41px}.ep-carousel-controls{bottom:88px}.ep-carousel-arrow{width:38px;height:38px}
 .ep-hero{min-height:570px}.ep-hero-inner{padding-top:95px;padding-bottom:180px}.ep-hero h1{font-size:40px}
 .ep-section-head{margin-bottom:24px}.ep-section-intro{font-size:17px}.ep-page>section,.ep-product-content>section{padding-block:54px}
 .ep-app-intro .ep-card-grid,.ep-app-integration .ep-card-grid,.ep-application-ops .ep-card-grid{grid-template-columns:1fr}
 .ep-rfq-panel{display:block!important;padding:32px 26px!important}.ep-rfq-panel .ep-btn{margin-top:20px}
 .ep-product-hero-shell{grid-template-columns:1fr;padding:34px 20px 58px}.ep-product-main-image{min-height:auto;padding:20px}.ep-product-main-image img{max-width:520px}.ep-quick-specs{grid-template-columns:1fr 1fr}.ep-product-summary-custom h1{font-size:38px}
 .ep-article-hero{min-height:580px;background-position:68% center}.ep-article-hero-copy{padding-top:95px;padding-bottom:185px}.ep-article-hero h1{font-size:40px}.ep-article-content{padding-top:36px}
 .ep-footer-rfq{padding-top:52px}.ep-moq-head{display:block}.ep-moq-head span{display:inline-block;margin-top:8px}.ep-contact-main>div:first-child{padding:24px}
}
@media(max-width:480px){.ep-quick-specs{grid-template-columns:1fr}.ep-home-slide h1,.ep-hero h1,.ep-article-hero h1{font-size:36px}.ep-header-inner{padding-inline:14px}.ep-shell,.ep-page>section:not(.ep-hero):not(.ep-home-carousel):not(.ep-footer-rfq),.ep-product-content>section{width:min(var(--max),calc(100% - 28px))}}
@media(prefers-reduced-motion:reduce){.ep-home-slide{transition:none}.ep-carousel-dot{transition:none}}

/* =========================================================
   v1.2.0 layout refinement: stable split media, product page,
   blog archive, section rhythm and cache-busted repair layer.
   ========================================================= */
:root{--content-wide:1280px;--content-reading:920px;--section-gap:clamp(64px,7vw,104px);--surface-blue:#eef6fa;--surface-warm:#fbfaf7;--panel-border:#dbe7ee;--panel-shadow:0 18px 50px rgba(13,47,79,.08)}
.ep-shell,.ep-page>section:not(.ep-hero):not(.ep-home-carousel):not(.ep-footer-rfq),.ep-product-content>section{width:min(var(--content-wide),calc(100% - 48px));}
.ep-page>section,.ep-product-content>section{padding-block:var(--section-gap)}
.ep-section-head{max-width:930px;margin-bottom:34px}.ep-section-head h2{margin-bottom:12px}.ep-section-intro{font-size:18px;line-height:1.72;color:#526575;max-width:860px}.ep-section-head-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:56px;align-items:end;max-width:none}

/* Stable 50/50 image + copy pattern. The visual cell is explicit so shortcode/autop cannot collapse it. */
.ep-split{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:clamp(34px,4.5vw,68px)!important;align-items:center!important}
.ep-split>*{min-width:0}.ep-split>div:first-child{align-self:center}
.ep-split-visual{min-width:0;display:flex;align-items:center;justify-content:center;align-self:stretch;background:#fff;border:1px solid var(--panel-border);border-radius:24px;padding:18px;box-shadow:var(--panel-shadow);overflow:hidden}
.ep-split-visual>.ep-media,.ep-split>.ep-media{margin:0!important;width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.ep-split-visual>.ep-media img,.ep-split>.ep-media img{width:100%;height:auto;max-height:540px;object-fit:contain!important;border-radius:16px;box-shadow:none!important;background:#fff}
.ep-split-visual>.ep-media:not(.contain) img,.ep-split>.ep-media:not(.contain) img{min-height:360px;object-fit:cover!important}
.ep-feature-split{padding-top:clamp(58px,6vw,88px)!important;padding-bottom:clamp(58px,6vw,88px)!important}
.ep-feature-split h2{max-width:670px}.ep-feature-split p{max-width:660px}.ep-inline-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:26px}.ep-inline-actions .ep-text-link{padding:10px 0}

/* Home positive-drive visual uses real source-backed product + sprocket drawings. */
.ep-home-drive-section{align-items:stretch!important}.ep-drive-visual{width:100%;display:grid;grid-template-columns:1.2fr .8fr;gap:14px;align-items:stretch}.ep-drive-product,.ep-drive-sprockets>div{position:relative;background:#f7fafc;border:1px solid #e1ebf0;border-radius:18px;padding:34px 18px 18px;display:flex;align-items:center;justify-content:center;min-height:210px}.ep-drive-product{grid-row:1 / span 2;min-height:460px}.ep-drive-product img{width:100%;height:100%;max-height:390px;object-fit:contain}.ep-drive-sprockets{display:grid;grid-template-rows:1fr 1fr;gap:14px}.ep-drive-sprockets img{max-width:190px;max-height:175px;object-fit:contain}.ep-visual-label{position:absolute;left:14px;top:10px;font-size:12px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;color:#587083}.ep-visual-note{grid-column:1/-1;margin:0;padding:14px 16px;background:#eaf5fb;border-radius:14px;color:#38576c;font-size:14px;line-height:1.55}

/* General page rhythm: cards and visual sections should fill their grid instead of leaving empty columns. */
.ep-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.ep-app-intro .ep-card-grid,.ep-app-integration .ep-card-grid,.ep-application-ops .ep-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.ep-card{height:100%}.ep-card-title{display:block;color:var(--navy);font-size:18px;line-height:1.35;margin-bottom:10px}.ep-card p:last-child{margin-bottom:0}.ep-media-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ep-media-grid>.ep-media{height:100%;margin:0}.ep-media-grid>.ep-media img{height:100%;min-height:280px;object-fit:cover}.ep-media-grid>.ep-media.contain img{object-fit:contain!important;background:#fff}
.ep-table-wrap{margin-top:24px;box-shadow:0 12px 30px rgba(13,47,79,.045)}.ep-spec-table tr:last-child td{border-bottom:0}

/* Blog archive: dedicated engineering-consultation hero and editorial cards. */
.ep-blog-hero{min-height:clamp(590px,46vw,760px);background-position:center center!important;background-image:linear-gradient(90deg,rgba(7,29,47,.82) 0%,rgba(7,29,47,.62) 34%,rgba(7,29,47,.18) 62%,rgba(7,29,47,.03) 100%),var(--hero)!important}
.ep-blog-hero .ep-hero-inner{padding-top:clamp(118px,10vw,170px);padding-bottom:clamp(180px,15vw,240px)}.ep-blog-hero .ep-hero-inner p{max-width:650px}.ep-blog-intro{padding-top:78px!important;padding-bottom:32px!important}.ep-topic-strip{display:flex;flex-wrap:wrap;gap:10px}.ep-topic-strip span{padding:8px 13px;border-radius:999px;background:#edf5f9;color:#31546c;font-size:13px;font-weight:800}.ep-blog-list{padding-top:30px!important;padding-bottom:90px!important}.ep-post-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.ep-post-card{padding:0;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}.ep-post-image{display:block;background:#eef4f7}.ep-post-card img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;padding:0}.ep-post-card-body{padding:22px 24px 25px;display:flex;flex-direction:column;flex:1}.ep-post-card-body h2{font-size:22px;line-height:1.3;margin:4px 0 12px}.ep-post-card-body h2 a{color:var(--navy);text-decoration:none}.ep-post-card-body p{margin:0 0 16px;color:#53687a}.ep-post-card-body .ep-text-link{margin-top:auto}.ep-post-type{font-size:12px!important;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:#0b67b2!important}

/* Product page: custom top template, no WooCommerce tabs/gallery shell. */
.single-product .ep-woocommerce{width:100%;max-width:none;margin:0;padding:0}.single-product .woocommerce-tabs,.single-product .wc-tabs,.single-product .woocommerce-product-gallery,.single-product .summary.entry-summary{display:none!important}.ep-product-page{margin:0}.ep-product-hero-shell{width:min(var(--content-wide),calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:minmax(420px,.95fr) minmax(0,1.05fr);gap:clamp(42px,5vw,78px);align-items:center;padding:58px 0 78px}.ep-product-main-image{min-height:520px;background:#fff;border:1px solid #dfe9ef;border-radius:26px;padding:30px;display:flex;align-items:center;justify-content:center;box-shadow:var(--panel-shadow)}.ep-product-main-image img{display:block;width:100%;max-width:600px;max-height:600px;aspect-ratio:1/1;object-fit:contain;background:#fff}.ep-product-summary-custom{padding:14px 0}.ep-product-summary-custom .ep-kicker{margin-bottom:8px}.ep-product-summary-custom h1{font-size:clamp(40px,4.3vw,64px);line-height:1.08;margin:.08em 0 .32em;color:var(--navy)}.ep-product-short{font-size:18px;line-height:1.7;color:#43596b;max-width:680px}.ep-quick-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:26px 0}.ep-quick-specs div{padding:14px 16px;border:1px solid #dce8ee;border-radius:14px;background:#f4f9fb}.ep-quick-specs dt{font-size:11px;font-weight:850;letter-spacing:.07em;text-transform:uppercase;color:#6b7d8c}.ep-quick-specs dd{margin:5px 0 0;color:#103c5e;font-weight:800;line-height:1.38}.ep-product-meta-row{display:flex;flex-wrap:wrap;gap:12px 28px;padding:16px 0;border-block:1px solid #e5edf2;color:#4f6576}.ep-product-meta-row strong{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:#7a8a96;margin-bottom:3px}.ep-product-top-note{font-size:14px;line-height:1.65;color:#607484;margin-top:20px;max-width:650px}.ep-product-content{padding-bottom:10px}.ep-product-content>section{position:relative}.ep-product-content>section:first-child{border-top:1px solid #e5edf2}.ep-product-content>section:nth-of-type(even){background:#f5f9fb}.ep-product-content h2{font-size:clamp(30px,3.1vw,45px);max-width:820px}.ep-product-content>section>p{max-width:980px}.ep-product-content .ep-split>div:first-child p{max-width:650px}.ep-product-content .ep-split-visual{min-height:390px}.ep-product-content .ep-split-visual .ep-media.contain img{max-height:560px!important}.ep-product-content .ep-rfq-panel{margin-bottom:40px!important}

/* Articles: no giant wall, media interleaved with decisions. */
.ep-article-content{max-width:1120px;padding-top:62px;padding-bottom:90px}.ep-article-content>section{padding-block:52px;border-bottom:1px solid #e9eff3}.ep-article-content>section:last-child{border-bottom:0}.ep-article-content .ep-split{grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr)!important}.ep-article-content .ep-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-article-content .ep-split-visual{min-height:350px}.ep-article-content .ep-split-visual .ep-media img{max-height:480px}.ep-closeout{background:#f7fbfd;border:1px solid #e0ebf1;border-radius:26px;padding:38px!important;margin-top:28px}.ep-closeout .ep-checklist{margin-top:22px}

/* Footer/RFQ separation and contrast. */
.ep-main{padding-bottom:72px}.single-product .ep-main{padding-bottom:72px}.ep-footer{margin-top:0}.ep-footer-rfq{padding-top:70px}.ep-footer-top{margin-top:14px}.ep-moq-note{box-shadow:0 8px 24px rgba(0,0,0,.08)}

@media(max-width:1100px){.ep-section-head-row{grid-template-columns:1fr;gap:16px}.ep-app-intro .ep-card-grid,.ep-app-integration .ep-card-grid,.ep-application-ops .ep-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-product-hero-shell{grid-template-columns:minmax(350px,.9fr) minmax(0,1.1fr);gap:42px}.ep-product-main-image{min-height:440px}.ep-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.ep-shell,.ep-page>section:not(.ep-hero):not(.ep-home-carousel):not(.ep-footer-rfq),.ep-product-content>section{width:min(100% - 30px,var(--content-wide))}.ep-split,.ep-article-content .ep-split{grid-template-columns:1fr!important;gap:28px!important}.ep-split-visual{min-height:auto}.ep-split-visual>.ep-media:not(.contain) img,.ep-split>.ep-media:not(.contain) img{min-height:260px}.ep-drive-visual{grid-template-columns:1fr}.ep-drive-product{grid-row:auto;min-height:330px}.ep-drive-sprockets{grid-template-columns:1fr 1fr;grid-template-rows:auto}.ep-visual-note{grid-column:auto}.ep-product-hero-shell{grid-template-columns:1fr;width:min(100% - 30px,var(--content-wide));padding:36px 0 60px}.ep-product-main-image{min-height:auto;padding:20px}.ep-product-summary-custom h1{font-size:38px}.ep-quick-specs{grid-template-columns:1fr 1fr}.ep-post-grid{grid-template-columns:1fr}.ep-article-content .ep-card-grid{grid-template-columns:1fr}.ep-app-intro .ep-card-grid,.ep-app-integration .ep-card-grid,.ep-application-ops .ep-card-grid{grid-template-columns:1fr}.ep-media-grid{grid-template-columns:1fr}.ep-blog-hero{background-position:64% center!important}.ep-blog-hero .ep-hero-inner{padding-top:96px;padding-bottom:180px}.ep-main{padding-bottom:48px}}
@media(max-width:480px){.ep-quick-specs{grid-template-columns:1fr}.ep-drive-sprockets{grid-template-columns:1fr}.ep-product-main-image{border-radius:20px}.ep-product-summary-custom h1{font-size:34px}.ep-section-head h2{font-size:32px}.ep-closeout{padding:28px 22px!important}}

/* v1.2.0 final layout hardening: no one-column split ghosts, richer category media, readable technical images. */
.ep-prose-band>div{max-width:920px;margin-inline:auto}
.ep-category-visual{min-height:390px}
.ep-category-visual .ep-media{height:100%;margin:0}
.ep-category-visual .ep-media img{width:100%;height:100%;max-height:520px;object-fit:contain;background:#fff}
.ep-compatibility-media{max-width:860px;margin:10px auto 34px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 10px 30px rgba(13,47,79,.06)}
.ep-compatibility-media .ep-media{margin:0}.ep-compatibility-media .ep-media img{max-height:560px;object-fit:contain;background:#fff;box-shadow:none}
.ep-release-record{padding-top:60px!important;padding-bottom:60px!important}.ep-release-record>p{max-width:980px}
.ep-about-support-media .ep-media{margin:0}.ep-about-support-media img{aspect-ratio:4/3;object-fit:cover}
.ep-contact-support-media{width:min(940px,calc(100% - 40px));margin:0 auto 70px;padding:18px;border:1px solid var(--line);border-radius:22px;background:#fff}.ep-contact-support-media .ep-media{margin:0}.ep-contact-support-media img{object-fit:contain;max-height:650px;background:#fff}
.single-product .ep-product-content{border-top:1px solid #e6edf2}.single-product .ep-product-content>section:first-child{border-top:0}.single-product .ep-product-content>section:first-child h2{margin-top:0}
@media(max-width:800px){.ep-category-visual{min-height:auto}.ep-compatibility-media,.ep-contact-support-media{width:min(100% - 30px,940px);padding:12px}}
