:root{--ink:#333536;--muted:#777;--accent:#8b9b45;--paper:#fff;--soft:#f3f3f0;--line:#deded9;--max:1160px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;line-height:1.7;font-size:16px}.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:5}.header-inner{max-width:var(--max);margin:auto;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-title{font-size:24px;font-weight:700;color:var(--ink);text-decoration:none}.custom-logo{max-height:76px;width:auto}.primary-navigation ul{list-style:none;display:flex;gap:28px;margin:0;padding:0}.primary-navigation a{color:var(--ink);text-decoration:none;font-size:13px;text-transform:uppercase;letter-spacing:.08em}.primary-navigation a:hover,.text-link:hover{color:var(--accent)}.menu-toggle{display:none}.hero{min-height:470px;display:grid;grid-template-columns:1fr 1fr;background:#f1f1ed}.hero-copy{padding:90px max(7vw,30px);align-self:center}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:700;color:var(--accent);margin:0 0 12px}.hero h1{font-size:clamp(38px,5vw,66px);line-height:1.05;text-transform:uppercase;letter-spacing:.03em;margin:0 0 22px;font-weight:300}.hero h1 strong{font-weight:800}.hero-art{display:grid;place-items:center;background:linear-gradient(135deg,#d9d9d1,#aeb3a4);color:#4e5148;text-align:center;padding:30px}.section-wrap{max-width:var(--max);margin:auto;padding:78px 24px}.intro{max-width:850px;text-align:center}.intro h2,.services h2,.quality-band h2{font-size:34px;line-height:1.2;font-weight:400;margin:0 0 24px}.text-link{display:inline-block;margin-top:22px;color:var(--ink);font-weight:700;text-transform:uppercase;letter-spacing:.1em;text-decoration:none;border-bottom:2px solid var(--accent);padding-bottom:5px}.services{background:var(--soft);max-width:none;padding-left:max(24px,calc((100% - var(--max))/2));padding-right:max(24px,calc((100% - var(--max))/2))}.services>p:not(.eyebrow){max-width:850px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:38px}.service-grid h3{font-size:18px;font-weight:500}.image-placeholder{height:180px;background:linear-gradient(135deg,#d4d5cf,#aeb1a5);display:grid;place-items:center;color:#5c6054;font-size:13px}.quality-band{background:#444943;color:#fff;padding:76px 24px;text-align:center}.quality-band>div{max-width:700px;margin:auto}.quality-band .eyebrow{color:#c5d18b}.button{display:inline-block;background:var(--accent);color:white;text-decoration:none;padding:12px 24px;text-transform:uppercase;letter-spacing:.08em;font-size:12px;margin-top:14px}.page-heading{background:var(--soft);padding:50px 0}.page-heading .section-wrap{padding-top:0;padding-bottom:0}.page-heading h1,.page-content h1{font-size:40px;font-weight:400;line-height:1.2}.page-content{min-height:420px}.page-content h2{font-size:25px;font-weight:500;margin-top:36px}.page-content a{color:#667633}.site-footer{background:#292d2a;color:#fff;padding:55px 24px}.footer-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:25px}.site-footer h2{font-size:30px;font-weight:400;margin:0}.footer-phone{align-self:center}.footer-phone a{font-size:28px;color:#fff;text-decoration:none}.copyright{grid-column:1/-1;border-top:1px solid #555;padding-top:18px;font-size:12px;color:#bbb}@media(max-width:800px){.header-inner{flex-wrap:wrap}.menu-toggle{display:block;margin-left:auto;background:transparent;border:1px solid var(--line);padding:8px 12px}.primary-navigation{display:none;width:100%}.primary-navigation.is-open{display:block}.primary-navigation ul{display:block}.primary-navigation li{padding:9px 0}.hero{grid-template-columns:1fr}.hero-copy{padding:65px 28px}.hero-art{min-height:220px}.service-grid{grid-template-columns:repeat(2,1fr)}.footer-inner{grid-template-columns:1fr}}@media(max-width:480px){.service-grid{grid-template-columns:1fr}.section-wrap{padding:55px 22px}.hero h1{font-size:39px}}

.hero-art{padding:0;overflow:hidden}.hero-art img{width:100%;height:100%;min-height:470px;object-fit:cover;display:block}.service-image{width:100%;height:180px;object-fit:cover;display:block}.profile-strip{text-align:center}.profile-preview{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px auto;max-width:850px}.profile-preview img{width:100%;height:250px;object-fit:cover}.feature-image{max-width:100%;width:720px;max-height:360px;object-fit:cover;display:block;margin:20px 0 30px}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:35px}.portfolio-card{border-bottom:1px solid var(--line);padding-bottom:18px}.portfolio-thumb{height:190px;overflow:hidden;background:var(--soft)}.portfolio-thumb img{width:100%;height:100%;object-fit:cover}.portfolio-card h2{font-size:17px;margin:12px 0}.sector-nav{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);text-transform:uppercase;font-size:12px;letter-spacing:.08em}@media(max-width:800px){.portfolio-grid{grid-template-columns:repeat(2,1fr)}.profile-preview{grid-template-columns:1fr}.hero-art img{min-height:240px}}@media(max-width:480px){.portfolio-grid{grid-template-columns:1fr}}
/* Version 1.2 refinements */
:root{--accent:#d71920;--ink:#343b43;--soft:#f3f3f1;--line:#dedfdf}
.skip-link{position:absolute;left:-9999px;top:10px;background:#fff;padding:10px;z-index:99}.skip-link:focus{left:10px}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{box-shadow:0 2px 12px rgba(0,0,0,.035)}.header-inner{min-height:104px}.site-title{display:block;font-size:27px;line-height:1.05;letter-spacing:.02em}.site-title span{display:block;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.22em;margin-top:8px;color:var(--accent)}.primary-navigation a{font-size:12px;font-weight:600;letter-spacing:.09em}.primary-navigation li{position:relative}.primary-navigation a{padding:12px 0}.primary-navigation a:after{content:"";display:block;height:2px;width:0;background:var(--accent);transition:width .2s}.primary-navigation a:hover:after,.primary-navigation .current-menu-item>a:after{width:100%}
.hero{min-height:510px;background:#efefeb}.hero-copy{max-width:690px;justify-self:end;width:100%}.hero-art{position:relative;overflow:hidden;background:linear-gradient(135deg,#d6d8cf 0%,#b8bdae 55%,#929b82 100%)}.hero-art:before,.hero-art:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.45);transform:rotate(-18deg);width:55%;height:48%;right:12%;top:25%;box-shadow:18px 18px 0 rgba(255,255,255,.12),36px 36px 0 rgba(255,255,255,.08)}.hero-art span{position:relative;z-index:1;background:rgba(255,255,255,.78);padding:10px 15px;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.intro{padding-top:90px;padding-bottom:90px}.intro h2{font-size:clamp(30px,4vw,43px);letter-spacing:.02em}.intro p:not(.eyebrow){color:#656963}.services h2{font-size:clamp(29px,4vw,40px)}.service-grid article{background:#fff;padding-bottom:15px}.service-grid h3{padding:0 14px}.image-placeholder{position:relative;overflow:hidden;background:linear-gradient(135deg,#d7d9d0,#aeb5a2)}.image-placeholder:after{content:"";position:absolute;width:48%;height:52%;border:1px solid rgba(255,255,255,.55);transform:skewY(-16deg);box-shadow:12px 12px 0 rgba(255,255,255,.16)}.quality-band{background:#454b43}.page-heading{background:#f1f2ed;border-bottom:1px solid var(--line)}.page-heading h1,.page-content h1{letter-spacing:.01em}.page-content{max-width:1020px}.page-content p,.page-content li{color:#5d625c}.page-content h2{color:#3c403a}.feature-image{display:block;max-width:100%;height:auto;margin:28px 0}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin:35px 0}.portfolio-card{border:1px solid var(--line);background:#fff;padding:0 0 16px}.portfolio-card>a{color:var(--ink);text-decoration:none}.portfolio-card img,.portfolio-placeholder{display:block;width:100%;height:220px;object-fit:cover;background:linear-gradient(135deg,#e0e2db,#b9c0ae)}.portfolio-placeholder{display:grid;place-items:center;color:#68705c;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.portfolio-card h2{font-size:17px;margin:15px 16px 5px}.portfolio-card p{margin:0 16px;font-size:14px}.editor-note{background:#f5f5f1;padding:18px;border-left:3px solid var(--accent)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px}.contact-form{display:grid;gap:9px}.contact-form label{font-size:13px;font-weight:700;margin-top:8px}.contact-form input,.contact-form textarea{width:100%;padding:12px;border:1px solid #d5d8d0;background:#fff;font:inherit}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.contact-form .button{border:0;cursor:pointer;justify-self:start}.form-notice{padding:12px;background:#f7eee8;border-left:3px solid #a66}.form-notice.success{background:#eff4e8;border-color:var(--accent)}.footer-inner{align-items:start}.footer-bottom{grid-column:1/-1;border-top:1px solid #555;padding-top:15px;display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-bottom p{font-size:12px;color:#bbb}.footer-bottom ul{display:flex;gap:18px;list-style:none;margin:0;padding:0}.footer-bottom a{font-size:12px;color:#ddd;text-decoration:none}
@media(max-width:800px){.header-inner{min-height:80px}.menu-toggle{width:44px;height:40px;display:flex;flex-direction:column;justify-content:center;gap:5px}.menu-toggle>span:not(.screen-reader-text){display:block;width:20px;height:2px;background:var(--ink);margin:auto}.primary-navigation{background:#fff}.primary-navigation ul{padding:8px 0}.primary-navigation li{border-top:1px solid var(--line);padding:8px 12px}.primary-navigation a:after{display:none}.contact-layout{grid-template-columns:1fr;gap:32px}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-bottom{display:block}}
@media(max-width:480px){.portfolio-grid{grid-template-columns:1fr}.portfolio-card img,.portfolio-placeholder{height:210px}.hero{min-height:0}.hero-art{min-height:230px}.footer-phone a{font-size:24px}}

/* Version 1.3.0: portfolio and sector-page refinements */
.service-image{display:block;width:100%;height:190px;object-fit:cover;background:#e7e7e3}.profile-strip{text-align:center}.profile-preview{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px auto;max-width:850px}.profile-preview img{width:100%;height:260px;object-fit:cover}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:34px}.portfolio-card{margin:0;background:#f3f3f0;padding:0 0 18px}.portfolio-card img{display:block;width:100%;aspect-ratio:1.14/1;object-fit:contain;background:#343b45}.portfolio-card h2{font-size:18px;font-weight:500;margin:15px 18px 4px}.portfolio-card a{color:var(--ink);text-decoration:none}.portfolio-card time{display:block;margin:0 18px;color:#888;font-size:12px;letter-spacing:.08em}.portfolio-placeholder{min-height:220px;background:#343b45;color:#fff;display:grid;place-items:center;text-align:center;padding:25px}.asset-note{font-size:13px;color:#777;margin-top:28px}.feature-image{width:100%;max-width:480px;height:auto;object-fit:cover}.sector-layout{display:grid;grid-template-columns:minmax(250px, .9fr) 1.1fr;align-items:center;gap:55px}.sector-nav{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;padding:28px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.sector-nav a{color:var(--ink);text-decoration:none}.sector-nav a:hover{color:var(--accent)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px}.contact-form{display:grid;gap:9px}.contact-form input,.contact-form textarea{width:100%;padding:12px;border:1px solid #d6d6d1;font:inherit;background:#fff}.contact-form label{font-size:13px;font-weight:700}.contact-form button{justify-self:start;border:0;cursor:pointer}.form-notice{padding:12px 16px;background:#f7e9e5}.form-notice.success{background:#edf3e4;color:#3c5522}@media(max-width:760px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sector-layout,.contact-layout{grid-template-columns:1fr;gap:25px}.profile-preview{grid-template-columns:1fr}.sector-nav{gap:14px}}@media(max-width:480px){.portfolio-grid{grid-template-columns:1fr}}

/* Version 1.4.0 refinements */
.ep-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.single-portfolio{max-width:1000px}
.single-portfolio-image{margin:0 auto 32px;text-align:center}
.single-portfolio-image img{max-width:100%;height:auto;max-height:720px;object-fit:contain}
.single-portfolio-copy{max-width:760px;margin:0 auto}
.editor-added-content{padding-top:0;padding-bottom:45px}
.editor-note{border-left:3px solid var(--accent);padding:22px 26px;background:var(--soft)}
.editor-note>*:first-child{margin-top:0}
.hero-art img{position:relative;z-index:1;width:100%;height:100%;min-height:510px;object-fit:cover}
@media(max-width:800px){.hero-art img{min-height:230px}.single-portfolio{padding-top:48px;padding-bottom:48px}}


/* Version 1.5.0: expanded services and portfolio archive */
.service-grid article{min-width:0}.service-grid article h2{font-size:19px;margin:16px 14px 8px}.service-grid article p{font-size:14px;color:#62675f;margin:0 14px 18px}.services-page>.service-grid{margin:42px 0}.services-page .editor-added-content{margin-top:42px}.portfolio-card .wp-post-image{transition:transform .35s ease}.portfolio-card a{display:block;overflow:hidden}.portfolio-card a:hover .wp-post-image{transform:scale(1.025)}.portfolio-card .wp-post-image{width:100%;height:220px;object-fit:contain;background:#343b45}.portfolio-card .excerpt{padding:0 18px}.portfolio-card .post-categories{margin:0 18px 8px;padding:0;list-style:none;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.portfolio-card .post-categories a{display:inline;color:var(--accent)}.site-content{min-height:45vh}.page-content img{max-width:100%;height:auto}.page-content figure{margin-left:0;margin-right:0}.page-content blockquote{border-left:3px solid var(--accent);padding-left:22px;color:#62675f;margin-left:0}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Version 1.6.0: original-brand and imported-source portfolio presentation */
.brand{display:flex;align-items:center;gap:13px}.brand-mark{display:block;width:54px;height:54px;object-fit:contain}.brand-wordmark{display:block;font-size:25px;line-height:1.05;font-weight:700;letter-spacing:.01em;color:var(--ink)}.brand-wordmark small{display:block;font-size:10px;line-height:1.4;font-weight:500;text-transform:uppercase;letter-spacing:.22em;color:var(--accent);margin-top:6px}.portfolio-card img{object-fit:contain;background:#343b45}.single-portfolio-image img{display:block;width:100%;height:auto;max-height:740px;object-fit:contain;background:#343b45}.hero-art img{object-fit:cover}.setup-complete{padding:12px 16px;background:#edf4e6;border-left:4px solid #879747;margin:18px 0}
@media(max-width:800px){.brand-mark{width:43px;height:43px}.brand-wordmark{font-size:21px}}

/* V7: sector layouts, original navigation proportions and image resilience */
.sector-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:46px;align-items:center}
.sector-layout .feature-image{width:100%;max-height:420px;margin:0;object-fit:cover}
.sector-layout p:first-child{margin-top:0}
.sector-nav{max-width:var(--max);margin:0 auto 70px;padding:22px 24px;border-top:1px solid var(--line);display:flex;justify-content:center;gap:28px;flex-wrap:wrap}
.sector-nav a{color:var(--ink);text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.08em}
.sector-nav a:hover{color:var(--accent)}
.editor-added-content{max-width:var(--max);margin:0 auto;padding-top:0}
.portfolio-card>a{display:block;color:inherit;text-decoration:none}
.portfolio-card img{display:block;width:100%;aspect-ratio:1.14;object-fit:contain;background:#f6f6f3}
.portfolio-card h2{font-weight:500}
.contact-form input,.contact-form textarea{width:100%;padding:12px;border:1px solid #cfd0ca;background:#fff;font:inherit;margin:5px 0 16px}
.contact-form label{display:block;font-size:13px;font-weight:700}
.contact-form button{border:0;cursor:pointer}
.ep-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:800px){.sector-layout{grid-template-columns:1fr;gap:24px}.sector-nav{justify-content:flex-start;gap:14px}.sector-layout .feature-image{max-height:320px}}

/* V8: image migration and visual refinements */
.brand-mark{width:54px;height:54px;object-fit:contain;vertical-align:middle}.brand .site-title{display:flex;align-items:center;gap:13px}.brand-wordmark{display:block}.hero-art img{width:100%;height:100%;min-height:510px;object-fit:cover;display:block}.service-grid article{overflow:hidden}.service-grid .service-image{transition:transform .35s ease}.service-grid article:hover .service-image{transform:scale(1.025)}.sector-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:42px;align-items:center}.sector-layout .feature-image{width:100%;max-height:430px;object-fit:cover;margin:0}.sector-layout p:first-child{margin-top:0}@media(max-width:800px){.sector-layout{grid-template-columns:1fr;gap:24px}.hero-art img{min-height:250px}}

/* V11: clearer original-site section hierarchy and sector cards */
.sectors{text-align:center}.sectors h2{font-size:clamp(28px,3.6vw,40px);font-weight:400;margin:0 0 30px}.sector-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.sector-card{display:block;color:var(--ink);text-decoration:none;background:#f3f3f1;text-align:left;overflow:hidden}.sector-card img{width:100%;height:220px;object-fit:cover;display:block}.sector-card span{display:block;font-size:17px;font-weight:600;padding:18px}.sector-card:hover span{color:var(--accent)}.hero-art:before,.hero-art:after{display:none}.hero-copy{padding-top:76px;padding-bottom:76px}.profile-strip{padding-top:70px;padding-bottom:80px}.site-header .custom-logo{max-width:260px;max-height:80px;object-fit:contain}.service-grid article{border:1px solid #e7e7e3}@media(max-width:800px){.sector-cards{grid-template-columns:1fr}.sector-card img{height:220px}.hero-copy{padding-top:52px;padding-bottom:52px}}

/* V13: restrained original-contact wording; no unverified postal address */
.ep-contact-original{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,90px);align-items:start}.ep-contact-original h2{font-size:clamp(27px,3vw,38px);font-weight:400;margin:0 0 20px}.ep-contact-intro{max-width:480px}.ep-contact-telephone a{font-size:clamp(24px,3vw,36px);color:var(--ink);text-decoration:none;font-weight:600}.ep-contact-form-wrap{background:#f5f5f2;padding:clamp(22px,3vw,40px)}.ep-contact-form-wrap h2{font-size:27px}.ep-contact-form-wrap .contact-form{margin-top:18px}@media(max-width:800px){.ep-contact-original{grid-template-columns:1fr}}

/* V14: Source-aligned Contact page. */
.ep-contact-source{max-width:960px;padding-top:60px;padding-bottom:80px}
.ep-contact-source>p:first-child{margin:0 0 28px}
.ep-contact-source h4{font-size:17px;font-weight:700;letter-spacing:.015em;margin:28px 0 16px}
.ep-contact-source h4 a{color:inherit;text-decoration:none}
.ep-contact-source .ep-original-contact-form{max-width:680px;display:flex;flex-direction:column;gap:7px}
.ep-contact-source .ep-original-contact-form label{font-weight:400;margin-top:8px}
.ep-contact-source .ep-original-contact-form input:not([type=hidden]),.ep-contact-source .ep-original-contact-form textarea{width:100%;max-width:100%;padding:12px;border:1px solid #ccc;border-radius:0;background:#fff;font:inherit;color:inherit}
.ep-contact-source .ep-original-contact-form button{align-self:flex-start;cursor:pointer}
.ep-contact-source address{font-style:normal;line-height:1.8}

/* V17: Original multi-image hero, restored editor images and contact map. */
.ep-hero-slideshow{position:relative;min-height:510px;isolation:isolate}
.ep-hero-slideshow .ep-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility .8s ease;z-index:0}
.ep-hero-slideshow .ep-slide.is-active{opacity:1;visibility:visible;z-index:1}
.ep-hero-slideshow .ep-slide img{width:100%;height:100%;min-height:510px;object-fit:cover;display:block}
.ep-slide-controls{position:absolute;z-index:3;right:14px;bottom:14px;display:flex;gap:6px}
.ep-slide-controls button{border:1px solid #ddd;background:rgba(255,255,255,.9);color:#222;padding:7px 12px;cursor:pointer}
.ep-restored-editor-image{margin:0 0 30px}.ep-restored-editor-image img,.ep-editor-primary .ep-restored-photo{display:block;max-width:100%;width:min(100%,720px);height:auto}
.ep-quality-certification{display:block;width:150px;height:auto;margin:12px 0 25px}
.ep-contact-map{margin:28px 0 0;max-width:850px}.ep-contact-map iframe{width:100%;height:360px;border:1px solid #ddd}.ep-contact-map p{margin:8px 0;font-size:14px}
@media(max-width:800px){.ep-hero-slideshow{min-height:250px}.ep-hero-slideshow .ep-slide img{min-height:250px}}
@media(prefers-reduced-motion:reduce){.ep-hero-slideshow .ep-slide{transition:none}}

/* V22: consistent page rhythm, navigation, keyboard and portfolio presentation. */
:root{--max:1160px}
.site-header .header-inner{gap:28px}
.primary-navigation a{display:inline-block;line-height:1.45}
.primary-navigation a:focus-visible,.site-footer a:focus-visible,.button:focus-visible,.menu-toggle:focus-visible,.ep-slide-controls button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.primary-navigation .current-menu-ancestor>a:after,.primary-navigation .current_page_item>a:after{width:100%}
.page-heading{padding:42px 0}
.page-heading h1{margin:0;font-size:clamp(30px,3.5vw,42px);line-height:1.2}
.page-content>h2:first-child,.page-content>h3:first-child{margin-top:0}
.page-content p,.page-content li{overflow-wrap:break-word}
.page-content ul,.page-content ol{padding-left:1.5em}
.portfolio-grid{align-items:start}
.portfolio-card{min-width:0}
.portfolio-card .ep-portfolio-date{font-size:13px;color:var(--muted);margin:2px 0 14px}
.portfolio-card a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.portfolio-card img{height:auto;aspect-ratio:1.14;object-fit:contain}
.site-footer .footer-bottom{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.2);padding-top:20px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.site-footer .footer-bottom p{margin:0;font-size:13px;color:#d0d3ce}
.site-footer .footer-bottom ul{display:flex;flex-wrap:wrap;gap:18px;list-style:none;margin:0;padding:0}
.site-footer .footer-bottom a{color:#fff;text-decoration:underline;text-underline-offset:3px}
@media(max-width:800px){.primary-navigation.is-open{padding:10px 0 16px}.primary-navigation.is-open a{padding:10px 0}.site-header .header-inner{min-height:84px}.site-footer .footer-bottom{display:block}.site-footer .footer-bottom nav{margin-top:12px}}

/* V23: screenshot-matched original site framing and two-level header. */
:root{--max:1052px;--ink:#343b45;--muted:#687586;--soft:#f8f8f8;--accent:#e21c1b}
body{background-color:#ededed;color:#343b45;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240' viewBox='0 0 240 240'%3E%3Cg fill='none' stroke='%23fff' stroke-width='2' opacity='.88'%3E%3Cpath d='M16 15h40v68H16zM9 15v68m54-68v68M16 28h40M16 70h40M83 12h63v75H83zM93 12v75m43-75v75M83 22h63M83 77h63M169 17h55v64h-55zM179 17v64m35-64v64M169 28h55M169 70h55M12 135h48v76H12zM22 135v76m28-76v76M12 148h48M12 198h48M85 138h66v66H85zM95 138v66m46-66v66M85 148h66M85 193h66M170 137h57v70h-57zM180 137v70m37-70v70M170 147h57M170 197h57%3C/g%3E%3C/svg%3E")}
.site-header,.site-content,.site-footer{width:min(100%,1052px);margin-left:auto;margin-right:auto}
.site-header.ep-original-header{background:#fff;border:0;box-shadow:none}
.ep-original-header .ep-logo-panel{height:205px;display:flex;align-items:center;justify-content:center;background:#fff}
.ep-original-header .brand{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.ep-original-header .ep-logo-link{display:flex;align-items:center;justify-content:center}
.ep-original-header .brand-mark,.ep-original-header .custom-logo{display:block;max-width:155px;width:auto;max-height:145px;height:auto;object-fit:contain}
.ep-original-header .ep-title-navigation{position:relative;min-height:143px;padding:24px 18px 19px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#343b45;color:#fff}
.ep-original-header .ep-site-name{font-size:clamp(34px,4vw,46px);font-weight:300;line-height:1.22;letter-spacing:.005em;text-decoration:none;color:#fff;margin:0 0 11px}
.ep-original-header .primary-navigation{display:block;width:auto}
.ep-original-header .primary-navigation ul{display:flex;justify-content:center;align-items:center;gap:28px;margin:0;padding:0;list-style:none;flex-wrap:wrap}
.ep-original-header .primary-navigation li{padding:0;border:0}
.ep-original-header .primary-navigation a{color:#c2c4c7;font-size:13px;font-weight:400;letter-spacing:.065em;text-decoration:none;line-height:1.4;padding:3px 0 5px;display:inline-block}
.ep-original-header .primary-navigation a:hover,.ep-original-header .primary-navigation .current-menu-item>a,.ep-original-header .primary-navigation .current_page_item>a,.ep-original-header .primary-navigation .current-menu-ancestor>a{color:#fff}
.ep-original-header .primary-navigation a:after{background:#fff;height:2px;transition:none;margin-top:2px}
.ep-original-header .primary-navigation .current-menu-item>a:after,.ep-original-header .primary-navigation .current_page_item>a:after,.ep-original-header .primary-navigation .current-menu-ancestor>a:after{width:100%}
.site-content{background:#fff;min-height:45vh}
.page-heading{background:#f9f9f9;border-bottom:1px solid #eee;padding:28px 0}
.page-heading .section-wrap{padding:0 74px}
.page-heading h1{font-size:36px;font-weight:400;text-transform:uppercase;letter-spacing:0;line-height:1.4;margin:0}
.page-heading .eyebrow{display:none}
.page-content.section-wrap{padding-left:74px;padding-right:74px}
.page-content p,.page-content li{color:#697789}
.page-content h2,.page-content h3{color:#343b45}
.site-footer{background:#343b45}
@media(max-width:800px){.ep-original-header .ep-logo-panel{height:160px}.ep-original-header .brand-mark,.ep-original-header .custom-logo{max-height:115px}.ep-original-header .ep-title-navigation{min-height:135px;padding:20px 20px}.ep-original-header .ep-site-name{margin:0 0 8px;font-size:36px}.ep-original-header .menu-toggle{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;position:relative;margin:8px 0 0;background:transparent;border:1px solid #b8bdc4;padding:8px 13px;color:#fff}.ep-original-header .menu-toggle>span:not(.screen-reader-text){display:block;background:#fff;width:22px;height:2px;margin:0}.ep-original-header .primary-navigation{display:none;width:100%}.ep-original-header .primary-navigation.is-open{display:block;padding:12px 0}.ep-original-header .primary-navigation ul{display:flex;flex-direction:column;gap:0}.ep-original-header .primary-navigation li{width:100%;text-align:center;padding:6px 0}.page-heading .section-wrap{padding:0 28px}.page-content.section-wrap{padding-left:28px;padding-right:28px}}
@media(max-width:480px){.ep-original-header .ep-site-name{font-size:30px}.ep-original-header .ep-logo-panel{height:135px}.ep-original-header .brand-mark,.ep-original-header .custom-logo{max-height:100px}.page-heading h1{font-size:29px}}

/* V24: screenshot-referenced shared site sections and homepage composition. */
:root{--max:1052px}
.site-header,.site-content,.ep-shared-quality,.ep-shared-contact,.ep-shared-search,.site-footer{width:min(100%,1052px);margin-left:auto;margin-right:auto}
.ep-original-hero{display:block;min-height:0;background:#eee}
.ep-original-hero .ep-hero-slideshow{min-height:460px;width:100%;background:#eee}
.ep-original-hero .ep-slide img{min-height:0;height:460px;width:100%;object-fit:cover}
.intro.section-wrap,.services.section-wrap{max-width:none;padding:66px 74px 70px;background:#fff}
.intro.section-wrap{text-align:left}
.intro .eyebrow{text-align:center;color:#343b45;font-size:26px;font-weight:400;letter-spacing:0;margin:0}
.intro h2{text-align:center;font-size:30px;text-transform:uppercase;margin:0 0 34px}
.intro p:not(.eyebrow),.services>p{font-size:15px;line-height:1.9;color:#697789}
.ep-sector-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:40px 0 46px}
.ep-sector-cards a{display:block;text-align:center;text-decoration:none;border:1px solid #ddd;padding:6px 6px 10px;color:#343b45}
.ep-sector-cards img{display:block;width:100%;height:155px;object-fit:cover}
.ep-sector-cards span{display:block;font-size:12px;text-transform:uppercase;line-height:1.4;margin-top:6px}
.ep-profile-button,.ep-dark-button{display:table;background:#343b45;color:#fff!important;padding:9px 18px;font-size:13px;text-decoration:none;margin:0 auto}
.services.section-wrap{border-top:1px solid #ddd;margin:0 74px;padding:50px 0 70px}
.services h2{text-align:center;text-transform:uppercase;font-size:30px;margin:0 0 30px}
.services .service-grid{gap:24px;margin-top:42px}
.services .service-grid img{height:130px;border:5px solid #f8f8f8;outline:1px solid #ddd;object-fit:cover}
.services .service-grid h3{text-align:center;text-transform:uppercase;font-size:12px;line-height:1.5}
.ep-shared-quality{background:#343b45;color:#fff;text-align:center;padding:68px 24px 72px;background-image:repeating-linear-gradient(30deg,transparent 0,transparent 100px,rgba(255,255,255,.025) 101px,transparent 102px)}
.ep-shared-quality h2{font-size:36px;font-weight:400;line-height:1.1;margin:0 0 24px}
.ep-shared-quality p{font-size:22px;font-style:italic;line-height:1.6;margin:0 0 35px}
.ep-outline-button{border:2px solid #fff;color:#fff;text-decoration:none;padding:8px 18px;font-size:13px;display:inline-block}
.ep-shared-contact{background:#fff;text-align:center;padding:42px 24px 45px}
.ep-shared-contact h2{font-size:45px;font-weight:400;margin:0 0 12px}
.ep-shared-contact p{color:#697789;font-size:14px;margin:0 0 20px}
.ep-shared-contact .ep-contact-preface{margin:30px 0 10px}
.ep-shared-phone{font-size:32px;color:#343b45;text-decoration:none}
.ep-shared-search{background:#f8f8f8;display:flex;justify-content:center;align-items:center;gap:24px;padding:30px 70px}
.ep-shared-search .ep-search-line{height:1px;background:#ddd;flex:1;max-width:270px}
.ep-shared-search form{flex:0 1 270px;margin:0}
.ep-shared-search input[type=search]{width:100%;font-size:13px;padding:9px;border:1px solid #ddd;background:#fff}
.ep-shared-search input[type=submit],.ep-shared-search button{font-size:12px}
.site-footer.ep-original-footer{padding:35px 24px 32px;background:#343b45;text-align:center;color:#fff}
.ep-original-footer ul{display:flex;justify-content:center;flex-wrap:wrap;list-style:none;padding:0;margin:0 0 16px;gap:8px}
.ep-original-footer li+li:before{content:'/';color:#aeb2b8;margin-right:8px}
.ep-original-footer a{color:#fff;text-decoration:none;text-transform:uppercase;font-size:11px;letter-spacing:.04em}
.ep-original-footer p{font-size:10px;margin:0;color:#e1e2e4}
@media(max-width:800px){.intro.section-wrap{padding:50px 28px}.services.section-wrap{margin:0 28px;padding:42px 0}.ep-original-hero .ep-hero-slideshow{min-height:280px}.ep-original-hero .ep-slide img{height:280px}.ep-sector-cards{gap:12px}.ep-sector-cards img{height:115px}.ep-shared-quality h2{font-size:30px}.ep-shared-contact h2{font-size:36px}}
@media(max-width:540px){.ep-sector-cards{grid-template-columns:1fr}.ep-sector-cards img{height:190px}.ep-shared-search{padding:24px 18px;gap:8px}.ep-shared-search .ep-search-line{display:none}.ep-shared-contact h2{font-size:30px}.ep-shared-phone{font-size:25px}.ep-shared-quality p{font-size:18px}.ep-original-hero .ep-hero-slideshow{min-height:230px}.ep-original-hero .ep-slide img{height:230px}}
