
:root{--ink:#061a30;--navy:#0b2d4d;--cream:#f7f4ee;--white:#fff;--orange:#ef6b2e;--green:#5c783f;--sand:#e9e3d9;--text:#26323c;--muted:#65717c;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:var(--cream);font-size:17px}a{text-decoration:none;color:inherit}.wrap{width:min(var(--max),calc(100% - 64px));margin:auto}.site-main{min-height:60vh}
.site-header{position:absolute;z-index:50;width:100%;color:#fff}.site-header.inner{position:relative;background:var(--ink)}.nav{min-height:92px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:11px;margin-right:auto;color:#fff}.brand img{width:44px;height:44px;object-fit:cover;border-radius:3px}.brand-word{font:700 20px Montserrat,sans-serif;letter-spacing:.08em}.brand-sub{display:block;font:500 8px Montserrat,sans-serif;letter-spacing:.36em;margin-top:3px}.nav-menu{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0;font:500 12px Montserrat,sans-serif}.nav-menu li{position:relative;height:92px;display:flex;align-items:center}.nav-menu a{display:flex;align-items:center;height:100%}.nav-menu>.menu-item-has-children>a:after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-left:8px;margin-top:-4px;opacity:.8;transition:.18s}.nav-menu>.menu-item-has-children:hover>a:after,.nav-menu>.menu-item-has-children:focus-within>a:after{transform:rotate(225deg);margin-top:4px}.sub-menu{display:none;position:absolute;top:82px;left:-18px;width:270px;background:#fff;color:var(--ink);padding:10px;box-shadow:0 18px 40px #0003;list-style:none;margin:0;z-index:100}.sub-menu:before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}.nav-menu li:hover>.sub-menu,.nav-menu li:focus-within>.sub-menu,.sub-menu:hover{display:block}.sub-menu li{height:auto;display:block}.sub-menu a{height:auto;padding:13px 12px;font-size:12px}.sub-menu a:hover{background:#f5f2ec}.header-cta{margin-left:4px}.btn,.wp-block-button__link{display:inline-block;background:var(--orange);color:#fff!important;padding:16px 22px;border-radius:4px;font:600 12px Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.03em;border:0;cursor:pointer}.btn.small{padding:13px 17px}.btn.ghost{background:transparent;border:1px solid #fff}.mobile-toggle{display:none;border:0;background:none;color:#fff;font-size:27px;cursor:pointer}
.hero{min-height:760px;position:relative;color:#fff;overflow:hidden;display:flex;align-items:center}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,18,35,.97) 0%,rgba(3,18,35,.85) 42%,rgba(3,18,35,.28) 78%)}.hero-content{position:relative;padding-top:92px}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.2em;font:600 12px Montserrat,sans-serif;margin:0 0 22px}.accent,.kicker{color:var(--orange)}.hero h1{font:600 clamp(46px,5.2vw,76px)/1.03 Montserrat,sans-serif;margin:0 0 28px;max-width:780px}.hero h2{font:500 21px/1.45 Inter,sans-serif;max-width:720px;margin:0 0 18px}.hero p{max-width:670px;font-size:16px;line-height:1.7;color:#e5ebf0}.actions{display:flex;gap:12px;margin-top:34px}
.page-hero{background:var(--ink);color:#fff;padding:112px 0 100px;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;right:-8%;bottom:-45%;width:440px;height:440px;border:1px solid rgba(255,255,255,.08);transform:rotate(25deg)}.page-hero .wrap{position:relative;z-index:1}.page-hero h1{font:600 clamp(42px,5.4vw,72px)/1.04 Montserrat,sans-serif;margin:12px 0 52px;max-width:1050px}.page-hero .lead{color:#dbe3ea;max-width:820px;font-size:19px;line-height:1.68;margin:0}.page-hero .btn{margin-top:34px}
.section,.content-section{padding:130px 0}.white{background:#fff}.dark{background:var(--ink);color:#fff}.sand{background:var(--sand)}.section h2,.content-section h2,.cta h2{font:600 clamp(36px,4vw,52px)/1.12 Montserrat,sans-serif;margin:0 0 46px;color:inherit}.content-section p{line-height:1.72}.two-col{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:90px;align-items:start}.two-col>div:last-child{font-size:18px}.two-col>div:last-child p:first-child{margin-top:0}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.feature{background:#fff;padding:34px;border-top:5px solid var(--navy);min-height:230px}.feature:nth-child(3n+2){border-color:var(--green)}.feature:nth-child(3n){border-color:var(--orange)}.feature h3{font:600 23px/1.2 Montserrat,sans-serif;color:var(--ink);margin:0 0 16px}.feature p{color:#54616c;margin:0;line-height:1.65}.dark .feature{background:#fff;color:var(--text)}
.framework{padding:125px 0}.framework h2{font:600 clamp(38px,4vw,54px)/1.1 Montserrat;margin:0 0 58px}.framework-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px}.framework-grid article{border-top:1px solid #ffffff28;padding-top:26px}.framework-grid h3{font:600 25px Montserrat;margin:22px 0 8px}.framework-grid p{color:#bfcbd5;line-height:1.7;font-size:15px}.shape{display:block;width:64px;height:64px;position:relative}.shape:before,.shape:after{content:"";position:absolute;bottom:0;width:17px;background:var(--navy)}.shape:before{height:24px;left:5px}.shape:after{height:44px;left:28px}.two:before,.two:after{background:var(--green)}.three:before,.three:after{background:var(--orange)}.four:before,.four:after{background:#f2a444}.signature{font:500 21px/1.5 'Playfair Display',Georgia,serif;color:#f2a444;margin:62px 0 0}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{background:#fff;padding:42px 36px;border-top:5px solid var(--navy);min-height:330px}.service-card:nth-child(2){border-color:var(--green)}.service-card:nth-child(3){border-color:var(--orange)}.service-card h3{font:600 26px Montserrat;margin:0 0 14px;color:var(--ink)}.service-card p{font-size:17px;line-height:1.7}.service-card a{color:var(--navy);font:600 12px Montserrat;text-transform:uppercase;letter-spacing:.05em}.service-card:nth-child(2) a{color:var(--green)}.service-card:nth-child(3) a{color:var(--orange)}
.quote-band{padding:110px 0;background:var(--ink);color:#fff}.quote-band h2{font:500 clamp(40px,5vw,68px)/1.12 'Playfair Display',Georgia,serif;max-width:980px;margin:0}.quote-band em{color:var(--orange);font-style:normal}.approach-grid,.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.approach-grid article,.process-grid article{border-top:2px solid var(--orange);padding-top:22px}.approach-grid h3,.process-grid h3{font:600 26px Montserrat;margin:0 0 14px}.approach-grid p,.process-grid p{font-size:19px;line-height:1.55;color:#c8d3dc}.white .process-grid p{color:var(--muted)}
.framework-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.framework-mini article{background:#faf8f3;color:var(--ink);border-top:5px solid var(--navy);padding:42px 38px;min-height:285px}.framework-mini article:nth-child(2){border-color:var(--green)}.framework-mini article:nth-child(3){border-color:var(--orange)}.framework-mini h3{font:600 30px Montserrat;margin:0 0 13px}.framework-mini p{font-size:19px;line-height:1.65;color:#45535f;margin:0}
.journey{display:grid;grid-template-columns:repeat(6,1fr);gap:24px;border-top:2px solid var(--orange);padding-top:34px}.journey>div{position:relative}.journey>div:not(:last-child):after{content:"→";position:absolute;right:-15px;top:0;color:var(--orange)}.journey b{font:600 21px Montserrat;color:var(--ink);display:block;margin-bottom:15px}.journey span{font-size:18px;color:var(--muted);line-height:1.5}.dark .journey b{color:#fff}
.why-efl{padding:130px 0;background:#fff}.why-efl .intro{max-width:850px;margin-bottom:48px}.why-efl h2{font:600 clamp(38px,4vw,54px)/1.12 Montserrat;margin:0 0 28px;color:var(--ink)}.why-efl .intro p{font-size:18px;line-height:1.75}.accordion{border-top:1px solid #cdd4da}.acc-item{border-bottom:1px solid #cdd4da}.acc-button{width:100%;border:0;background:none;text-align:left;padding:26px 0;display:flex;justify-content:space-between;gap:24px;color:var(--ink);font:600 22px Montserrat;cursor:pointer}.acc-button:after{content:"+";font:400 28px Inter;color:var(--orange);transition:.2s}.acc-item.open .acc-button:after{content:"−"}.acc-panel{max-height:0;overflow:hidden;transition:max-height .3s ease}.acc-panel-inner{padding:0 0 28px;max-width:840px}.acc-panel h4{font:600 18px Montserrat;margin:0 0 10px;color:var(--ink)}.acc-panel p{font-size:17px;line-height:1.7;margin:0}
.case-grid,.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.case-card,.insight-card{background:#fff;padding:34px;min-height:270px}.case-card small,.insight-card small{font:600 11px Montserrat;text-transform:uppercase;letter-spacing:.15em;color:var(--orange)}.case-card h3,.insight-card h3{font:600 25px/1.25 Montserrat;color:var(--ink);margin:15px 0}.case-card p,.insight-card p{line-height:1.65;color:#58646e}.case-detail{padding:48px 0;border-top:1px solid #d8d8d8}.case-detail h3{font:600 32px/1.2 Montserrat;color:var(--ink);max-width:820px}.case-detail p{font-size:18px;max-width:900px}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.contact-form{background:#fff;padding:42px}.field{margin-bottom:22px}.field label{display:block;font:600 13px Montserrat;margin-bottom:8px;color:var(--ink)}.field input,.field select,.field textarea{width:100%;border:1px solid #ccd2d7;background:#fff;padding:14px 15px;font:16px Inter}.field textarea{min-height:150px;resize:vertical}.notice{padding:13px 16px;margin-bottom:20px;background:#eef6ec;border-left:4px solid var(--green)}
.internal-cta,.cta{background:var(--navy);color:#fff;padding:92px 0}.internal-cta .wrap,.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:50px}.internal-cta h2,.cta h2{margin:0 0 12px}.internal-cta p,.cta p{color:#d6e0e7;max-width:720px;line-height:1.65;margin:0}
.site-footer{background:#031426;color:#fff;padding:70px 0 34px}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:50px}.footer-grid h4{font:600 12px Montserrat;text-transform:uppercase;letter-spacing:.12em;margin:0 0 18px}.footer-grid a,.footer-grid p{display:block;color:#bdc9d2;font-size:14px;line-height:1.9;margin:0}.footer-bottom{border-top:1px solid #ffffff1f;margin-top:48px;padding-top:24px;color:#8797a4;font-size:12px}
.entry-content{margin:0}.entry-content>:not(.alignfull):not(.alignwide){max-width:var(--max);margin-left:auto;margin-right:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:980px){.nav-menu,.header-cta{display:none}.mobile-toggle{display:block}.site-header.mobile-open .nav-menu{display:flex;position:absolute;top:92px;left:0;right:0;background:var(--ink);padding:20px 32px 34px;flex-direction:column;align-items:stretch;gap:0}.site-header.mobile-open .nav-menu li{height:auto;display:block}.site-header.mobile-open .nav-menu a{padding:15px 0;height:auto}.site-header.mobile-open .sub-menu{position:static;display:none;box-shadow:none;background:#0a233d;color:#fff;width:auto;padding:8px 16px}.site-header.mobile-open li.sub-open>.sub-menu{display:block}.wrap{width:min(var(--max),calc(100% - 40px))}.hero{min-height:720px}.hero-content{padding-top:110px}.framework-grid,.service-grid,.three-col,.framework-mini,.case-grid,.insight-grid{grid-template-columns:1fr 1fr}.two-col,.contact-grid{grid-template-columns:1fr;gap:42px}.journey{grid-template-columns:repeat(3,1fr);row-gap:44px}.approach-grid,.process-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){body{font-size:16px}.wrap{width:calc(100% - 32px)}.nav{min-height:78px}.brand-word{font-size:17px}.brand img{width:38px;height:38px}.hero{min-height:680px}.hero-content{padding-top:90px}.hero h1{font-size:43px}.hero h2{font-size:18px}.page-hero{padding:82px 0 72px}.page-hero h1{font-size:42px;margin-bottom:38px}.page-hero .lead{font-size:17px}.section,.content-section,.why-efl{padding:82px 0}.framework{padding:86px 0}.framework-grid,.service-grid,.three-col,.framework-mini,.case-grid,.insight-grid,.approach-grid,.process-grid,.journey{grid-template-columns:1fr}.journey>div:not(:last-child):after{content:"↓";right:auto;left:0;top:auto;bottom:-31px}.feature,.service-card,.framework-mini article{min-height:auto}.quote-band{padding:78px 0}.quote-band h2{font-size:42px}.internal-cta .wrap,.cta .wrap{display:block}.internal-cta .btn,.cta .btn{margin-top:28px}.actions{flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr}.contact-form{padding:28px}.acc-button{font-size:19px}}
