.alo-prj-page,.alo-prj-page *{box-sizing:border-box}
.alo-prj-page{position:relative!important;isolation:isolate;width:100%!important;max-width:none!important;min-width:0!important;padding:0!important;margin:0!important;gap:0!important;overflow:hidden!important;background:#fff;color:#0e1232;font-family:'IBM Plex Sans',Arial,sans-serif}
.alo-prj-page .e-con{--container-widget-width:100%;--container-default-padding-top:0;--container-default-padding-right:0;--container-default-padding-bottom:0;--container-default-padding-left:0;min-width:0;gap:0;padding:0;margin:0}
.alo-prj-page .elementor-widget{min-width:0;margin:0}
.alo-prj-page p{margin:0}
.alo-prj-section{position:relative!important;width:100%!important;max-width:none!important;padding:88px 24px!important;margin:0!important;gap:0!important;align-items:center!important;opacity:1!important}
.alo-prj-shell{display:flex!important;flex-direction:column!important;align-items:center!important;width:100%!important;max-width:1200px!important;margin:0 auto!important;gap:0!important;text-align:center!important}
.alo-prj-heading{width:100%!important;margin-bottom:20px!important;text-align:center!important}
.alo-prj-heading .elementor-heading-title{font:700 34px/1.25 'IBM Plex Sans',serif!important;color:#0e1232!important}
.alo-prj-eyebrow,.alo-prj-eyebrow p{font:400 11px/1.6 'IBM Plex Sans',monospace!important;letter-spacing:.14em;color:#d6e0ff!important;text-align:center!important}
.alo-prj-eyebrow{margin-bottom:24px!important}
.alo-prj-hero{min-height:760px!important;justify-content:center!important;padding-top:140px!important;padding-bottom:140px!important;background-color:#142781;background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important}
.alo-prj-hero::before,.alo-prj-map::before{content:''!important;display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:1!important;pointer-events:none;z-index:0}
.alo-prj-hero::before{background:linear-gradient(120deg,#0e1232dd,#203deab3)!important}
.alo-prj-map::before{background:#090e29cc!important}
.alo-prj-hero .alo-prj-shell,.alo-prj-map .alo-prj-shell{position:relative!important;z-index:1}
.alo-prj-hero-title{width:100%!important;max-width:1040px!important;margin-bottom:26px!important;text-align:center!important}
.alo-prj-hero-title .elementor-heading-title{font:700 48px/1.15 'IBM Plex Sans',serif!important;color:#fff!important}
.alo-prj-hero-subtitle{max-width:860px!important;margin:0 auto 36px!important;text-align:center!important}
.alo-prj-hero-subtitle,.alo-prj-hero-subtitle p{font:400 17px/1.55 'IBM Plex Sans',sans-serif!important;color:#e2e8fa!important}
.alo-prj-actions{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:center!important;gap:16px!important;width:100%!important}
.alo-prj-page .alo-prj-button{width:auto!important;max-width:100%!important}
.alo-prj-button .elementor-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:46px;padding:13px 28px!important;background:#0000fa!important;border:1px solid #0000fa!important;border-radius:5px!important;color:#fff!important;font:600 16px/1.35 'IBM Plex Sans',sans-serif!important;text-decoration:none!important;transition:background .2s,box-shadow .2s}
.alo-prj-button .elementor-button:hover{background:#233dfe!important;box-shadow:0 8px 24px #233dfe20}
.alo-prj-outline .elementor-button{background:transparent!important;border-color:#ffffff55!important;color:#fff!important}
.alo-prj-outline .elementor-button:hover{background:#ffffff0d!important}
.alo-prj-filter-bar{display:none!important;width:100%!important;background:#fff;padding:16px 24px!important;border-bottom:1px solid #e7ebf4}
.alo-prj-page.alo-prj-interactive .alo-prj-filter-bar{display:flex!important}
.alo-prj-filter-shell{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:center!important;gap:8px!important;width:100%!important;max-width:1200px!important;margin:auto!important}
.alo-prj-filter{width:auto!important;max-width:100%!important}
.alo-prj-filter .elementor-button{display:block!important;min-height:40px;padding:10px 16px!important;background:#f4f5f8!important;border:1px solid #e6e9ef!important;border-radius:24px!important;color:#0e1232!important;font:500 12px/1.4 'IBM Plex Sans',sans-serif!important;text-decoration:none!important}
.alo-prj-filter.is-active .elementor-button,.alo-prj-filter .elementor-button:hover{background:#233dfe!important;border-color:#233dfe!important;color:#fff!important}
.alo-prj-map{background-color:#0e1232;background-size:cover!important;background-position:center!important}
.alo-prj-map .alo-prj-heading .elementor-heading-title{color:#fff!important}
.alo-prj-map-intro{max-width:1000px!important;margin:0 auto 40px!important;text-align:center!important}
.alo-prj-map-intro,.alo-prj-map-intro p{font:400 15px/1.55 'IBM Plex Sans',sans-serif!important;color:#cbd5ed!important}
.alo-prj-map-panel{position:relative!important;display:block!important;width:100%!important;max-width:900px!important;aspect-ratio:1.78;border:1px solid #ffffff20;border-radius:14px!important;overflow:hidden!important;background:#000}
.alo-prj-map-image,.alo-prj-map-image .elementor-widget-container,.alo-prj-map-image img{display:block!important;width:100%!important;height:100%!important}
.alo-prj-map-image{position:absolute!important;inset:0;opacity:.7}
.alo-prj-map-image img{object-fit:cover!important}
.alo-prj-map-dot{position:absolute!important;width:18px!important;height:18px!important;transform:translate(-50%,-50%);pointer-events:none;z-index:1}
.alo-prj-map-dot .elementor-heading-title{font:400 20px/1 sans-serif!important;color:#409dff!important}
.alo-prj-dot-0{left:52.6%!important;top:25.7%!important}.alo-prj-dot-1{left:50.5%!important;top:32.8%!important}.alo-prj-dot-2{left:48.3%!important;top:36.1%!important}.alo-prj-dot-3{left:46.5%!important;top:40.4%!important}.alo-prj-dot-4{left:55.7%!important;top:45.4%!important}
.alo-prj-dot-1 .elementor-heading-title{color:#e1ab20!important}.alo-prj-dot-3 .elementor-heading-title,.alo-prj-dot-4 .elementor-heading-title{color:#35b989!important}
.alo-prj-map-counter{position:absolute!important;left:20px!important;bottom:20px!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;width:auto!important;max-width:70%!important;padding:16px 20px!important;background:#111318e6;border:1px solid #ffffff15;border-radius:8px!important;text-align:left!important;z-index:2}
.alo-prj-map-counter-label,.alo-prj-map-counter-label p{font:400 10px/1.4 'IBM Plex Sans',monospace!important;color:#8cc1f2!important}
.alo-prj-map-counter-value .elementor-heading-title{font:700 32px/1.2 'IBM Plex Sans',sans-serif!important;color:#fff!important}
.alo-prj-map-counter-note,.alo-prj-map-counter-note p{font:400 10px/1.4 'IBM Plex Sans',sans-serif!important;color:#c4ccdc!important}
.alo-prj-map-programmes{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:center!important;gap:8px!important;width:100%!important;max-width:1100px!important;margin-top:28px!important}
.alo-prj-map-programme-link{width:auto!important;max-width:100%!important}
.alo-prj-map-programme-link .elementor-button{display:block!important;min-height:36px;padding:8px 12px!important;background:#ffffff07!important;border:1px solid #ffffff25!important;border-radius:20px!important;color:#d2ddf5!important;font:400 11px/1.4 'IBM Plex Sans',sans-serif!important;text-decoration:none!important}
.alo-prj-map-programme-link .elementor-button:hover{background:#233dfe!important;color:#fff!important}
.alo-prj-intro,.alo-prj-intro p{font:400 16px/1.55 'IBM Plex Sans',sans-serif!important;color:#586174!important}
.alo-prj-intro{max-width:880px!important;margin:0 auto 20px!important;text-align:center!important}
.alo-prj-imagery-note,.alo-prj-imagery-note p,.alo-prj-results,.alo-prj-results p{font:400 12px/1.5 'IBM Plex Sans',sans-serif!important;color:#66718a!important}
.alo-prj-imagery-note{margin:0 auto 14px!important}.alo-prj-results{margin:0 auto 32px!important}
.alo-prj-project-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px!important;width:100%!important;align-items:stretch!important}
.alo-prj-card{position:relative!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;min-width:0;padding:0!important;overflow:hidden!important;border:1px solid #e5eaf3;border-radius:14px!important;background:#fff;box-shadow:0 6px 24px #0e123204}
.alo-prj-card-image{display:block!important;width:100%!important;height:230px!important;overflow:hidden!important;background:#eef2f7}
.alo-prj-card-image .elementor-widget-container,.alo-prj-card-image img{width:100%!important;height:100%!important;display:block!important}
.alo-prj-card-image img{object-fit:cover!important;object-position:center!important}
.alo-prj-status-badge{position:absolute!important;left:14px!important;top:14px!important;width:auto!important;max-width:calc(100% - 28px)!important;padding:5px 10px!important;background:#efaa2a;border-radius:5px!important;z-index:2}
.alo-prj-status-badge .elementor-heading-title{font:600 11px/1.4 'IBM Plex Sans',sans-serif!important;color:#fff!important}
.alo-prj-status-active .alo-prj-status-badge{background:#356dff}.alo-prj-status-design .alo-prj-status-badge{background:#20a98c}
.alo-prj-card-copy{display:flex!important;flex-direction:column!important;align-items:flex-start!important;width:100%!important;padding:26px!important;gap:0!important;text-align:left!important;flex:1}
.alo-prj-card-title{margin-bottom:14px!important;width:100%!important}
.alo-prj-card-title .elementor-heading-title{font:700 24px/1.25 'IBM Plex Sans',serif!important;color:#0e1232!important}
.alo-prj-card-description,.alo-prj-card-description p{font:400 14px/1.6 'IBM Plex Sans',sans-serif!important;color:#586174!important}
.alo-prj-tags{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:8px!important;margin-top:20px!important;width:100%!important}
.alo-prj-tag{width:auto!important;max-width:100%!important;padding:5px 9px!important;background:#f4f6f9;border-radius:4px!important}
.alo-prj-tag .elementor-heading-title{font:400 11px/1.4 'IBM Plex Sans',monospace!important;color:#5b6579!important}
.alo-prj-card-enquiry{margin-top:20px!important;width:auto!important}
.alo-prj-card-enquiry .elementor-button{display:inline-block!important;padding:8px 0!important;min-height:36px;background:transparent!important;border:0!important;border-radius:0!important;color:#233dfe!important;font:600 12px/1.5 'IBM Plex Sans',sans-serif!important;text-decoration:none!important}
.alo-prj-featured-card{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));grid-column:1/-1;align-items:center!important}
.alo-prj-featured-card .alo-prj-card-image{height:360px!important}
.alo-prj-empty-state{display:none!important;width:100%!important;align-items:center!important;padding:40px 24px!important;text-align:center!important;border:1px solid #e4e9f4;border-radius:14px!important;background:#f9fbff}
.alo-prj-empty-state.is-visible{display:flex!important}
.alo-prj-empty-title .elementor-heading-title{font:600 22px/1.3 'IBM Plex Sans',serif!important;color:#0e1232!important}
.alo-prj-reset{margin-top:20px!important;width:auto!important}
.alo-prj-reset .elementor-button{padding:12px 20px!important;min-height:44px;background:#233dfe!important;border-radius:5px!important;color:#fff!important;font:500 14px/1.4 'IBM Plex Sans',sans-serif!important;text-decoration:none!important}
.alo-prj-page .is-filtered-out{display:none!important}
.alo-prj-impact{background:linear-gradient(115deg,#12183d,#233dfe)}
.alo-prj-impact .alo-prj-heading .elementor-heading-title{color:#fff!important}
.alo-prj-impact-subtitle,.alo-prj-impact-subtitle p{font:400 15px/1.55 'IBM Plex Sans',sans-serif!important;color:#e0e6fa!important}
.alo-prj-impact-subtitle{margin:0 auto 48px!important}
.alo-prj-impact-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 28px!important;width:100%!important}
.alo-prj-metric{align-items:center!important;text-align:center!important}
.alo-prj-metric-value{margin-bottom:10px!important}
.alo-prj-metric-value .elementor-heading-title{font:700 44px/1.1 'IBM Plex Sans',sans-serif!important;color:#fff!important}
.alo-prj-metric-label .elementor-heading-title{font:400 13px/1.4 'IBM Plex Sans',sans-serif!important;color:#e0e6fa!important}
.alo-prj-lifecycle{background:#f8fafc}
.alo-prj-lifecycle-scroll{overflow-x:auto!important;overflow-y:hidden!important;width:100%!important;max-width:100%!important;padding:8px 0 16px!important;margin-top:32px!important;scrollbar-width:thin;scrollbar-color:#b4bde5 #edf0f6}
.alo-prj-lifecycle-track{position:relative!important;display:grid!important;grid-template-columns:repeat(8,minmax(100px,1fr));min-width:1080px!important;width:100%!important}
.alo-prj-lifecycle-track::after{content:'';position:absolute;left:6.25%;right:6.25%;top:19px;height:2px;background:#d5dce9;pointer-events:none}
.alo-prj-lifecycle-point{position:relative!important;width:100%!important;z-index:1}
.alo-prj-lifecycle-point .elementor-button{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:70px;padding:10px 6px!important;background:transparent!important;border:0!important;border-radius:4px!important;color:#586174!important;font:500 11px/1.4 'IBM Plex Sans',sans-serif!important;text-decoration:none!important}
.alo-prj-lifecycle-point .elementor-button-text{display:flex;flex-direction:column;align-items:center;gap:18px}
.alo-prj-lifecycle-point .elementor-button-text::before{content:'';display:block;width:14px;height:14px;border-radius:50%;background:#d2d9e5}
.alo-prj-lifecycle-point.is-active .elementor-button-text::before{background:#233dfe;box-shadow:0 0 0 4px #233dfe10}
.alo-prj-lifecycle-selected,.alo-prj-lifecycle-selected p{font:500 13px/1.5 'IBM Plex Sans',sans-serif!important;color:#233dfe!important}
.alo-prj-lifecycle-selected{margin-top:16px!important}
.alo-prj-philosophy{background:#0e1232;padding-top:88px!important;padding-bottom:40px!important}
.alo-prj-quote{max-width:1040px!important;margin:0 auto!important;text-align:center!important}
.alo-prj-quote,.alo-prj-quote p{font:400 22px/1.5 'IBM Plex Sans',serif!important;color:#e2e8fa!important}
.alo-prj-quote::after{content:'';display:block;width:64px;height:3px;background:#233dfe;margin:32px auto 0}
.alo-prj-cta{background:#0e1232;padding-top:96px!important;padding-bottom:100px!important}
.alo-prj-cta .alo-prj-heading .elementor-heading-title{font-size:38px!important;color:#fff!important}
.alo-prj-cta .alo-prj-heading{margin-bottom:32px!important}
.alo-prj-page a:focus-visible,.alo-prj-lifecycle-scroll:focus-visible{outline:3px solid #647cff;outline-offset:4px}
.alo-prj-page [id]{scroll-margin-top:100px}
.alo-prj-status{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:1024px){.alo-prj-hero{min-height:700px!important}.alo-prj-map-panel{max-width:840px!important}.alo-prj-card-image{height:210px!important}.alo-prj-card-copy{padding:24px!important}}
@media(max-width:767px){.alo-prj-section{padding:56px 24px!important}.alo-prj-hero{min-height:640px!important;padding-top:100px!important;padding-bottom:88px!important}.alo-prj-hero-title .elementor-heading-title{font-size:34px!important}.alo-prj-hero-subtitle,.alo-prj-hero-subtitle p{font-size:16px!important}.alo-prj-heading .elementor-heading-title{font-size:29px!important}.alo-prj-actions{gap:12px!important}.alo-prj-page .alo-prj-actions>.alo-prj-button,.alo-prj-actions .elementor-button{width:100%!important}.alo-prj-filter-bar{padding:16px 20px!important}.alo-prj-filter .elementor-button{min-height:44px;padding:11px 13px!important}.alo-prj-map-panel{aspect-ratio:1.4;min-height:240px!important}.alo-prj-map-counter{left:12px!important;bottom:12px!important;padding:10px 14px!important}.alo-prj-map-counter-value .elementor-heading-title{font-size:26px!important}.alo-prj-map-counter-label,.alo-prj-map-counter-label p,.alo-prj-map-counter-note,.alo-prj-map-counter-note p{font-size:9px!important}.alo-prj-project-grid{grid-template-columns:minmax(0,1fr);gap:24px!important}.alo-prj-card-image{height:230px!important}.alo-prj-featured-card{display:flex!important;grid-column:auto}.alo-prj-featured-card .alo-prj-card-image{height:280px!important}.alo-prj-card-title .elementor-heading-title{font-size:23px!important}.alo-prj-impact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px!important}.alo-prj-metric-value .elementor-heading-title{font-size:36px!important}.alo-prj-quote,.alo-prj-quote p{font-size:20px!important}.alo-prj-cta .alo-prj-heading .elementor-heading-title{font-size:31px!important}}
@media(max-width:374px){.alo-prj-section{padding-left:20px!important;padding-right:20px!important}.alo-prj-hero-title .elementor-heading-title{font-size:31px!important}.alo-prj-map-panel{min-height:225px!important}}
@media(prefers-reduced-motion:reduce){.alo-prj-button .elementor-button{transition:none!important}}
