/* NACE colours copied from the current brand stylesheet, without a new palette. */
:root{--nace-navy:#0e2440;--nace-blue:#1b578c;--nace-white:#fff;--nace-surface:#f2f2f2;--nace-muted:#52667e;--nace-border:#dce3ed;--nace-radius-sm:4px;--nace-radius-lg:12px;--nace-shadow:0 14px 36px #0e244012}
.nace-portfolio main{color:var(--nace-navy);background:var(--nace-white)}
.nace-portfolio main *,.pi-dialog *,.nace-inspiration-tray *{box-sizing:border-box}
.pi-modal-open{overflow:hidden}.pi-wrap{width:min(1340px,calc(100% - 80px));margin-inline:auto}
.pi-section{padding-block:72px}.pi-soft{background:var(--nace-surface)}
.pi-hero{padding:38px 0 60px;background:var(--nace-surface)}
.pi-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:60px;margin-top:32px}
.pi-hero-grid.pi-no-cover{grid-template-columns:1fr;max-width:1000px}
.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.55;font-weight:500;margin:14px 0 20px;text-wrap:balance}
.pi-eyebrow{font-size:.76rem;letter-spacing:.09em;direction:ltr;color:var(--nace-blue);font-weight:650;margin:0 0 14px}
.pi-lead{font-size:1.05rem;line-height:2;color:var(--nace-muted);max-width:75ch}
.pi-hero figure,.pi-moodboard figure{margin:0}
.pi-hero figure picture{display:block;overflow:hidden;border-radius:var(--nace-radius-sm);background:var(--nace-border)}
.pi-hero figure img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block}
.pi-hero figcaption,.pi-moodboard figcaption{font-size:.76rem;line-height:1.8;color:var(--nace-muted);padding:10px 0}
.pi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0}
.pi-project-hero .pi-actions .button:nth-child(2){background:transparent;color:var(--nace-blue)}
.pi-count{margin-top:32px;color:var(--nace-muted)}.pi-count strong{font-size:2rem;color:var(--nace-navy);margin-inline-end:10px}
.pi-heading{margin-bottom:30px}.pi-heading h2,.pi-final-cta h2,.pi-facts-section h2,.pi-section>h2{font-size:clamp(1.55rem,2.7vw,2.5rem);font-weight:500;line-height:1.65;margin:0 0 20px}
.pi-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.pi-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.pi-project-card{background:#fff;border:1px solid var(--nace-border);border-radius:var(--nace-radius-sm);overflow:hidden;transition:box-shadow .2s,transform .2s;min-width:0}
.pi-project-card:hover,.pi-project-card:focus-within{box-shadow:var(--nace-shadow);transform:translateY(-3px)}
.pi-project-card>a,.pi-collection-card>a{display:block;color:inherit;text-decoration:none}
.pi-card-image{aspect-ratio:16/10;overflow:hidden;background:var(--nace-surface)}
.pi-card-image picture,.pi-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s}
.pi-project-card:hover .pi-card-image img{transform:scale(1.025)}
.pi-card-copy{padding:24px}.pi-card-copy h3{font-size:1.22rem;line-height:1.7;font-weight:550;margin:12px 0}
.pi-card-copy p{font-size:.9rem;line-height:1.9;margin:8px 0;color:var(--nace-muted)}
.pi-card-copy .pi-work-type{color:var(--nace-blue);font-size:.76rem}
.pi-meta{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.73rem;color:var(--nace-muted)}
.pi-card-metrics{list-style:none;padding:14px 0;margin:18px 0;border-block:1px solid var(--nace-border);font-size:.9rem;color:var(--nace-navy)}
.pi-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--nace-blue);margin-top:16px}
.pi-record-visual{min-height:180px;background:var(--nace-navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.7rem}
.pi-record-visual>span:first-child{font-size:2.4rem;letter-spacing:.14em;font-weight:300}
.pi-filter-bar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;padding:4px 3px 14px;max-width:100%}
.pi-filter-bar button,.pi-button{font:inherit;font-size:.85rem;min-height:46px;border:1px solid var(--nace-border);border-radius:30px;padding:10px 18px;background:#fff;color:var(--nace-navy);cursor:pointer;flex-shrink:0}
.pi-filter-bar button[aria-pressed=true]{background:var(--nace-navy);color:#fff;border-color:var(--nace-navy)}
[data-project-status]{color:var(--nace-muted);font-size:.8rem;margin:14px 0 28px}
.pi-final-cta{text-align:center;border-top:1px solid var(--nace-border)}.pi-final-cta p{margin-inline:auto}.pi-final-cta>a,.pi-final-cta>button{margin:14px}
.pi-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--nace-border)}
.pi-facts>div{padding:26px 22px;border-bottom:1px solid var(--nace-border)}
.pi-facts dt{font-size:.8rem;color:var(--nace-muted);margin-bottom:9px}.pi-facts dd{font-size:1rem;line-height:1.9;margin:0}
.pi-facts-wide{grid-column:1/-1}.pi-facts ul{display:flex;flex-wrap:wrap;gap:12px 35px;margin:0;padding-inline-start:18px}
.pi-facts a,.pi-related-services a{color:var(--nace-blue)}
.pi-scope{padding-top:0;max-width:1050px}.pi-scope .detail-copy{width:100%;padding:0}.pi-scope .detail-copy h2{font-size:1.9rem}.pi-scope .project-value{margin-top:25px}
.pi-related-services{display:flex;flex-wrap:wrap;gap:12px}.pi-related-services a{border:1px solid var(--nace-border);border-radius:4px;padding:18px;font-size:.9rem}
.pi-ideas-hero{padding-top:32px}.pi-ideas-title{max-width:1000px;padding:35px 0 20px}
.pi-moodboard{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(3,165px);gap:18px;align-items:stretch}
.pi-mood-strip{grid-column:2;grid-row:1/4;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pi-moodboard a{display:block;min-width:0;color:inherit;text-decoration:none;overflow:hidden}
.pi-moodboard .pi-mood-0{grid-row:1/4}.pi-moodboard figure{height:100%;position:relative;display:flex;flex-direction:column}
.pi-moodboard picture{display:block;flex:1;min-height:0;overflow:hidden}.pi-moodboard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s}.pi-moodboard a:hover img{transform:scale(1.025)}
.pi-moodboard figcaption{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#fff;font-size:.73rem}
.pi-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pi-collection-card{border:1px solid var(--nace-border);border-radius:4px;overflow:hidden;min-width:0;transition:box-shadow .2s}
.pi-collection-card:hover{box-shadow:var(--nace-shadow)}
.pi-category-photos{display:grid;grid-template-columns:2fr 1fr;gap:4px;height:260px;overflow:hidden;background:var(--nace-surface)}
.pi-category-photos>picture,.pi-category-photos>div{min-width:0;min-height:0;overflow:hidden}
.pi-category-photos>div{display:grid;grid-template-rows:1fr 1fr;gap:4px}.pi-category-photos picture{display:block;overflow:hidden}.pi-category-photos img{width:100%;height:100%;object-fit:cover;display:block}
.pi-collection-intro{padding-top:32px}.pi-collection-intro .pi-eyebrow{margin-top:32px}
.pi-collection-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-block:1px solid var(--nace-border);padding:18px 0;margin-top:26px}.pi-collection-tools p{margin:0}.pi-collection-tools a{color:var(--nace-blue);font-size:.85rem;min-height:44px;display:inline-flex;align-items:center}
.pi-provenance-note{font-size:.8rem;color:var(--nace-muted);line-height:1.9;max-width:100%!important;margin:22px 0}
.pi-provenance-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.pi-provenance-note summary::before{content:'+';font-size:1.1rem}.pi-provenance-note[open] summary::before{content:'−'}
.pi-collection-body{padding-top:20px}.pi-photo-grid{columns:4;column-gap:20px}
.pi-photo-card{break-inside:avoid;display:inline-block;width:100%;margin:0 0 24px;vertical-align:top}
.pi-photo{display:block;position:relative;border-radius:4px;overflow:hidden;background:var(--nace-surface)}
.pi-photo picture,.pi-photo img{display:block;width:100%;height:auto}.pi-photo img{transition:transform .2s}.pi-photo:hover img{transform:scale(1.025)}
.pi-expand{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;background:#fff;color:var(--nace-navy);border-radius:50%;opacity:0;transition:opacity .15s}.pi-photo:hover .pi-expand,.pi-photo:focus .pi-expand{opacity:1}
.pi-photo-card figcaption{padding:12px 2px}.pi-photo-card figcaption p{font-size:.8rem;line-height:1.8;color:var(--nace-muted);margin:5px 0}.pi-badge{display:inline-block;font-size:.65rem;border:1px solid var(--nace-border);padding:3px 8px;border-radius:3px;color:var(--nace-blue)}
.pi-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;padding:18px 28px;border:0;background:#0e2440fa;color:#fff;overflow:hidden;font-family:inherit}
.pi-dialog::backdrop{background:#0e2440e8}.pi-dialog[open]{display:flex;flex-direction:column;gap:12px}.pi-dialog button,.pi-dialog a{font:inherit;font-size:.85rem;min-width:44px;min-height:44px;cursor:pointer}
.pi-dialog button{background:#ffffff14;border:1px solid #ffffff50;color:#fff;border-radius:4px;padding:8px 14px}.pi-dialog a{color:#fff}.pi-dialog :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pi-lightbox-head,.pi-lightbox-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pi-lightbox-head{justify-content:space-between}.pi-lightbox-actions{justify-content:center;flex-shrink:0}
.pi-lightbox-image-wrap{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pan-y}
.pi-lightbox-image-wrap>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.pi-lightbox-image-wrap.is-zoomed>img{max-width:none;max-height:none;width:150%;height:auto}
.pi-lightbox-prev,.pi-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#0e2440d9!important}.pi-lightbox-prev{inset-inline-start:0}.pi-lightbox-next{inset-inline-end:0}
.pi-lightbox-caption{text-align:center;margin:0;font-size:.9rem;max-width:100%!important}.pi-lightbox-type{font-size:.75rem;text-align:center;margin:0;line-height:1.6}
.pi-lightbox-thumbs{display:flex;overflow-x:auto;gap:6px;max-width:100%;height:62px;flex-shrink:0;direction:ltr;margin-inline:auto}
.pi-lightbox-thumbs button{padding:2px;width:68px;height:58px;flex-shrink:0}.pi-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.pi-lightbox-thumbs [aria-current=true]{border:2px solid #fff}
.pi-lightbox-actions .pi-quote{background:var(--nace-blue);padding:8px 18px;text-decoration:none;display:inline-flex;align-items:center;border-radius:4px}
.pi-shortlist-dialog{max-width:min(920px,96vw);max-height:92dvh;width:920px;height:auto;background:#fff;color:var(--nace-navy);inset:4dvh auto auto 50%;transform:translateX(-50%);border-radius:12px;overflow:auto;padding:24px}.pi-shortlist-dialog button{color:var(--nace-navy);border-color:var(--nace-border);background:var(--nace-surface)}.pi-shortlist-dialog a{color:var(--nace-blue)}
.pi-shortlist-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-shortlist-list li{min-width:0;border:1px solid var(--nace-border);border-radius:4px;padding:10px}.pi-shortlist-list img{width:100%;height:130px;object-fit:cover}.pi-shortlist-list p{font-size:.8rem;line-height:1.8}.pi-shortlist-list a{font-size:.8rem;overflow-wrap:anywhere}.pi-shortlist-dialog textarea{width:100%;min-height:170px;font:inherit}
.nace-inspiration-tray.pi-tray{position:fixed;inset:auto 50% 85px auto;transform:translateX(50%);z-index:250;background:var(--nace-navy);color:#fff;border:1px solid #ffffff50;border-radius:40px;padding:7px 18px;box-shadow:var(--nace-shadow);max-width:90vw}.pi-tray button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;cursor:pointer}
.nace-portfolio [hidden],.pi-dialog [hidden],.pi-tray[hidden]{display:none!important}
.nace-portfolio .breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--nace-muted);line-height:1.8}
.nace-portfolio .breadcrumbs a,.nace-portfolio .breadcrumbs span{color:var(--nace-muted)}
@media(min-width:1001px){.pi-featured-card .pi-card-copy{padding:30px}.pi-featured-card h3{font-size:1.5rem}}
@media(max-width:1000px){.pi-wrap{width:calc(100% - 48px)}.pi-hero-grid{gap:28px}.pi-project-grid,.pi-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-photo-grid{columns:3}.pi-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-moodboard{grid-template-rows:repeat(3,145px)}}
@media(max-width:700px){.pi-wrap{width:calc(100% - 32px)}.pi-section{padding-block:42px}.pi-hero{padding:22px 0 32px}.pi-hero-grid{grid-template-columns:1fr;gap:26px;margin-top:20px}.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:1.95rem;line-height:1.6}.pi-lead{font-size:.94rem}.pi-hero figure img{max-height:430px}.pi-featured-grid,.pi-project-grid{grid-template-columns:1fr;gap:22px}.pi-card-copy{padding:22px}.pi-collection-grid{grid-template-columns:1fr;gap:26px}.pi-category-photos{height:260px}.pi-moodboard{display:flex;flex-wrap:wrap;gap:12px}.pi-moodboard .pi-mood-0{width:100%;flex:0 0 100%}.pi-moodboard .pi-mood-0 picture{height:280px;flex:none}.pi-moodboard>a:not(.pi-mood-0){flex:1 0 28%;min-width:0}.pi-moodboard>a:not(.pi-mood-0) picture{height:140px;flex:none}.pi-moodboard figcaption{font-size:.62rem;gap:3px}.pi-moodboard figcaption>span:last-child{display:none}.pi-ideas-title{padding-top:22px}.pi-photo-grid{columns:2;column-gap:12px}.pi-photo-card{margin-bottom:16px}.pi-photo-card figcaption p{font-size:.72rem}.pi-expand{width:32px;height:32px;opacity:1}.pi-facts{grid-template-columns:1fr}.pi-facts>div{padding:18px 0}.pi-facts ul{display:block}.pi-facts li{margin-bottom:8px}.pi-collection-tools{gap:12px 18px}.pi-collection-tools p{flex-basis:100%}.pi-collection-intro .pi-eyebrow{margin-top:24px}.pi-dialog{padding:12px;gap:8px}.pi-lightbox-thumbs{display:none}.pi-lightbox-head button,.pi-lightbox-actions button,.pi-lightbox-actions a{font-size:.75rem;padding:7px 10px}.pi-lightbox-caption{font-size:.8rem}.pi-lightbox-type{font-size:.68rem}.pi-lightbox-actions{gap:7px}.pi-shortlist-dialog{padding:18px}.pi-shortlist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pi-shortlist-list img{height:110px}.pi-final-cta>a,.pi-final-cta>button{margin:8px 0}.pi-shortlist-dialog :is(a,button):focus-visible{outline-color:var(--nace-blue)}}
@media(max-width:700px){.pi-mood-strip{display:flex;width:100%;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px}.pi-mood-strip>a{flex:0 0 66%;scroll-snap-align:start}.pi-mood-strip picture{height:180px;flex:none}.pi-collection-intro .pi-lead{line-height:1.9}.pi-collection-intro .pi-provenance-note{margin:12px 0}.pi-lightbox-type{text-align:center!important}.pi-dialog .pi-lightbox-caption{color:#fff}}
@media(prefers-reduced-motion:reduce){.nace-portfolio *,.pi-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none}.pi-project-card:hover{transform:none}.pi-lightbox-prev,.pi-lightbox-next{transform:translateY(-50%)}.pi-shortlist-dialog{transform:translateX(-50%)}}

/* NACE colours copied from the current brand stylesheet, without a new palette. */
:root{--nace-navy:#0e2440;--nace-blue:#1b578c;--nace-white:#fff;--nace-surface:#f2f2f2;--nace-muted:#52667e;--nace-border:#dce3ed;--nace-radius-sm:4px;--nace-radius-lg:12px;--nace-shadow:0 14px 36px #0e244012}
.nace-portfolio main{color:var(--nace-navy);background:var(--nace-white)}
.nace-portfolio main *,.pi-dialog *,.nace-inspiration-tray *{box-sizing:border-box}
.pi-modal-open{overflow:hidden}.pi-wrap{width:min(1340px,calc(100% - 80px));margin-inline:auto}
.pi-section{padding-block:72px}.pi-soft{background:var(--nace-surface)}
.pi-hero{padding:38px 0 60px;background:var(--nace-surface)}
.pi-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:60px;margin-top:32px}
.pi-hero-grid.pi-no-cover{grid-template-columns:1fr;max-width:1000px}
.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.55;font-weight:500;margin:14px 0 20px;text-wrap:balance}
.pi-eyebrow{font-size:.76rem;letter-spacing:.09em;direction:ltr;color:var(--nace-blue);font-weight:650;margin:0 0 14px}
.pi-lead{font-size:1.05rem;line-height:2;color:var(--nace-muted);max-width:75ch}
.pi-hero figure,.pi-moodboard figure{margin:0}
.pi-hero figure picture{display:block;overflow:hidden;border-radius:var(--nace-radius-sm);background:var(--nace-border)}
.pi-hero figure img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block}
.pi-hero figcaption,.pi-moodboard figcaption{font-size:.76rem;line-height:1.8;color:var(--nace-muted);padding:10px 0}
.pi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0}
.pi-project-hero .pi-actions .button:nth-child(2){background:transparent;color:var(--nace-blue)}
.pi-count{margin-top:32px;color:var(--nace-muted)}.pi-count strong{font-size:2rem;color:var(--nace-navy);margin-inline-end:10px}
.pi-heading{margin-bottom:30px}.pi-heading h2,.pi-final-cta h2,.pi-facts-section h2,.pi-section>h2{font-size:clamp(1.55rem,2.7vw,2.5rem);font-weight:500;line-height:1.65;margin:0 0 20px}
.pi-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.pi-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.pi-project-card{background:#fff;border:1px solid var(--nace-border);border-radius:var(--nace-radius-sm);overflow:hidden;transition:box-shadow .2s,transform .2s;min-width:0}
.pi-project-card:hover,.pi-project-card:focus-within{box-shadow:var(--nace-shadow);transform:translateY(-3px)}
.pi-project-card>a,.pi-collection-card>a{display:block;color:inherit;text-decoration:none}
.pi-card-image{aspect-ratio:16/10;overflow:hidden;background:var(--nace-surface)}
.pi-card-image picture,.pi-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s}
.pi-project-card:hover .pi-card-image img{transform:scale(1.025)}
.pi-card-copy{padding:24px}.pi-card-copy h3{font-size:1.22rem;line-height:1.7;font-weight:550;margin:12px 0}
.pi-card-copy p{font-size:.9rem;line-height:1.9;margin:8px 0;color:var(--nace-muted)}
.pi-card-copy .pi-work-type{color:var(--nace-blue);font-size:.76rem}
.pi-meta{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.73rem;color:var(--nace-muted)}
.pi-card-metrics{list-style:none;padding:14px 0;margin:18px 0;border-block:1px solid var(--nace-border);font-size:.9rem;color:var(--nace-navy)}
.pi-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--nace-blue);margin-top:16px}
.pi-record-visual{min-height:180px;background:var(--nace-navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.7rem}
.pi-record-visual>span:first-child{font-size:2.4rem;letter-spacing:.14em;font-weight:300}
.pi-filter-bar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;padding:4px 3px 14px;max-width:100%}
.pi-filter-bar button,.pi-button{font:inherit;font-size:.85rem;min-height:46px;border:1px solid var(--nace-border);border-radius:30px;padding:10px 18px;background:#fff;color:var(--nace-navy);cursor:pointer;flex-shrink:0}
.pi-filter-bar button[aria-pressed=true]{background:var(--nace-navy);color:#fff;border-color:var(--nace-navy)}
[data-project-status]{color:var(--nace-muted);font-size:.8rem;margin:14px 0 28px}
.pi-final-cta{text-align:center;border-top:1px solid var(--nace-border)}.pi-final-cta p{margin-inline:auto}.pi-final-cta>a,.pi-final-cta>button{margin:14px}
.pi-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--nace-border)}
.pi-facts>div{padding:26px 22px;border-bottom:1px solid var(--nace-border)}
.pi-facts dt{font-size:.8rem;color:var(--nace-muted);margin-bottom:9px}.pi-facts dd{font-size:1rem;line-height:1.9;margin:0}
.pi-facts-wide{grid-column:1/-1}.pi-facts ul{display:flex;flex-wrap:wrap;gap:12px 35px;margin:0;padding-inline-start:18px}
.pi-facts a,.pi-related-services a{color:var(--nace-blue)}
.pi-scope{padding-top:0;max-width:1050px}.pi-scope .detail-copy{width:100%;padding:0}.pi-scope .detail-copy h2{font-size:1.9rem}.pi-scope .project-value{margin-top:25px}
.pi-related-services{display:flex;flex-wrap:wrap;gap:12px}.pi-related-services a{border:1px solid var(--nace-border);border-radius:4px;padding:18px;font-size:.9rem}
.pi-ideas-hero{padding-top:32px}.pi-ideas-title{max-width:1000px;padding:35px 0 20px}
.pi-moodboard{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(3,165px);gap:18px;align-items:stretch}
.pi-mood-strip{grid-column:2;grid-row:1/4;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pi-moodboard a{display:block;min-width:0;color:inherit;text-decoration:none;overflow:hidden}
.pi-moodboard .pi-mood-0{grid-row:1/4}.pi-moodboard figure{height:100%;position:relative;display:flex;flex-direction:column}
.pi-moodboard picture{display:block;flex:1;min-height:0;overflow:hidden}.pi-moodboard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s}.pi-moodboard a:hover img{transform:scale(1.025)}
.pi-moodboard figcaption{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#fff;font-size:.73rem}
.pi-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pi-collection-card{border:1px solid var(--nace-border);border-radius:4px;overflow:hidden;min-width:0;transition:box-shadow .2s}
.pi-collection-card:hover{box-shadow:var(--nace-shadow)}
.pi-category-photos{display:grid;grid-template-columns:2fr 1fr;gap:4px;height:260px;overflow:hidden;background:var(--nace-surface)}
.pi-category-photos>picture,.pi-category-photos>div{min-width:0;min-height:0;overflow:hidden}
.pi-category-photos>div{display:grid;grid-template-rows:1fr 1fr;gap:4px}.pi-category-photos picture{display:block;overflow:hidden}.pi-category-photos img{width:100%;height:100%;object-fit:cover;display:block}
.pi-collection-intro{padding-top:32px}.pi-collection-intro .pi-eyebrow{margin-top:32px}
.pi-collection-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-block:1px solid var(--nace-border);padding:18px 0;margin-top:26px}.pi-collection-tools p{margin:0}.pi-collection-tools a{color:var(--nace-blue);font-size:.85rem;min-height:44px;display:inline-flex;align-items:center}
.pi-provenance-note{font-size:.8rem;color:var(--nace-muted);line-height:1.9;max-width:100%!important;margin:22px 0}
.pi-provenance-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.pi-provenance-note summary::before{content:'+';font-size:1.1rem}.pi-provenance-note[open] summary::before{content:'−'}
.pi-collection-body{padding-top:20px}.pi-photo-grid{columns:4;column-gap:20px}
.pi-photo-card{break-inside:avoid;display:inline-block;width:100%;margin:0 0 24px;vertical-align:top}
.pi-photo{display:block;position:relative;border-radius:4px;overflow:hidden;background:var(--nace-surface)}
.pi-photo picture,.pi-photo img{display:block;width:100%;height:auto}.pi-photo img{transition:transform .2s}.pi-photo:hover img{transform:scale(1.025)}
.pi-expand{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;background:#fff;color:var(--nace-navy);border-radius:50%;opacity:0;transition:opacity .15s}.pi-photo:hover .pi-expand,.pi-photo:focus .pi-expand{opacity:1}
.pi-photo-card figcaption{padding:12px 2px}.pi-photo-card figcaption p{font-size:.8rem;line-height:1.8;color:var(--nace-muted);margin:5px 0}.pi-badge{display:inline-block;font-size:.65rem;border:1px solid var(--nace-border);padding:3px 8px;border-radius:3px;color:var(--nace-blue)}
.pi-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;padding:18px 28px;border:0;background:#0e2440fa;color:#fff;overflow:hidden;font-family:inherit}
.pi-dialog::backdrop{background:#0e2440e8}.pi-dialog[open]{display:flex;flex-direction:column;gap:12px}.pi-dialog button,.pi-dialog a{font:inherit;font-size:.85rem;min-width:44px;min-height:44px;cursor:pointer}
.pi-dialog button{background:#ffffff14;border:1px solid #ffffff50;color:#fff;border-radius:4px;padding:8px 14px}.pi-dialog a{color:#fff}.pi-dialog :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pi-lightbox-head,.pi-lightbox-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pi-lightbox-head{justify-content:space-between}.pi-lightbox-actions{justify-content:center;flex-shrink:0}
.pi-lightbox-image-wrap{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pan-y}
.pi-lightbox-image-wrap>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.pi-lightbox-image-wrap.is-zoomed>img{max-width:none;max-height:none;width:150%;height:auto}
.pi-lightbox-prev,.pi-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#0e2440d9!important}.pi-lightbox-prev{inset-inline-start:0}.pi-lightbox-next{inset-inline-end:0}
.pi-lightbox-caption{text-align:center;margin:0;font-size:.9rem;max-width:100%!important}.pi-lightbox-type{font-size:.75rem;text-align:center;margin:0;line-height:1.6}
.pi-lightbox-thumbs{display:flex;overflow-x:auto;gap:6px;max-width:100%;height:62px;flex-shrink:0;direction:ltr;margin-inline:auto}
.pi-lightbox-thumbs button{padding:2px;width:68px;height:58px;flex-shrink:0}.pi-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.pi-lightbox-thumbs [aria-current=true]{border:2px solid #fff}
.pi-lightbox-actions .pi-quote{background:var(--nace-blue);padding:8px 18px;text-decoration:none;display:inline-flex;align-items:center;border-radius:4px}
.pi-shortlist-dialog{max-width:min(920px,96vw);max-height:92dvh;width:920px;height:auto;background:#fff;color:var(--nace-navy);inset:4dvh auto auto 50%;transform:translateX(-50%);border-radius:12px;overflow:auto;padding:24px}.pi-shortlist-dialog button{color:var(--nace-navy);border-color:var(--nace-border);background:var(--nace-surface)}.pi-shortlist-dialog a{color:var(--nace-blue)}
.pi-shortlist-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-shortlist-list li{min-width:0;border:1px solid var(--nace-border);border-radius:4px;padding:10px}.pi-shortlist-list img{width:100%;height:130px;object-fit:cover}.pi-shortlist-list p{font-size:.8rem;line-height:1.8}.pi-shortlist-list a{font-size:.8rem;overflow-wrap:anywhere}.pi-shortlist-dialog textarea{width:100%;min-height:170px;font:inherit}
.nace-inspiration-tray.pi-tray{position:fixed;inset:auto 50% 85px auto;transform:translateX(50%);z-index:250;background:var(--nace-navy);color:#fff;border:1px solid #ffffff50;border-radius:40px;padding:7px 18px;box-shadow:var(--nace-shadow);max-width:90vw}.pi-tray button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;cursor:pointer}
.nace-portfolio [hidden],.pi-dialog [hidden],.pi-tray[hidden]{display:none!important}
.nace-portfolio .breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--nace-muted);line-height:1.8}
.nace-portfolio .breadcrumbs a,.nace-portfolio .breadcrumbs span{color:var(--nace-muted)}
@media(min-width:1001px){.pi-featured-card .pi-card-copy{padding:30px}.pi-featured-card h3{font-size:1.5rem}}
@media(max-width:1000px){.pi-wrap{width:calc(100% - 48px)}.pi-hero-grid{gap:28px}.pi-project-grid,.pi-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-photo-grid{columns:3}.pi-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-moodboard{grid-template-rows:repeat(3,145px)}}
@media(max-width:700px){.pi-wrap{width:calc(100% - 32px)}.pi-section{padding-block:42px}.pi-hero{padding:22px 0 32px}.pi-hero-grid{grid-template-columns:1fr;gap:26px;margin-top:20px}.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:1.95rem;line-height:1.6}.pi-lead{font-size:.94rem}.pi-hero figure img{max-height:430px}.pi-featured-grid,.pi-project-grid{grid-template-columns:1fr;gap:22px}.pi-card-copy{padding:22px}.pi-collection-grid{grid-template-columns:1fr;gap:26px}.pi-category-photos{height:260px}.pi-moodboard{display:flex;flex-wrap:wrap;gap:12px}.pi-moodboard .pi-mood-0{width:100%;flex:0 0 100%}.pi-moodboard .pi-mood-0 picture{height:280px;flex:none}.pi-moodboard>a:not(.pi-mood-0){flex:1 0 28%;min-width:0}.pi-moodboard>a:not(.pi-mood-0) picture{height:140px;flex:none}.pi-moodboard figcaption{font-size:.62rem;gap:3px}.pi-moodboard figcaption>span:last-child{display:none}.pi-ideas-title{padding-top:22px}.pi-photo-grid{columns:2;column-gap:12px}.pi-photo-card{margin-bottom:16px}.pi-photo-card figcaption p{font-size:.72rem}.pi-expand{width:32px;height:32px;opacity:1}.pi-facts{grid-template-columns:1fr}.pi-facts>div{padding:18px 0}.pi-facts ul{display:block}.pi-facts li{margin-bottom:8px}.pi-collection-tools{gap:12px 18px}.pi-collection-tools p{flex-basis:100%}.pi-collection-intro .pi-eyebrow{margin-top:24px}.pi-dialog{padding:12px;gap:8px}.pi-lightbox-thumbs{display:none}.pi-lightbox-head button,.pi-lightbox-actions button,.pi-lightbox-actions a{font-size:.75rem;padding:7px 10px}.pi-lightbox-caption{font-size:.8rem}.pi-lightbox-type{font-size:.68rem}.pi-lightbox-actions{gap:7px}.pi-shortlist-dialog{padding:18px}.pi-shortlist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pi-shortlist-list img{height:110px}.pi-final-cta>a,.pi-final-cta>button{margin:8px 0}.pi-shortlist-dialog :is(a,button):focus-visible{outline-color:var(--nace-blue)}}
@media(max-width:700px){.pi-mood-strip{display:flex;width:100%;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px}.pi-mood-strip>a{flex:0 0 66%;scroll-snap-align:start}.pi-mood-strip picture{height:180px;flex:none}.pi-collection-intro .pi-lead{line-height:1.9}.pi-collection-intro .pi-provenance-note{margin:12px 0}.pi-lightbox-type{text-align:center!important}.pi-dialog .pi-lightbox-caption{color:#fff}}
@media(prefers-reduced-motion:reduce){.nace-portfolio *,.pi-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none}.pi-project-card:hover{transform:none}.pi-lightbox-prev,.pi-lightbox-next{transform:translateY(-50%)}.pi-shortlist-dialog{transform:translateX(-50%)}}

/* NACE colours copied from the current brand stylesheet, without a new palette. */
:root{--nace-navy:#0e2440;--nace-blue:#1b578c;--nace-white:#fff;--nace-surface:#f2f2f2;--nace-muted:#52667e;--nace-border:#dce3ed;--nace-radius-sm:4px;--nace-radius-lg:12px;--nace-shadow:0 14px 36px #0e244012}
.nace-portfolio main{color:var(--nace-navy);background:var(--nace-white)}
.nace-portfolio main *,.pi-dialog *,.nace-inspiration-tray *{box-sizing:border-box}
.pi-modal-open{overflow:hidden}.pi-wrap{width:min(1340px,calc(100% - 80px));margin-inline:auto}
.pi-section{padding-block:72px}.pi-soft{background:var(--nace-surface)}
.pi-hero{padding:38px 0 60px;background:var(--nace-surface)}
.pi-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:60px;margin-top:32px}
.pi-hero-grid.pi-no-cover{grid-template-columns:1fr;max-width:1000px}
.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.55;font-weight:500;margin:14px 0 20px;text-wrap:balance}
.pi-eyebrow{font-size:.76rem;letter-spacing:.09em;direction:ltr;color:var(--nace-blue);font-weight:650;margin:0 0 14px}
.pi-lead{font-size:1.05rem;line-height:2;color:var(--nace-muted);max-width:75ch}
.pi-hero figure,.pi-moodboard figure{margin:0}
.pi-hero figure picture{display:block;overflow:hidden;border-radius:var(--nace-radius-sm);background:var(--nace-border)}
.pi-hero figure img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block}
.pi-hero figcaption,.pi-moodboard figcaption{font-size:.76rem;line-height:1.8;color:var(--nace-muted);padding:10px 0}
.pi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0}
.pi-project-hero .pi-actions .button:nth-child(2){background:transparent;color:var(--nace-blue)}
.pi-count{margin-top:32px;color:var(--nace-muted)}.pi-count strong{font-size:2rem;color:var(--nace-navy);margin-inline-end:10px}
.pi-heading{margin-bottom:30px}.pi-heading h2,.pi-final-cta h2,.pi-facts-section h2,.pi-section>h2{font-size:clamp(1.55rem,2.7vw,2.5rem);font-weight:500;line-height:1.65;margin:0 0 20px}
.pi-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.pi-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.pi-project-card{background:#fff;border:1px solid var(--nace-border);border-radius:var(--nace-radius-sm);overflow:hidden;transition:box-shadow .2s,transform .2s;min-width:0}
.pi-project-card:hover,.pi-project-card:focus-within{box-shadow:var(--nace-shadow);transform:translateY(-3px)}
.pi-project-card>a,.pi-collection-card>a{display:block;color:inherit;text-decoration:none}
.pi-card-image{aspect-ratio:16/10;overflow:hidden;background:var(--nace-surface)}
.pi-card-image picture,.pi-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s}
.pi-project-card:hover .pi-card-image img{transform:scale(1.025)}
.pi-card-copy{padding:24px}.pi-card-copy h3{font-size:1.22rem;line-height:1.7;font-weight:550;margin:12px 0}
.pi-card-copy p{font-size:.9rem;line-height:1.9;margin:8px 0;color:var(--nace-muted)}
.pi-card-copy .pi-work-type{color:var(--nace-blue);font-size:.76rem}
.pi-meta{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.73rem;color:var(--nace-muted)}
.pi-card-metrics{list-style:none;padding:14px 0;margin:18px 0;border-block:1px solid var(--nace-border);font-size:.9rem;color:var(--nace-navy)}
.pi-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--nace-blue);margin-top:16px}
.pi-record-visual{min-height:180px;background:var(--nace-navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.7rem}
.pi-record-visual>span:first-child{font-size:2.4rem;letter-spacing:.14em;font-weight:300}
.pi-filter-bar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;padding:4px 3px 14px;max-width:100%}
.pi-filter-bar button,.pi-button{font:inherit;font-size:.85rem;min-height:46px;border:1px solid var(--nace-border);border-radius:30px;padding:10px 18px;background:#fff;color:var(--nace-navy);cursor:pointer;flex-shrink:0}
.pi-filter-bar button[aria-pressed=true]{background:var(--nace-navy);color:#fff;border-color:var(--nace-navy)}
[data-project-status]{color:var(--nace-muted);font-size:.8rem;margin:14px 0 28px}
.pi-final-cta{text-align:center;border-top:1px solid var(--nace-border)}.pi-final-cta p{margin-inline:auto}.pi-final-cta>a,.pi-final-cta>button{margin:14px}
.pi-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--nace-border)}
.pi-facts>div{padding:26px 22px;border-bottom:1px solid var(--nace-border)}
.pi-facts dt{font-size:.8rem;color:var(--nace-muted);margin-bottom:9px}.pi-facts dd{font-size:1rem;line-height:1.9;margin:0}
.pi-facts-wide{grid-column:1/-1}.pi-facts ul{display:flex;flex-wrap:wrap;gap:12px 35px;margin:0;padding-inline-start:18px}
.pi-facts a,.pi-related-services a{color:var(--nace-blue)}
.pi-scope{padding-top:0;max-width:1050px}.pi-scope .detail-copy{width:100%;padding:0}.pi-scope .detail-copy h2{font-size:1.9rem}.pi-scope .project-value{margin-top:25px}
.pi-related-services{display:flex;flex-wrap:wrap;gap:12px}.pi-related-services a{border:1px solid var(--nace-border);border-radius:4px;padding:18px;font-size:.9rem}
.pi-ideas-hero{padding-top:32px}.pi-ideas-title{max-width:1000px;padding:35px 0 20px}
.pi-moodboard{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(3,165px);gap:18px;align-items:stretch}
.pi-mood-strip{grid-column:2;grid-row:1/4;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pi-moodboard a{display:block;min-width:0;color:inherit;text-decoration:none;overflow:hidden}
.pi-moodboard .pi-mood-0{grid-row:1/4}.pi-moodboard figure{height:100%;position:relative;display:flex;flex-direction:column}
.pi-moodboard picture{display:block;flex:1;min-height:0;overflow:hidden}.pi-moodboard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s}.pi-moodboard a:hover img{transform:scale(1.025)}
.pi-moodboard figcaption{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#fff;font-size:.73rem}
.pi-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pi-collection-card{border:1px solid var(--nace-border);border-radius:4px;overflow:hidden;min-width:0;transition:box-shadow .2s}
.pi-collection-card:hover{box-shadow:var(--nace-shadow)}
.pi-category-photos{display:grid;grid-template-columns:2fr 1fr;gap:4px;height:260px;overflow:hidden;background:var(--nace-surface)}
.pi-category-photos>picture,.pi-category-photos>div{min-width:0;min-height:0;overflow:hidden}
.pi-category-photos>div{display:grid;grid-template-rows:1fr 1fr;gap:4px}.pi-category-photos picture{display:block;overflow:hidden}.pi-category-photos img{width:100%;height:100%;object-fit:cover;display:block}
.pi-collection-intro{padding-top:32px}.pi-collection-intro .pi-eyebrow{margin-top:32px}
.pi-collection-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-block:1px solid var(--nace-border);padding:18px 0;margin-top:26px}.pi-collection-tools p{margin:0}.pi-collection-tools a{color:var(--nace-blue);font-size:.85rem;min-height:44px;display:inline-flex;align-items:center}
.pi-provenance-note{font-size:.8rem;color:var(--nace-muted);line-height:1.9;max-width:100%!important;margin:22px 0}
.pi-provenance-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.pi-provenance-note summary::before{content:'+';font-size:1.1rem}.pi-provenance-note[open] summary::before{content:'−'}
.pi-collection-body{padding-top:20px}.pi-photo-grid{columns:4;column-gap:20px}
.pi-photo-card{break-inside:avoid;display:inline-block;width:100%;margin:0 0 24px;vertical-align:top}
.pi-photo{display:block;position:relative;border-radius:4px;overflow:hidden;background:var(--nace-surface)}
.pi-photo picture,.pi-photo img{display:block;width:100%;height:auto}.pi-photo img{transition:transform .2s}.pi-photo:hover img{transform:scale(1.025)}
.pi-expand{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;background:#fff;color:var(--nace-navy);border-radius:50%;opacity:0;transition:opacity .15s}.pi-photo:hover .pi-expand,.pi-photo:focus .pi-expand{opacity:1}
.pi-photo-card figcaption{padding:12px 2px}.pi-photo-card figcaption p{font-size:.8rem;line-height:1.8;color:var(--nace-muted);margin:5px 0}.pi-badge{display:inline-block;font-size:.65rem;border:1px solid var(--nace-border);padding:3px 8px;border-radius:3px;color:var(--nace-blue)}
.pi-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;padding:18px 28px;border:0;background:#0e2440fa;color:#fff;overflow:hidden;font-family:inherit}
.pi-dialog::backdrop{background:#0e2440e8}.pi-dialog[open]{display:flex;flex-direction:column;gap:12px}.pi-dialog button,.pi-dialog a{font:inherit;font-size:.85rem;min-width:44px;min-height:44px;cursor:pointer}
.pi-dialog button{background:#ffffff14;border:1px solid #ffffff50;color:#fff;border-radius:4px;padding:8px 14px}.pi-dialog a{color:#fff}.pi-dialog :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pi-lightbox-head,.pi-lightbox-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pi-lightbox-head{justify-content:space-between}.pi-lightbox-actions{justify-content:center;flex-shrink:0}
.pi-lightbox-image-wrap{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pan-y}
.pi-lightbox-image-wrap>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.pi-lightbox-image-wrap.is-zoomed>img{max-width:none;max-height:none;width:150%;height:auto}
.pi-lightbox-prev,.pi-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#0e2440d9!important}.pi-lightbox-prev{inset-inline-start:0}.pi-lightbox-next{inset-inline-end:0}
.pi-lightbox-caption{text-align:center;margin:0;font-size:.9rem;max-width:100%!important}.pi-lightbox-type{font-size:.75rem;text-align:center;margin:0;line-height:1.6}
.pi-lightbox-thumbs{display:flex;overflow-x:auto;gap:6px;max-width:100%;height:62px;flex-shrink:0;direction:ltr;margin-inline:auto}
.pi-lightbox-thumbs button{padding:2px;width:68px;height:58px;flex-shrink:0}.pi-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.pi-lightbox-thumbs [aria-current=true]{border:2px solid #fff}
.pi-lightbox-actions .pi-quote{background:var(--nace-blue);padding:8px 18px;text-decoration:none;display:inline-flex;align-items:center;border-radius:4px}
.pi-shortlist-dialog{max-width:min(920px,96vw);max-height:92dvh;width:920px;height:auto;background:#fff;color:var(--nace-navy);inset:4dvh auto auto 50%;transform:translateX(-50%);border-radius:12px;overflow:auto;padding:24px}.pi-shortlist-dialog button{color:var(--nace-navy);border-color:var(--nace-border);background:var(--nace-surface)}.pi-shortlist-dialog a{color:var(--nace-blue)}
.pi-shortlist-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-shortlist-list li{min-width:0;border:1px solid var(--nace-border);border-radius:4px;padding:10px}.pi-shortlist-list img{width:100%;height:130px;object-fit:cover}.pi-shortlist-list p{font-size:.8rem;line-height:1.8}.pi-shortlist-list a{font-size:.8rem;overflow-wrap:anywhere}.pi-shortlist-dialog textarea{width:100%;min-height:170px;font:inherit}
.nace-inspiration-tray.pi-tray{position:fixed;inset:auto 50% 85px auto;transform:translateX(50%);z-index:250;background:var(--nace-navy);color:#fff;border:1px solid #ffffff50;border-radius:40px;padding:7px 18px;box-shadow:var(--nace-shadow);max-width:90vw}.pi-tray button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;cursor:pointer}
.nace-portfolio [hidden],.pi-dialog [hidden],.pi-tray[hidden]{display:none!important}
.nace-portfolio .breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--nace-muted);line-height:1.8}
.nace-portfolio .breadcrumbs a,.nace-portfolio .breadcrumbs span{color:var(--nace-muted)}
@media(min-width:1001px){.pi-featured-card .pi-card-copy{padding:30px}.pi-featured-card h3{font-size:1.5rem}}
@media(max-width:1000px){.pi-wrap{width:calc(100% - 48px)}.pi-hero-grid{gap:28px}.pi-project-grid,.pi-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-photo-grid{columns:3}.pi-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-moodboard{grid-template-rows:repeat(3,145px)}}
@media(max-width:700px){.pi-wrap{width:calc(100% - 32px)}.pi-section{padding-block:42px}.pi-hero{padding:22px 0 32px}.pi-hero-grid{grid-template-columns:1fr;gap:26px;margin-top:20px}.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:1.95rem;line-height:1.6}.pi-lead{font-size:.94rem}.pi-hero figure img{max-height:430px}.pi-featured-grid,.pi-project-grid{grid-template-columns:1fr;gap:22px}.pi-card-copy{padding:22px}.pi-collection-grid{grid-template-columns:1fr;gap:26px}.pi-category-photos{height:260px}.pi-moodboard{display:flex;flex-wrap:wrap;gap:12px}.pi-moodboard .pi-mood-0{width:100%;flex:0 0 100%}.pi-moodboard .pi-mood-0 picture{height:280px;flex:none}.pi-moodboard>a:not(.pi-mood-0){flex:1 0 28%;min-width:0}.pi-moodboard>a:not(.pi-mood-0) picture{height:140px;flex:none}.pi-moodboard figcaption{font-size:.62rem;gap:3px}.pi-moodboard figcaption>span:last-child{display:none}.pi-ideas-title{padding-top:22px}.pi-photo-grid{columns:2;column-gap:12px}.pi-photo-card{margin-bottom:16px}.pi-photo-card figcaption p{font-size:.72rem}.pi-expand{width:32px;height:32px;opacity:1}.pi-facts{grid-template-columns:1fr}.pi-facts>div{padding:18px 0}.pi-facts ul{display:block}.pi-facts li{margin-bottom:8px}.pi-collection-tools{gap:12px 18px}.pi-collection-tools p{flex-basis:100%}.pi-collection-intro .pi-eyebrow{margin-top:24px}.pi-dialog{padding:12px;gap:8px}.pi-lightbox-thumbs{display:none}.pi-lightbox-head button,.pi-lightbox-actions button,.pi-lightbox-actions a{font-size:.75rem;padding:7px 10px}.pi-lightbox-caption{font-size:.8rem}.pi-lightbox-type{font-size:.68rem}.pi-lightbox-actions{gap:7px}.pi-shortlist-dialog{padding:18px}.pi-shortlist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pi-shortlist-list img{height:110px}.pi-final-cta>a,.pi-final-cta>button{margin:8px 0}.pi-shortlist-dialog :is(a,button):focus-visible{outline-color:var(--nace-blue)}}
@media(max-width:700px){.pi-mood-strip{display:flex;width:100%;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px}.pi-mood-strip>a{flex:0 0 66%;scroll-snap-align:start}.pi-mood-strip picture{height:180px;flex:none}.pi-collection-intro .pi-lead{line-height:1.9}.pi-collection-intro .pi-provenance-note{margin:12px 0}.pi-lightbox-type{text-align:center!important}.pi-dialog .pi-lightbox-caption{color:#fff}}
@media(prefers-reduced-motion:reduce){.nace-portfolio *,.pi-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none}.pi-project-card:hover{transform:none}.pi-lightbox-prev,.pi-lightbox-next{transform:translateY(-50%)}.pi-shortlist-dialog{transform:translateX(-50%)}}

/* NACE colours copied from the current brand stylesheet, without a new palette. */
:root{--nace-navy:#0e2440;--nace-blue:#1b578c;--nace-white:#fff;--nace-surface:#f2f2f2;--nace-muted:#52667e;--nace-border:#dce3ed;--nace-radius-sm:4px;--nace-radius-lg:12px;--nace-shadow:0 14px 36px #0e244012}
.nace-portfolio main{color:var(--nace-navy);background:var(--nace-white)}
.nace-portfolio main *,.pi-dialog *,.nace-inspiration-tray *{box-sizing:border-box}
.pi-modal-open{overflow:hidden}.pi-wrap{width:min(1340px,calc(100% - 80px));margin-inline:auto}
.pi-section{padding-block:72px}.pi-soft{background:var(--nace-surface)}
.pi-hero{padding:38px 0 60px;background:var(--nace-surface)}
.pi-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:60px;margin-top:32px}
.pi-hero-grid.pi-no-cover{grid-template-columns:1fr;max-width:1000px}
.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.55;font-weight:500;margin:14px 0 20px;text-wrap:balance}
.pi-eyebrow{font-size:.76rem;letter-spacing:.09em;direction:ltr;color:var(--nace-blue);font-weight:650;margin:0 0 14px}
.pi-lead{font-size:1.05rem;line-height:2;color:var(--nace-muted);max-width:75ch}
.pi-hero figure,.pi-moodboard figure{margin:0}
.pi-hero figure picture{display:block;overflow:hidden;border-radius:var(--nace-radius-sm);background:var(--nace-border)}
.pi-hero figure img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block}
.pi-hero figcaption,.pi-moodboard figcaption{font-size:.76rem;line-height:1.8;color:var(--nace-muted);padding:10px 0}
.pi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0}
.pi-project-hero .pi-actions .button:nth-child(2){background:transparent;color:var(--nace-blue)}
.pi-count{margin-top:32px;color:var(--nace-muted)}.pi-count strong{font-size:2rem;color:var(--nace-navy);margin-inline-end:10px}
.pi-heading{margin-bottom:30px}.pi-heading h2,.pi-final-cta h2,.pi-facts-section h2,.pi-section>h2{font-size:clamp(1.55rem,2.7vw,2.5rem);font-weight:500;line-height:1.65;margin:0 0 20px}
.pi-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.pi-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.pi-project-card{background:#fff;border:1px solid var(--nace-border);border-radius:var(--nace-radius-sm);overflow:hidden;transition:box-shadow .2s,transform .2s;min-width:0}
.pi-project-card:hover,.pi-project-card:focus-within{box-shadow:var(--nace-shadow);transform:translateY(-3px)}
.pi-project-card>a,.pi-collection-card>a{display:block;color:inherit;text-decoration:none}
.pi-card-image{aspect-ratio:16/10;overflow:hidden;background:var(--nace-surface)}
.pi-card-image picture,.pi-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s}
.pi-project-card:hover .pi-card-image img{transform:scale(1.025)}
.pi-card-copy{padding:24px}.pi-card-copy h3{font-size:1.22rem;line-height:1.7;font-weight:550;margin:12px 0}
.pi-card-copy p{font-size:.9rem;line-height:1.9;margin:8px 0;color:var(--nace-muted)}
.pi-card-copy .pi-work-type{color:var(--nace-blue);font-size:.76rem}
.pi-meta{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.73rem;color:var(--nace-muted)}
.pi-card-metrics{list-style:none;padding:14px 0;margin:18px 0;border-block:1px solid var(--nace-border);font-size:.9rem;color:var(--nace-navy)}
.pi-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--nace-blue);margin-top:16px}
.pi-record-visual{min-height:180px;background:var(--nace-navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.7rem}
.pi-record-visual>span:first-child{font-size:2.4rem;letter-spacing:.14em;font-weight:300}
.pi-filter-bar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;padding:4px 3px 14px;max-width:100%}
.pi-filter-bar button,.pi-button{font:inherit;font-size:.85rem;min-height:46px;border:1px solid var(--nace-border);border-radius:30px;padding:10px 18px;background:#fff;color:var(--nace-navy);cursor:pointer;flex-shrink:0}
.pi-filter-bar button[aria-pressed=true]{background:var(--nace-navy);color:#fff;border-color:var(--nace-navy)}
[data-project-status]{color:var(--nace-muted);font-size:.8rem;margin:14px 0 28px}
.pi-final-cta{text-align:center;border-top:1px solid var(--nace-border)}.pi-final-cta p{margin-inline:auto}.pi-final-cta>a,.pi-final-cta>button{margin:14px}
.pi-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--nace-border)}
.pi-facts>div{padding:26px 22px;border-bottom:1px solid var(--nace-border)}
.pi-facts dt{font-size:.8rem;color:var(--nace-muted);margin-bottom:9px}.pi-facts dd{font-size:1rem;line-height:1.9;margin:0}
.pi-facts-wide{grid-column:1/-1}.pi-facts ul{display:flex;flex-wrap:wrap;gap:12px 35px;margin:0;padding-inline-start:18px}
.pi-facts a,.pi-related-services a{color:var(--nace-blue)}
.pi-scope{padding-top:0;max-width:1050px}.pi-scope .detail-copy{width:100%;padding:0}.pi-scope .detail-copy h2{font-size:1.9rem}.pi-scope .project-value{margin-top:25px}
.pi-related-services{display:flex;flex-wrap:wrap;gap:12px}.pi-related-services a{border:1px solid var(--nace-border);border-radius:4px;padding:18px;font-size:.9rem}
.pi-ideas-hero{padding-top:32px}.pi-ideas-title{max-width:1000px;padding:35px 0 20px}
.pi-moodboard{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(3,165px);gap:18px;align-items:stretch}
.pi-mood-strip{grid-column:2;grid-row:1/4;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pi-moodboard a{display:block;min-width:0;color:inherit;text-decoration:none;overflow:hidden}
.pi-moodboard .pi-mood-0{grid-row:1/4}.pi-moodboard figure{height:100%;position:relative;display:flex;flex-direction:column}
.pi-moodboard picture{display:block;flex:1;min-height:0;overflow:hidden}.pi-moodboard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s}.pi-moodboard a:hover img{transform:scale(1.025)}
.pi-moodboard figcaption{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#fff;font-size:.73rem}
.pi-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pi-collection-card{border:1px solid var(--nace-border);border-radius:4px;overflow:hidden;min-width:0;transition:box-shadow .2s}
.pi-collection-card:hover{box-shadow:var(--nace-shadow)}
.pi-category-photos{display:grid;grid-template-columns:2fr 1fr;gap:4px;height:260px;overflow:hidden;background:var(--nace-surface)}
.pi-category-photos>picture,.pi-category-photos>div{min-width:0;min-height:0;overflow:hidden}
.pi-category-photos>div{display:grid;grid-template-rows:1fr 1fr;gap:4px}.pi-category-photos picture{display:block;overflow:hidden}.pi-category-photos img{width:100%;height:100%;object-fit:cover;display:block}
.pi-collection-intro{padding-top:32px}.pi-collection-intro .pi-eyebrow{margin-top:32px}
.pi-collection-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-block:1px solid var(--nace-border);padding:18px 0;margin-top:26px}.pi-collection-tools p{margin:0}.pi-collection-tools a{color:var(--nace-blue);font-size:.85rem;min-height:44px;display:inline-flex;align-items:center}
.pi-provenance-note{font-size:.8rem;color:var(--nace-muted);line-height:1.9;max-width:100%!important;margin:22px 0}
.pi-provenance-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.pi-provenance-note summary::before{content:'+';font-size:1.1rem}.pi-provenance-note[open] summary::before{content:'−'}
.pi-collection-body{padding-top:20px}.pi-photo-grid{columns:4;column-gap:20px}
.pi-photo-card{break-inside:avoid;display:inline-block;width:100%;margin:0 0 24px;vertical-align:top}
.pi-photo{display:block;position:relative;border-radius:4px;overflow:hidden;background:var(--nace-surface)}
.pi-photo picture,.pi-photo img{display:block;width:100%;height:auto}.pi-photo img{transition:transform .2s}.pi-photo:hover img{transform:scale(1.025)}
.pi-expand{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;background:#fff;color:var(--nace-navy);border-radius:50%;opacity:0;transition:opacity .15s}.pi-photo:hover .pi-expand,.pi-photo:focus .pi-expand{opacity:1}
.pi-photo-card figcaption{padding:12px 2px}.pi-photo-card figcaption p{font-size:.8rem;line-height:1.8;color:var(--nace-muted);margin:5px 0}.pi-badge{display:inline-block;font-size:.65rem;border:1px solid var(--nace-border);padding:3px 8px;border-radius:3px;color:var(--nace-blue)}
.pi-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;padding:18px 28px;border:0;background:#0e2440fa;color:#fff;overflow:hidden;font-family:inherit}
.pi-dialog::backdrop{background:#0e2440e8}.pi-dialog[open]{display:flex;flex-direction:column;gap:12px}.pi-dialog button,.pi-dialog a{font:inherit;font-size:.85rem;min-width:44px;min-height:44px;cursor:pointer}
.pi-dialog button{background:#ffffff14;border:1px solid #ffffff50;color:#fff;border-radius:4px;padding:8px 14px}.pi-dialog a{color:#fff}.pi-dialog :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pi-lightbox-head,.pi-lightbox-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pi-lightbox-head{justify-content:space-between}.pi-lightbox-actions{justify-content:center;flex-shrink:0}
.pi-lightbox-image-wrap{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pan-y}
.pi-lightbox-image-wrap>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.pi-lightbox-image-wrap.is-zoomed>img{max-width:none;max-height:none;width:150%;height:auto}
.pi-lightbox-prev,.pi-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#0e2440d9!important}.pi-lightbox-prev{inset-inline-start:0}.pi-lightbox-next{inset-inline-end:0}
.pi-lightbox-caption{text-align:center;margin:0;font-size:.9rem;max-width:100%!important}.pi-lightbox-type{font-size:.75rem;text-align:center;margin:0;line-height:1.6}
.pi-lightbox-thumbs{display:flex;overflow-x:auto;gap:6px;max-width:100%;height:62px;flex-shrink:0;direction:ltr;margin-inline:auto}
.pi-lightbox-thumbs button{padding:2px;width:68px;height:58px;flex-shrink:0}.pi-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.pi-lightbox-thumbs [aria-current=true]{border:2px solid #fff}
.pi-lightbox-actions .pi-quote{background:var(--nace-blue);padding:8px 18px;text-decoration:none;display:inline-flex;align-items:center;border-radius:4px}
.pi-shortlist-dialog{max-width:min(920px,96vw);max-height:92dvh;width:920px;height:auto;background:#fff;color:var(--nace-navy);inset:4dvh auto auto 50%;transform:translateX(-50%);border-radius:12px;overflow:auto;padding:24px}.pi-shortlist-dialog button{color:var(--nace-navy);border-color:var(--nace-border);background:var(--nace-surface)}.pi-shortlist-dialog a{color:var(--nace-blue)}
.pi-shortlist-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-shortlist-list li{min-width:0;border:1px solid var(--nace-border);border-radius:4px;padding:10px}.pi-shortlist-list img{width:100%;height:130px;object-fit:cover}.pi-shortlist-list p{font-size:.8rem;line-height:1.8}.pi-shortlist-list a{font-size:.8rem;overflow-wrap:anywhere}.pi-shortlist-dialog textarea{width:100%;min-height:170px;font:inherit}
.nace-inspiration-tray.pi-tray{position:fixed;inset:auto 50% 85px auto;transform:translateX(50%);z-index:250;background:var(--nace-navy);color:#fff;border:1px solid #ffffff50;border-radius:40px;padding:7px 18px;box-shadow:var(--nace-shadow);max-width:90vw}.pi-tray button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;cursor:pointer}
.nace-portfolio [hidden],.pi-dialog [hidden],.pi-tray[hidden]{display:none!important}
.nace-portfolio .breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--nace-muted);line-height:1.8}
.nace-portfolio .breadcrumbs a,.nace-portfolio .breadcrumbs span{color:var(--nace-muted)}
@media(min-width:1001px){.pi-featured-card .pi-card-copy{padding:30px}.pi-featured-card h3{font-size:1.5rem}}
@media(max-width:1000px){.pi-wrap{width:calc(100% - 48px)}.pi-hero-grid{gap:28px}.pi-project-grid,.pi-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-photo-grid{columns:3}.pi-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-moodboard{grid-template-rows:repeat(3,145px)}}
@media(max-width:700px){.pi-wrap{width:calc(100% - 32px)}.pi-section{padding-block:42px}.pi-hero{padding:22px 0 32px}.pi-hero-grid{grid-template-columns:1fr;gap:26px;margin-top:20px}.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:1.95rem;line-height:1.6}.pi-lead{font-size:.94rem}.pi-hero figure img{max-height:430px}.pi-featured-grid,.pi-project-grid{grid-template-columns:1fr;gap:22px}.pi-card-copy{padding:22px}.pi-collection-grid{grid-template-columns:1fr;gap:26px}.pi-category-photos{height:260px}.pi-moodboard{display:flex;flex-wrap:wrap;gap:12px}.pi-moodboard .pi-mood-0{width:100%;flex:0 0 100%}.pi-moodboard .pi-mood-0 picture{height:280px;flex:none}.pi-moodboard>a:not(.pi-mood-0){flex:1 0 28%;min-width:0}.pi-moodboard>a:not(.pi-mood-0) picture{height:140px;flex:none}.pi-moodboard figcaption{font-size:.62rem;gap:3px}.pi-moodboard figcaption>span:last-child{display:none}.pi-ideas-title{padding-top:22px}.pi-photo-grid{columns:2;column-gap:12px}.pi-photo-card{margin-bottom:16px}.pi-photo-card figcaption p{font-size:.72rem}.pi-expand{width:32px;height:32px;opacity:1}.pi-facts{grid-template-columns:1fr}.pi-facts>div{padding:18px 0}.pi-facts ul{display:block}.pi-facts li{margin-bottom:8px}.pi-collection-tools{gap:12px 18px}.pi-collection-tools p{flex-basis:100%}.pi-collection-intro .pi-eyebrow{margin-top:24px}.pi-dialog{padding:12px;gap:8px}.pi-lightbox-thumbs{display:none}.pi-lightbox-head button,.pi-lightbox-actions button,.pi-lightbox-actions a{font-size:.75rem;padding:7px 10px}.pi-lightbox-caption{font-size:.8rem}.pi-lightbox-type{font-size:.68rem}.pi-lightbox-actions{gap:7px}.pi-shortlist-dialog{padding:18px}.pi-shortlist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pi-shortlist-list img{height:110px}.pi-final-cta>a,.pi-final-cta>button{margin:8px 0}.pi-shortlist-dialog :is(a,button):focus-visible{outline-color:var(--nace-blue)}}
@media(max-width:700px){.pi-mood-strip{display:flex;width:100%;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px}.pi-mood-strip>a{flex:0 0 66%;scroll-snap-align:start}.pi-mood-strip picture{height:180px;flex:none}.pi-collection-intro .pi-lead{line-height:1.9}.pi-collection-intro .pi-provenance-note{margin:12px 0}.pi-lightbox-type{text-align:center!important}.pi-dialog .pi-lightbox-caption{color:#fff}}
@media(prefers-reduced-motion:reduce){.nace-portfolio *,.pi-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none}.pi-project-card:hover{transform:none}.pi-lightbox-prev,.pi-lightbox-next{transform:translateY(-50%)}.pi-shortlist-dialog{transform:translateX(-50%)}}

/* NACE colours copied from the current brand stylesheet, without a new palette. */
:root{--nace-navy:#0e2440;--nace-blue:#1b578c;--nace-white:#fff;--nace-surface:#f2f2f2;--nace-muted:#52667e;--nace-border:#dce3ed;--nace-radius-sm:4px;--nace-radius-lg:12px;--nace-shadow:0 14px 36px #0e244012}
.nace-portfolio main{color:var(--nace-navy);background:var(--nace-white)}
.nace-portfolio main *,.pi-dialog *,.nace-inspiration-tray *{box-sizing:border-box}
.pi-modal-open{overflow:hidden}.pi-wrap{width:min(1340px,calc(100% - 80px));margin-inline:auto}
.pi-section{padding-block:72px}.pi-soft{background:var(--nace-surface)}
.pi-hero{padding:38px 0 60px;background:var(--nace-surface)}
.pi-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:60px;margin-top:32px}
.pi-hero-grid.pi-no-cover{grid-template-columns:1fr;max-width:1000px}
.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.55;font-weight:500;margin:14px 0 20px;text-wrap:balance}
.pi-eyebrow{font-size:.76rem;letter-spacing:.09em;direction:ltr;color:var(--nace-blue);font-weight:650;margin:0 0 14px}
.pi-lead{font-size:1.05rem;line-height:2;color:var(--nace-muted);max-width:75ch}
.pi-hero figure,.pi-moodboard figure{margin:0}
.pi-hero figure picture{display:block;overflow:hidden;border-radius:var(--nace-radius-sm);background:var(--nace-border)}
.pi-hero figure img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block}
.pi-hero figcaption,.pi-moodboard figcaption{font-size:.76rem;line-height:1.8;color:var(--nace-muted);padding:10px 0}
.pi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0}
.pi-project-hero .pi-actions .button:nth-child(2){background:transparent;color:var(--nace-blue)}
.pi-count{margin-top:32px;color:var(--nace-muted)}.pi-count strong{font-size:2rem;color:var(--nace-navy);margin-inline-end:10px}
.pi-heading{margin-bottom:30px}.pi-heading h2,.pi-final-cta h2,.pi-facts-section h2,.pi-section>h2{font-size:clamp(1.55rem,2.7vw,2.5rem);font-weight:500;line-height:1.65;margin:0 0 20px}
.pi-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.pi-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.pi-project-card{background:#fff;border:1px solid var(--nace-border);border-radius:var(--nace-radius-sm);overflow:hidden;transition:box-shadow .2s,transform .2s;min-width:0}
.pi-project-card:hover,.pi-project-card:focus-within{box-shadow:var(--nace-shadow);transform:translateY(-3px)}
.pi-project-card>a,.pi-collection-card>a{display:block;color:inherit;text-decoration:none}
.pi-card-image{aspect-ratio:16/10;overflow:hidden;background:var(--nace-surface)}
.pi-card-image picture,.pi-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s}
.pi-project-card:hover .pi-card-image img{transform:scale(1.025)}
.pi-card-copy{padding:24px}.pi-card-copy h3{font-size:1.22rem;line-height:1.7;font-weight:550;margin:12px 0}
.pi-card-copy p{font-size:.9rem;line-height:1.9;margin:8px 0;color:var(--nace-muted)}
.pi-card-copy .pi-work-type{color:var(--nace-blue);font-size:.76rem}
.pi-meta{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.73rem;color:var(--nace-muted)}
.pi-card-metrics{list-style:none;padding:14px 0;margin:18px 0;border-block:1px solid var(--nace-border);font-size:.9rem;color:var(--nace-navy)}
.pi-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--nace-blue);margin-top:16px}
.pi-record-visual{min-height:180px;background:var(--nace-navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.7rem}
.pi-record-visual>span:first-child{font-size:2.4rem;letter-spacing:.14em;font-weight:300}
.pi-filter-bar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;padding:4px 3px 14px;max-width:100%}
.pi-filter-bar button,.pi-button{font:inherit;font-size:.85rem;min-height:46px;border:1px solid var(--nace-border);border-radius:30px;padding:10px 18px;background:#fff;color:var(--nace-navy);cursor:pointer;flex-shrink:0}
.pi-filter-bar button[aria-pressed=true]{background:var(--nace-navy);color:#fff;border-color:var(--nace-navy)}
[data-project-status]{color:var(--nace-muted);font-size:.8rem;margin:14px 0 28px}
.pi-final-cta{text-align:center;border-top:1px solid var(--nace-border)}.pi-final-cta p{margin-inline:auto}.pi-final-cta>a,.pi-final-cta>button{margin:14px}
.pi-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--nace-border)}
.pi-facts>div{padding:26px 22px;border-bottom:1px solid var(--nace-border)}
.pi-facts dt{font-size:.8rem;color:var(--nace-muted);margin-bottom:9px}.pi-facts dd{font-size:1rem;line-height:1.9;margin:0}
.pi-facts-wide{grid-column:1/-1}.pi-facts ul{display:flex;flex-wrap:wrap;gap:12px 35px;margin:0;padding-inline-start:18px}
.pi-facts a,.pi-related-services a{color:var(--nace-blue)}
.pi-scope{padding-top:0;max-width:1050px}.pi-scope .detail-copy{width:100%;padding:0}.pi-scope .detail-copy h2{font-size:1.9rem}.pi-scope .project-value{margin-top:25px}
.pi-related-services{display:flex;flex-wrap:wrap;gap:12px}.pi-related-services a{border:1px solid var(--nace-border);border-radius:4px;padding:18px;font-size:.9rem}
.pi-ideas-hero{padding-top:32px}.pi-ideas-title{max-width:1000px;padding:35px 0 20px}
.pi-moodboard{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(3,165px);gap:18px;align-items:stretch}
.pi-mood-strip{grid-column:2;grid-row:1/4;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pi-moodboard a{display:block;min-width:0;color:inherit;text-decoration:none;overflow:hidden}
.pi-moodboard .pi-mood-0{grid-row:1/4}.pi-moodboard figure{height:100%;position:relative;display:flex;flex-direction:column}
.pi-moodboard picture{display:block;flex:1;min-height:0;overflow:hidden}.pi-moodboard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s}.pi-moodboard a:hover img{transform:scale(1.025)}
.pi-moodboard figcaption{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#fff;font-size:.73rem}
.pi-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pi-collection-card{border:1px solid var(--nace-border);border-radius:4px;overflow:hidden;min-width:0;transition:box-shadow .2s}
.pi-collection-card:hover{box-shadow:var(--nace-shadow)}
.pi-category-photos{display:grid;grid-template-columns:2fr 1fr;gap:4px;height:260px;overflow:hidden;background:var(--nace-surface)}
.pi-category-photos>picture,.pi-category-photos>div{min-width:0;min-height:0;overflow:hidden}
.pi-category-photos>div{display:grid;grid-template-rows:1fr 1fr;gap:4px}.pi-category-photos picture{display:block;overflow:hidden}.pi-category-photos img{width:100%;height:100%;object-fit:cover;display:block}
.pi-collection-intro{padding-top:32px}.pi-collection-intro .pi-eyebrow{margin-top:32px}
.pi-collection-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-block:1px solid var(--nace-border);padding:18px 0;margin-top:26px}.pi-collection-tools p{margin:0}.pi-collection-tools a{color:var(--nace-blue);font-size:.85rem;min-height:44px;display:inline-flex;align-items:center}
.pi-provenance-note{font-size:.8rem;color:var(--nace-muted);line-height:1.9;max-width:100%!important;margin:22px 0}
.pi-provenance-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.pi-provenance-note summary::before{content:'+';font-size:1.1rem}.pi-provenance-note[open] summary::before{content:'−'}
.pi-collection-body{padding-top:20px}.pi-photo-grid{columns:4;column-gap:20px}
.pi-photo-card{break-inside:avoid;display:inline-block;width:100%;margin:0 0 24px;vertical-align:top}
.pi-photo{display:block;position:relative;border-radius:4px;overflow:hidden;background:var(--nace-surface)}
.pi-photo picture,.pi-photo img{display:block;width:100%;height:auto}.pi-photo img{transition:transform .2s}.pi-photo:hover img{transform:scale(1.025)}
.pi-expand{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;background:#fff;color:var(--nace-navy);border-radius:50%;opacity:0;transition:opacity .15s}.pi-photo:hover .pi-expand,.pi-photo:focus .pi-expand{opacity:1}
.pi-photo-card figcaption{padding:12px 2px}.pi-photo-card figcaption p{font-size:.8rem;line-height:1.8;color:var(--nace-muted);margin:5px 0}.pi-badge{display:inline-block;font-size:.65rem;border:1px solid var(--nace-border);padding:3px 8px;border-radius:3px;color:var(--nace-blue)}
.pi-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;padding:18px 28px;border:0;background:#0e2440fa;color:#fff;overflow:hidden;font-family:inherit}
.pi-dialog::backdrop{background:#0e2440e8}.pi-dialog[open]{display:flex;flex-direction:column;gap:12px}.pi-dialog button,.pi-dialog a{font:inherit;font-size:.85rem;min-width:44px;min-height:44px;cursor:pointer}
.pi-dialog button{background:#ffffff14;border:1px solid #ffffff50;color:#fff;border-radius:4px;padding:8px 14px}.pi-dialog a{color:#fff}.pi-dialog :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pi-lightbox-head,.pi-lightbox-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pi-lightbox-head{justify-content:space-between}.pi-lightbox-actions{justify-content:center;flex-shrink:0}
.pi-lightbox-image-wrap{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pan-y}
.pi-lightbox-image-wrap>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.pi-lightbox-image-wrap.is-zoomed>img{max-width:none;max-height:none;width:150%;height:auto}
.pi-lightbox-prev,.pi-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#0e2440d9!important}.pi-lightbox-prev{inset-inline-start:0}.pi-lightbox-next{inset-inline-end:0}
.pi-lightbox-caption{text-align:center;margin:0;font-size:.9rem;max-width:100%!important}.pi-lightbox-type{font-size:.75rem;text-align:center;margin:0;line-height:1.6}
.pi-lightbox-thumbs{display:flex;overflow-x:auto;gap:6px;max-width:100%;height:62px;flex-shrink:0;direction:ltr;margin-inline:auto}
.pi-lightbox-thumbs button{padding:2px;width:68px;height:58px;flex-shrink:0}.pi-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.pi-lightbox-thumbs [aria-current=true]{border:2px solid #fff}
.pi-lightbox-actions .pi-quote{background:var(--nace-blue);padding:8px 18px;text-decoration:none;display:inline-flex;align-items:center;border-radius:4px}
.pi-shortlist-dialog{max-width:min(920px,96vw);max-height:92dvh;width:920px;height:auto;background:#fff;color:var(--nace-navy);inset:4dvh auto auto 50%;transform:translateX(-50%);border-radius:12px;overflow:auto;padding:24px}.pi-shortlist-dialog button{color:var(--nace-navy);border-color:var(--nace-border);background:var(--nace-surface)}.pi-shortlist-dialog a{color:var(--nace-blue)}
.pi-shortlist-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-shortlist-list li{min-width:0;border:1px solid var(--nace-border);border-radius:4px;padding:10px}.pi-shortlist-list img{width:100%;height:130px;object-fit:cover}.pi-shortlist-list p{font-size:.8rem;line-height:1.8}.pi-shortlist-list a{font-size:.8rem;overflow-wrap:anywhere}.pi-shortlist-dialog textarea{width:100%;min-height:170px;font:inherit}
.nace-inspiration-tray.pi-tray{position:fixed;inset:auto 50% 85px auto;transform:translateX(50%);z-index:250;background:var(--nace-navy);color:#fff;border:1px solid #ffffff50;border-radius:40px;padding:7px 18px;box-shadow:var(--nace-shadow);max-width:90vw}.pi-tray button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;cursor:pointer}
.nace-portfolio [hidden],.pi-dialog [hidden],.pi-tray[hidden]{display:none!important}
.nace-portfolio .breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--nace-muted);line-height:1.8}
.nace-portfolio .breadcrumbs a,.nace-portfolio .breadcrumbs span{color:var(--nace-muted)}
@media(min-width:1001px){.pi-featured-card .pi-card-copy{padding:30px}.pi-featured-card h3{font-size:1.5rem}}
@media(max-width:1000px){.pi-wrap{width:calc(100% - 48px)}.pi-hero-grid{gap:28px}.pi-project-grid,.pi-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-photo-grid{columns:3}.pi-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-moodboard{grid-template-rows:repeat(3,145px)}}
@media(max-width:700px){.pi-wrap{width:calc(100% - 32px)}.pi-section{padding-block:42px}.pi-hero{padding:22px 0 32px}.pi-hero-grid{grid-template-columns:1fr;gap:26px;margin-top:20px}.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:1.95rem;line-height:1.6}.pi-lead{font-size:.94rem}.pi-hero figure img{max-height:430px}.pi-featured-grid,.pi-project-grid{grid-template-columns:1fr;gap:22px}.pi-card-copy{padding:22px}.pi-collection-grid{grid-template-columns:1fr;gap:26px}.pi-category-photos{height:260px}.pi-moodboard{display:flex;flex-wrap:wrap;gap:12px}.pi-moodboard .pi-mood-0{width:100%;flex:0 0 100%}.pi-moodboard .pi-mood-0 picture{height:280px;flex:none}.pi-moodboard>a:not(.pi-mood-0){flex:1 0 28%;min-width:0}.pi-moodboard>a:not(.pi-mood-0) picture{height:140px;flex:none}.pi-moodboard figcaption{font-size:.62rem;gap:3px}.pi-moodboard figcaption>span:last-child{display:none}.pi-ideas-title{padding-top:22px}.pi-photo-grid{columns:2;column-gap:12px}.pi-photo-card{margin-bottom:16px}.pi-photo-card figcaption p{font-size:.72rem}.pi-expand{width:32px;height:32px;opacity:1}.pi-facts{grid-template-columns:1fr}.pi-facts>div{padding:18px 0}.pi-facts ul{display:block}.pi-facts li{margin-bottom:8px}.pi-collection-tools{gap:12px 18px}.pi-collection-tools p{flex-basis:100%}.pi-collection-intro .pi-eyebrow{margin-top:24px}.pi-dialog{padding:12px;gap:8px}.pi-lightbox-thumbs{display:none}.pi-lightbox-head button,.pi-lightbox-actions button,.pi-lightbox-actions a{font-size:.75rem;padding:7px 10px}.pi-lightbox-caption{font-size:.8rem}.pi-lightbox-type{font-size:.68rem}.pi-lightbox-actions{gap:7px}.pi-shortlist-dialog{padding:18px}.pi-shortlist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pi-shortlist-list img{height:110px}.pi-final-cta>a,.pi-final-cta>button{margin:8px 0}.pi-shortlist-dialog :is(a,button):focus-visible{outline-color:var(--nace-blue)}}
@media(max-width:700px){.pi-mood-strip{display:flex;width:100%;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px}.pi-mood-strip>a{flex:0 0 66%;scroll-snap-align:start}.pi-mood-strip picture{height:180px;flex:none}.pi-collection-intro .pi-lead{line-height:1.9}.pi-collection-intro .pi-provenance-note{margin:12px 0}.pi-lightbox-type{text-align:center!important}.pi-dialog .pi-lightbox-caption{color:#fff}}
@media(prefers-reduced-motion:reduce){.nace-portfolio *,.pi-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none}.pi-project-card:hover{transform:none}.pi-lightbox-prev,.pi-lightbox-next{transform:translateY(-50%)}.pi-shortlist-dialog{transform:translateX(-50%)}}

/* NACE colours copied from the current brand stylesheet, without a new palette. */
:root{--nace-navy:#0e2440;--nace-blue:#1b578c;--nace-white:#fff;--nace-surface:#f2f2f2;--nace-muted:#52667e;--nace-border:#dce3ed;--nace-radius-sm:4px;--nace-radius-lg:12px;--nace-shadow:0 14px 36px #0e244012}
.nace-portfolio main{color:var(--nace-navy);background:var(--nace-white)}
.nace-portfolio main *,.pi-dialog *,.nace-inspiration-tray *{box-sizing:border-box}
.pi-modal-open{overflow:hidden}.pi-wrap{width:min(1340px,calc(100% - 80px));margin-inline:auto}
.pi-section{padding-block:72px}.pi-soft{background:var(--nace-surface)}
.pi-hero{padding:38px 0 60px;background:var(--nace-surface)}
.pi-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:60px;margin-top:32px}
.pi-hero-grid.pi-no-cover{grid-template-columns:1fr;max-width:1000px}
.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.55;font-weight:500;margin:14px 0 20px;text-wrap:balance}
.pi-eyebrow{font-size:.76rem;letter-spacing:.09em;direction:ltr;color:var(--nace-blue);font-weight:650;margin:0 0 14px}
.pi-lead{font-size:1.05rem;line-height:2;color:var(--nace-muted);max-width:75ch}
.pi-hero figure,.pi-moodboard figure{margin:0}
.pi-hero figure picture{display:block;overflow:hidden;border-radius:var(--nace-radius-sm);background:var(--nace-border)}
.pi-hero figure img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block}
.pi-hero figcaption,.pi-moodboard figcaption{font-size:.76rem;line-height:1.8;color:var(--nace-muted);padding:10px 0}
.pi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0}
.pi-project-hero .pi-actions .button:nth-child(2){background:transparent;color:var(--nace-blue)}
.pi-count{margin-top:32px;color:var(--nace-muted)}.pi-count strong{font-size:2rem;color:var(--nace-navy);margin-inline-end:10px}
.pi-heading{margin-bottom:30px}.pi-heading h2,.pi-final-cta h2,.pi-facts-section h2,.pi-section>h2{font-size:clamp(1.55rem,2.7vw,2.5rem);font-weight:500;line-height:1.65;margin:0 0 20px}
.pi-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.pi-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.pi-project-card{background:#fff;border:1px solid var(--nace-border);border-radius:var(--nace-radius-sm);overflow:hidden;transition:box-shadow .2s,transform .2s;min-width:0}
.pi-project-card:hover,.pi-project-card:focus-within{box-shadow:var(--nace-shadow);transform:translateY(-3px)}
.pi-project-card>a,.pi-collection-card>a{display:block;color:inherit;text-decoration:none}
.pi-card-image{aspect-ratio:16/10;overflow:hidden;background:var(--nace-surface)}
.pi-card-image picture,.pi-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s}
.pi-project-card:hover .pi-card-image img{transform:scale(1.025)}
.pi-card-copy{padding:24px}.pi-card-copy h3{font-size:1.22rem;line-height:1.7;font-weight:550;margin:12px 0}
.pi-card-copy p{font-size:.9rem;line-height:1.9;margin:8px 0;color:var(--nace-muted)}
.pi-card-copy .pi-work-type{color:var(--nace-blue);font-size:.76rem}
.pi-meta{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.73rem;color:var(--nace-muted)}
.pi-card-metrics{list-style:none;padding:14px 0;margin:18px 0;border-block:1px solid var(--nace-border);font-size:.9rem;color:var(--nace-navy)}
.pi-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--nace-blue);margin-top:16px}
.pi-record-visual{min-height:180px;background:var(--nace-navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.7rem}
.pi-record-visual>span:first-child{font-size:2.4rem;letter-spacing:.14em;font-weight:300}
.pi-filter-bar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;padding:4px 3px 14px;max-width:100%}
.pi-filter-bar button,.pi-button{font:inherit;font-size:.85rem;min-height:46px;border:1px solid var(--nace-border);border-radius:30px;padding:10px 18px;background:#fff;color:var(--nace-navy);cursor:pointer;flex-shrink:0}
.pi-filter-bar button[aria-pressed=true]{background:var(--nace-navy);color:#fff;border-color:var(--nace-navy)}
[data-project-status]{color:var(--nace-muted);font-size:.8rem;margin:14px 0 28px}
.pi-final-cta{text-align:center;border-top:1px solid var(--nace-border)}.pi-final-cta p{margin-inline:auto}.pi-final-cta>a,.pi-final-cta>button{margin:14px}
.pi-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--nace-border)}
.pi-facts>div{padding:26px 22px;border-bottom:1px solid var(--nace-border)}
.pi-facts dt{font-size:.8rem;color:var(--nace-muted);margin-bottom:9px}.pi-facts dd{font-size:1rem;line-height:1.9;margin:0}
.pi-facts-wide{grid-column:1/-1}.pi-facts ul{display:flex;flex-wrap:wrap;gap:12px 35px;margin:0;padding-inline-start:18px}
.pi-facts a,.pi-related-services a{color:var(--nace-blue)}
.pi-scope{padding-top:0;max-width:1050px}.pi-scope .detail-copy{width:100%;padding:0}.pi-scope .detail-copy h2{font-size:1.9rem}.pi-scope .project-value{margin-top:25px}
.pi-related-services{display:flex;flex-wrap:wrap;gap:12px}.pi-related-services a{border:1px solid var(--nace-border);border-radius:4px;padding:18px;font-size:.9rem}
.pi-ideas-hero{padding-top:32px}.pi-ideas-title{max-width:1000px;padding:35px 0 20px}
.pi-moodboard{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(3,165px);gap:18px;align-items:stretch}
.pi-mood-strip{grid-column:2;grid-row:1/4;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pi-moodboard a{display:block;min-width:0;color:inherit;text-decoration:none;overflow:hidden}
.pi-moodboard .pi-mood-0{grid-row:1/4}.pi-moodboard figure{height:100%;position:relative;display:flex;flex-direction:column}
.pi-moodboard picture{display:block;flex:1;min-height:0;overflow:hidden}.pi-moodboard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s}.pi-moodboard a:hover img{transform:scale(1.025)}
.pi-moodboard figcaption{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#fff;font-size:.73rem}
.pi-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pi-collection-card{border:1px solid var(--nace-border);border-radius:4px;overflow:hidden;min-width:0;transition:box-shadow .2s}
.pi-collection-card:hover{box-shadow:var(--nace-shadow)}
.pi-category-photos{display:grid;grid-template-columns:2fr 1fr;gap:4px;height:260px;overflow:hidden;background:var(--nace-surface)}
.pi-category-photos>picture,.pi-category-photos>div{min-width:0;min-height:0;overflow:hidden}
.pi-category-photos>div{display:grid;grid-template-rows:1fr 1fr;gap:4px}.pi-category-photos picture{display:block;overflow:hidden}.pi-category-photos img{width:100%;height:100%;object-fit:cover;display:block}
.pi-collection-intro{padding-top:32px}.pi-collection-intro .pi-eyebrow{margin-top:32px}
.pi-collection-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-block:1px solid var(--nace-border);padding:18px 0;margin-top:26px}.pi-collection-tools p{margin:0}.pi-collection-tools a{color:var(--nace-blue);font-size:.85rem;min-height:44px;display:inline-flex;align-items:center}
.pi-provenance-note{font-size:.8rem;color:var(--nace-muted);line-height:1.9;max-width:100%!important;margin:22px 0}
.pi-provenance-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.pi-provenance-note summary::before{content:'+';font-size:1.1rem}.pi-provenance-note[open] summary::before{content:'−'}
.pi-collection-body{padding-top:20px}.pi-photo-grid{columns:4;column-gap:20px}
.pi-photo-card{break-inside:avoid;display:inline-block;width:100%;margin:0 0 24px;vertical-align:top}
.pi-photo{display:block;position:relative;border-radius:4px;overflow:hidden;background:var(--nace-surface)}
.pi-photo picture,.pi-photo img{display:block;width:100%;height:auto}.pi-photo img{transition:transform .2s}.pi-photo:hover img{transform:scale(1.025)}
.pi-expand{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;background:#fff;color:var(--nace-navy);border-radius:50%;opacity:0;transition:opacity .15s}.pi-photo:hover .pi-expand,.pi-photo:focus .pi-expand{opacity:1}
.pi-photo-card figcaption{padding:12px 2px}.pi-photo-card figcaption p{font-size:.8rem;line-height:1.8;color:var(--nace-muted);margin:5px 0}.pi-badge{display:inline-block;font-size:.65rem;border:1px solid var(--nace-border);padding:3px 8px;border-radius:3px;color:var(--nace-blue)}
.pi-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;padding:18px 28px;border:0;background:#0e2440fa;color:#fff;overflow:hidden;font-family:inherit}
.pi-dialog::backdrop{background:#0e2440e8}.pi-dialog[open]{display:flex;flex-direction:column;gap:12px}.pi-dialog button,.pi-dialog a{font:inherit;font-size:.85rem;min-width:44px;min-height:44px;cursor:pointer}
.pi-dialog button{background:#ffffff14;border:1px solid #ffffff50;color:#fff;border-radius:4px;padding:8px 14px}.pi-dialog a{color:#fff}.pi-dialog :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pi-lightbox-head,.pi-lightbox-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pi-lightbox-head{justify-content:space-between}.pi-lightbox-actions{justify-content:center;flex-shrink:0}
.pi-lightbox-image-wrap{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pan-y}
.pi-lightbox-image-wrap>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.pi-lightbox-image-wrap.is-zoomed>img{max-width:none;max-height:none;width:150%;height:auto}
.pi-lightbox-prev,.pi-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#0e2440d9!important}.pi-lightbox-prev{inset-inline-start:0}.pi-lightbox-next{inset-inline-end:0}
.pi-lightbox-caption{text-align:center;margin:0;font-size:.9rem;max-width:100%!important}.pi-lightbox-type{font-size:.75rem;text-align:center;margin:0;line-height:1.6}
.pi-lightbox-thumbs{display:flex;overflow-x:auto;gap:6px;max-width:100%;height:62px;flex-shrink:0;direction:ltr;margin-inline:auto}
.pi-lightbox-thumbs button{padding:2px;width:68px;height:58px;flex-shrink:0}.pi-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.pi-lightbox-thumbs [aria-current=true]{border:2px solid #fff}
.pi-lightbox-actions .pi-quote{background:var(--nace-blue);padding:8px 18px;text-decoration:none;display:inline-flex;align-items:center;border-radius:4px}
.pi-shortlist-dialog{max-width:min(920px,96vw);max-height:92dvh;width:920px;height:auto;background:#fff;color:var(--nace-navy);inset:4dvh auto auto 50%;transform:translateX(-50%);border-radius:12px;overflow:auto;padding:24px}.pi-shortlist-dialog button{color:var(--nace-navy);border-color:var(--nace-border);background:var(--nace-surface)}.pi-shortlist-dialog a{color:var(--nace-blue)}
.pi-shortlist-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-shortlist-list li{min-width:0;border:1px solid var(--nace-border);border-radius:4px;padding:10px}.pi-shortlist-list img{width:100%;height:130px;object-fit:cover}.pi-shortlist-list p{font-size:.8rem;line-height:1.8}.pi-shortlist-list a{font-size:.8rem;overflow-wrap:anywhere}.pi-shortlist-dialog textarea{width:100%;min-height:170px;font:inherit}
.nace-inspiration-tray.pi-tray{position:fixed;inset:auto 50% 85px auto;transform:translateX(50%);z-index:250;background:var(--nace-navy);color:#fff;border:1px solid #ffffff50;border-radius:40px;padding:7px 18px;box-shadow:var(--nace-shadow);max-width:90vw}.pi-tray button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;cursor:pointer}
.nace-portfolio [hidden],.pi-dialog [hidden],.pi-tray[hidden]{display:none!important}
.nace-portfolio .breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--nace-muted);line-height:1.8}
.nace-portfolio .breadcrumbs a,.nace-portfolio .breadcrumbs span{color:var(--nace-muted)}
@media(min-width:1001px){.pi-featured-card .pi-card-copy{padding:30px}.pi-featured-card h3{font-size:1.5rem}}
@media(max-width:1000px){.pi-wrap{width:calc(100% - 48px)}.pi-hero-grid{gap:28px}.pi-project-grid,.pi-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-photo-grid{columns:3}.pi-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-moodboard{grid-template-rows:repeat(3,145px)}}
@media(max-width:700px){.pi-wrap{width:calc(100% - 32px)}.pi-section{padding-block:42px}.pi-hero{padding:22px 0 32px}.pi-hero-grid{grid-template-columns:1fr;gap:26px;margin-top:20px}.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:1.95rem;line-height:1.6}.pi-lead{font-size:.94rem}.pi-hero figure img{max-height:430px}.pi-featured-grid,.pi-project-grid{grid-template-columns:1fr;gap:22px}.pi-card-copy{padding:22px}.pi-collection-grid{grid-template-columns:1fr;gap:26px}.pi-category-photos{height:260px}.pi-moodboard{display:flex;flex-wrap:wrap;gap:12px}.pi-moodboard .pi-mood-0{width:100%;flex:0 0 100%}.pi-moodboard .pi-mood-0 picture{height:280px;flex:none}.pi-moodboard>a:not(.pi-mood-0){flex:1 0 28%;min-width:0}.pi-moodboard>a:not(.pi-mood-0) picture{height:140px;flex:none}.pi-moodboard figcaption{font-size:.62rem;gap:3px}.pi-moodboard figcaption>span:last-child{display:none}.pi-ideas-title{padding-top:22px}.pi-photo-grid{columns:2;column-gap:12px}.pi-photo-card{margin-bottom:16px}.pi-photo-card figcaption p{font-size:.72rem}.pi-expand{width:32px;height:32px;opacity:1}.pi-facts{grid-template-columns:1fr}.pi-facts>div{padding:18px 0}.pi-facts ul{display:block}.pi-facts li{margin-bottom:8px}.pi-collection-tools{gap:12px 18px}.pi-collection-tools p{flex-basis:100%}.pi-collection-intro .pi-eyebrow{margin-top:24px}.pi-dialog{padding:12px;gap:8px}.pi-lightbox-thumbs{display:none}.pi-lightbox-head button,.pi-lightbox-actions button,.pi-lightbox-actions a{font-size:.75rem;padding:7px 10px}.pi-lightbox-caption{font-size:.8rem}.pi-lightbox-type{font-size:.68rem}.pi-lightbox-actions{gap:7px}.pi-shortlist-dialog{padding:18px}.pi-shortlist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pi-shortlist-list img{height:110px}.pi-final-cta>a,.pi-final-cta>button{margin:8px 0}.pi-shortlist-dialog :is(a,button):focus-visible{outline-color:var(--nace-blue)}}
@media(max-width:700px){.pi-mood-strip{display:flex;width:100%;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px}.pi-mood-strip>a{flex:0 0 66%;scroll-snap-align:start}.pi-mood-strip picture{height:180px;flex:none}.pi-collection-intro .pi-lead{line-height:1.9}.pi-collection-intro .pi-provenance-note{margin:12px 0}.pi-lightbox-type{text-align:center!important}.pi-dialog .pi-lightbox-caption{color:#fff}}
@media(prefers-reduced-motion:reduce){.nace-portfolio *,.pi-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none}.pi-project-card:hover{transform:none}.pi-lightbox-prev,.pi-lightbox-next{transform:translateY(-50%)}.pi-shortlist-dialog{transform:translateX(-50%)}}

/* NACE colours copied from the current brand stylesheet, without a new palette. */
:root{--nace-navy:#0e2440;--nace-blue:#1b578c;--nace-white:#fff;--nace-surface:#f2f2f2;--nace-muted:#52667e;--nace-border:#dce3ed;--nace-radius-sm:4px;--nace-radius-lg:12px;--nace-shadow:0 14px 36px #0e244012}
.nace-portfolio main{color:var(--nace-navy);background:var(--nace-white)}
.nace-portfolio main *,.pi-dialog *,.nace-inspiration-tray *{box-sizing:border-box}
.pi-modal-open{overflow:hidden}.pi-wrap{width:min(1340px,calc(100% - 80px));margin-inline:auto}
.pi-section{padding-block:72px}.pi-soft{background:var(--nace-surface)}
.pi-hero{padding:38px 0 60px;background:var(--nace-surface)}
.pi-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:60px;margin-top:32px}
.pi-hero-grid.pi-no-cover{grid-template-columns:1fr;max-width:1000px}
.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.55;font-weight:500;margin:14px 0 20px;text-wrap:balance}
.pi-eyebrow{font-size:.76rem;letter-spacing:.09em;direction:ltr;color:var(--nace-blue);font-weight:650;margin:0 0 14px}
.pi-lead{font-size:1.05rem;line-height:2;color:var(--nace-muted);max-width:75ch}
.pi-hero figure,.pi-moodboard figure{margin:0}
.pi-hero figure picture{display:block;overflow:hidden;border-radius:var(--nace-radius-sm);background:var(--nace-border)}
.pi-hero figure img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block}
.pi-hero figcaption,.pi-moodboard figcaption{font-size:.76rem;line-height:1.8;color:var(--nace-muted);padding:10px 0}
.pi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0}
.pi-project-hero .pi-actions .button:nth-child(2){background:transparent;color:var(--nace-blue)}
.pi-count{margin-top:32px;color:var(--nace-muted)}.pi-count strong{font-size:2rem;color:var(--nace-navy);margin-inline-end:10px}
.pi-heading{margin-bottom:30px}.pi-heading h2,.pi-final-cta h2,.pi-facts-section h2,.pi-section>h2{font-size:clamp(1.55rem,2.7vw,2.5rem);font-weight:500;line-height:1.65;margin:0 0 20px}
.pi-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.pi-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.pi-project-card{background:#fff;border:1px solid var(--nace-border);border-radius:var(--nace-radius-sm);overflow:hidden;transition:box-shadow .2s,transform .2s;min-width:0}
.pi-project-card:hover,.pi-project-card:focus-within{box-shadow:var(--nace-shadow);transform:translateY(-3px)}
.pi-project-card>a,.pi-collection-card>a{display:block;color:inherit;text-decoration:none}
.pi-card-image{aspect-ratio:16/10;overflow:hidden;background:var(--nace-surface)}
.pi-card-image picture,.pi-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s}
.pi-project-card:hover .pi-card-image img{transform:scale(1.025)}
.pi-card-copy{padding:24px}.pi-card-copy h3{font-size:1.22rem;line-height:1.7;font-weight:550;margin:12px 0}
.pi-card-copy p{font-size:.9rem;line-height:1.9;margin:8px 0;color:var(--nace-muted)}
.pi-card-copy .pi-work-type{color:var(--nace-blue);font-size:.76rem}
.pi-meta{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.73rem;color:var(--nace-muted)}
.pi-card-metrics{list-style:none;padding:14px 0;margin:18px 0;border-block:1px solid var(--nace-border);font-size:.9rem;color:var(--nace-navy)}
.pi-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--nace-blue);margin-top:16px}
.pi-record-visual{min-height:180px;background:var(--nace-navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.7rem}
.pi-record-visual>span:first-child{font-size:2.4rem;letter-spacing:.14em;font-weight:300}
.pi-filter-bar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;padding:4px 3px 14px;max-width:100%}
.pi-filter-bar button,.pi-button{font:inherit;font-size:.85rem;min-height:46px;border:1px solid var(--nace-border);border-radius:30px;padding:10px 18px;background:#fff;color:var(--nace-navy);cursor:pointer;flex-shrink:0}
.pi-filter-bar button[aria-pressed=true]{background:var(--nace-navy);color:#fff;border-color:var(--nace-navy)}
[data-project-status]{color:var(--nace-muted);font-size:.8rem;margin:14px 0 28px}
.pi-final-cta{text-align:center;border-top:1px solid var(--nace-border)}.pi-final-cta p{margin-inline:auto}.pi-final-cta>a,.pi-final-cta>button{margin:14px}
.pi-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--nace-border)}
.pi-facts>div{padding:26px 22px;border-bottom:1px solid var(--nace-border)}
.pi-facts dt{font-size:.8rem;color:var(--nace-muted);margin-bottom:9px}.pi-facts dd{font-size:1rem;line-height:1.9;margin:0}
.pi-facts-wide{grid-column:1/-1}.pi-facts ul{display:flex;flex-wrap:wrap;gap:12px 35px;margin:0;padding-inline-start:18px}
.pi-facts a,.pi-related-services a{color:var(--nace-blue)}
.pi-scope{padding-top:0;max-width:1050px}.pi-scope .detail-copy{width:100%;padding:0}.pi-scope .detail-copy h2{font-size:1.9rem}.pi-scope .project-value{margin-top:25px}
.pi-related-services{display:flex;flex-wrap:wrap;gap:12px}.pi-related-services a{border:1px solid var(--nace-border);border-radius:4px;padding:18px;font-size:.9rem}
.pi-ideas-hero{padding-top:32px}.pi-ideas-title{max-width:1000px;padding:35px 0 20px}
.pi-moodboard{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(3,165px);gap:18px;align-items:stretch}
.pi-mood-strip{grid-column:2;grid-row:1/4;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pi-moodboard a{display:block;min-width:0;color:inherit;text-decoration:none;overflow:hidden}
.pi-moodboard .pi-mood-0{grid-row:1/4}.pi-moodboard figure{height:100%;position:relative;display:flex;flex-direction:column}
.pi-moodboard picture{display:block;flex:1;min-height:0;overflow:hidden}.pi-moodboard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s}.pi-moodboard a:hover img{transform:scale(1.025)}
.pi-moodboard figcaption{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#fff;font-size:.73rem}
.pi-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pi-collection-card{border:1px solid var(--nace-border);border-radius:4px;overflow:hidden;min-width:0;transition:box-shadow .2s}
.pi-collection-card:hover{box-shadow:var(--nace-shadow)}
.pi-category-photos{display:grid;grid-template-columns:2fr 1fr;gap:4px;height:260px;overflow:hidden;background:var(--nace-surface)}
.pi-category-photos>picture,.pi-category-photos>div{min-width:0;min-height:0;overflow:hidden}
.pi-category-photos>div{display:grid;grid-template-rows:1fr 1fr;gap:4px}.pi-category-photos picture{display:block;overflow:hidden}.pi-category-photos img{width:100%;height:100%;object-fit:cover;display:block}
.pi-collection-intro{padding-top:32px}.pi-collection-intro .pi-eyebrow{margin-top:32px}
.pi-collection-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-block:1px solid var(--nace-border);padding:18px 0;margin-top:26px}.pi-collection-tools p{margin:0}.pi-collection-tools a{color:var(--nace-blue);font-size:.85rem;min-height:44px;display:inline-flex;align-items:center}
.pi-provenance-note{font-size:.8rem;color:var(--nace-muted);line-height:1.9;max-width:100%!important;margin:22px 0}
.pi-provenance-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.pi-provenance-note summary::before{content:'+';font-size:1.1rem}.pi-provenance-note[open] summary::before{content:'−'}
.pi-collection-body{padding-top:20px}.pi-photo-grid{columns:4;column-gap:20px}
.pi-photo-card{break-inside:avoid;display:inline-block;width:100%;margin:0 0 24px;vertical-align:top}
.pi-photo{display:block;position:relative;border-radius:4px;overflow:hidden;background:var(--nace-surface)}
.pi-photo picture,.pi-photo img{display:block;width:100%;height:auto}.pi-photo img{transition:transform .2s}.pi-photo:hover img{transform:scale(1.025)}
.pi-expand{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;background:#fff;color:var(--nace-navy);border-radius:50%;opacity:0;transition:opacity .15s}.pi-photo:hover .pi-expand,.pi-photo:focus .pi-expand{opacity:1}
.pi-photo-card figcaption{padding:12px 2px}.pi-photo-card figcaption p{font-size:.8rem;line-height:1.8;color:var(--nace-muted);margin:5px 0}.pi-badge{display:inline-block;font-size:.65rem;border:1px solid var(--nace-border);padding:3px 8px;border-radius:3px;color:var(--nace-blue)}
.pi-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;padding:18px 28px;border:0;background:#0e2440fa;color:#fff;overflow:hidden;font-family:inherit}
.pi-dialog::backdrop{background:#0e2440e8}.pi-dialog[open]{display:flex;flex-direction:column;gap:12px}.pi-dialog button,.pi-dialog a{font:inherit;font-size:.85rem;min-width:44px;min-height:44px;cursor:pointer}
.pi-dialog button{background:#ffffff14;border:1px solid #ffffff50;color:#fff;border-radius:4px;padding:8px 14px}.pi-dialog a{color:#fff}.pi-dialog :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pi-lightbox-head,.pi-lightbox-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pi-lightbox-head{justify-content:space-between}.pi-lightbox-actions{justify-content:center;flex-shrink:0}
.pi-lightbox-image-wrap{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pan-y}
.pi-lightbox-image-wrap>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.pi-lightbox-image-wrap.is-zoomed>img{max-width:none;max-height:none;width:150%;height:auto}
.pi-lightbox-prev,.pi-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#0e2440d9!important}.pi-lightbox-prev{inset-inline-start:0}.pi-lightbox-next{inset-inline-end:0}
.pi-lightbox-caption{text-align:center;margin:0;font-size:.9rem;max-width:100%!important}.pi-lightbox-type{font-size:.75rem;text-align:center;margin:0;line-height:1.6}
.pi-lightbox-thumbs{display:flex;overflow-x:auto;gap:6px;max-width:100%;height:62px;flex-shrink:0;direction:ltr;margin-inline:auto}
.pi-lightbox-thumbs button{padding:2px;width:68px;height:58px;flex-shrink:0}.pi-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.pi-lightbox-thumbs [aria-current=true]{border:2px solid #fff}
.pi-lightbox-actions .pi-quote{background:var(--nace-blue);padding:8px 18px;text-decoration:none;display:inline-flex;align-items:center;border-radius:4px}
.pi-shortlist-dialog{max-width:min(920px,96vw);max-height:92dvh;width:920px;height:auto;background:#fff;color:var(--nace-navy);inset:4dvh auto auto 50%;transform:translateX(-50%);border-radius:12px;overflow:auto;padding:24px}.pi-shortlist-dialog button{color:var(--nace-navy);border-color:var(--nace-border);background:var(--nace-surface)}.pi-shortlist-dialog a{color:var(--nace-blue)}
.pi-shortlist-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-shortlist-list li{min-width:0;border:1px solid var(--nace-border);border-radius:4px;padding:10px}.pi-shortlist-list img{width:100%;height:130px;object-fit:cover}.pi-shortlist-list p{font-size:.8rem;line-height:1.8}.pi-shortlist-list a{font-size:.8rem;overflow-wrap:anywhere}.pi-shortlist-dialog textarea{width:100%;min-height:170px;font:inherit}
.nace-inspiration-tray.pi-tray{position:fixed;inset:auto 50% 85px auto;transform:translateX(50%);z-index:250;background:var(--nace-navy);color:#fff;border:1px solid #ffffff50;border-radius:40px;padding:7px 18px;box-shadow:var(--nace-shadow);max-width:90vw}.pi-tray button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;cursor:pointer}
.nace-portfolio [hidden],.pi-dialog [hidden],.pi-tray[hidden]{display:none!important}
.nace-portfolio .breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--nace-muted);line-height:1.8}
.nace-portfolio .breadcrumbs a,.nace-portfolio .breadcrumbs span{color:var(--nace-muted)}
@media(min-width:1001px){.pi-featured-card .pi-card-copy{padding:30px}.pi-featured-card h3{font-size:1.5rem}}
@media(max-width:1000px){.pi-wrap{width:calc(100% - 48px)}.pi-hero-grid{gap:28px}.pi-project-grid,.pi-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-photo-grid{columns:3}.pi-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-moodboard{grid-template-rows:repeat(3,145px)}}
@media(max-width:700px){.pi-wrap{width:calc(100% - 32px)}.pi-section{padding-block:42px}.pi-hero{padding:22px 0 32px}.pi-hero-grid{grid-template-columns:1fr;gap:26px;margin-top:20px}.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:1.95rem;line-height:1.6}.pi-lead{font-size:.94rem}.pi-hero figure img{max-height:430px}.pi-featured-grid,.pi-project-grid{grid-template-columns:1fr;gap:22px}.pi-card-copy{padding:22px}.pi-collection-grid{grid-template-columns:1fr;gap:26px}.pi-category-photos{height:260px}.pi-moodboard{display:flex;flex-wrap:wrap;gap:12px}.pi-moodboard .pi-mood-0{width:100%;flex:0 0 100%}.pi-moodboard .pi-mood-0 picture{height:280px;flex:none}.pi-moodboard>a:not(.pi-mood-0){flex:1 0 28%;min-width:0}.pi-moodboard>a:not(.pi-mood-0) picture{height:140px;flex:none}.pi-moodboard figcaption{font-size:.62rem;gap:3px}.pi-moodboard figcaption>span:last-child{display:none}.pi-ideas-title{padding-top:22px}.pi-photo-grid{columns:2;column-gap:12px}.pi-photo-card{margin-bottom:16px}.pi-photo-card figcaption p{font-size:.72rem}.pi-expand{width:32px;height:32px;opacity:1}.pi-facts{grid-template-columns:1fr}.pi-facts>div{padding:18px 0}.pi-facts ul{display:block}.pi-facts li{margin-bottom:8px}.pi-collection-tools{gap:12px 18px}.pi-collection-tools p{flex-basis:100%}.pi-collection-intro .pi-eyebrow{margin-top:24px}.pi-dialog{padding:12px;gap:8px}.pi-lightbox-thumbs{display:none}.pi-lightbox-head button,.pi-lightbox-actions button,.pi-lightbox-actions a{font-size:.75rem;padding:7px 10px}.pi-lightbox-caption{font-size:.8rem}.pi-lightbox-type{font-size:.68rem}.pi-lightbox-actions{gap:7px}.pi-shortlist-dialog{padding:18px}.pi-shortlist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pi-shortlist-list img{height:110px}.pi-final-cta>a,.pi-final-cta>button{margin:8px 0}.pi-shortlist-dialog :is(a,button):focus-visible{outline-color:var(--nace-blue)}}
@media(max-width:700px){.pi-mood-strip{display:flex;width:100%;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px}.pi-mood-strip>a{flex:0 0 66%;scroll-snap-align:start}.pi-mood-strip picture{height:180px;flex:none}.pi-collection-intro .pi-lead{line-height:1.9}.pi-collection-intro .pi-provenance-note{margin:12px 0}.pi-lightbox-type{text-align:center!important}.pi-dialog .pi-lightbox-caption{color:#fff}}
@media(prefers-reduced-motion:reduce){.nace-portfolio *,.pi-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none}.pi-project-card:hover{transform:none}.pi-lightbox-prev,.pi-lightbox-next{transform:translateY(-50%)}.pi-shortlist-dialog{transform:translateX(-50%)}}

/* NACE colours copied from the current brand stylesheet, without a new palette. */
:root{--nace-navy:#0e2440;--nace-blue:#1b578c;--nace-white:#fff;--nace-surface:#f2f2f2;--nace-muted:#52667e;--nace-border:#dce3ed;--nace-radius-sm:4px;--nace-radius-lg:12px;--nace-shadow:0 14px 36px #0e244012}
.nace-portfolio main{color:var(--nace-navy);background:var(--nace-white)}
.nace-portfolio main *,.pi-dialog *,.nace-inspiration-tray *{box-sizing:border-box}
.pi-modal-open{overflow:hidden}.pi-wrap{width:min(1340px,calc(100% - 80px));margin-inline:auto}
.pi-section{padding-block:72px}.pi-soft{background:var(--nace-surface)}
.pi-hero{padding:38px 0 60px;background:var(--nace-surface)}
.pi-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:60px;margin-top:32px}
.pi-hero-grid.pi-no-cover{grid-template-columns:1fr;max-width:1000px}
.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.55;font-weight:500;margin:14px 0 20px;text-wrap:balance}
.pi-eyebrow{font-size:.76rem;letter-spacing:.09em;direction:ltr;color:var(--nace-blue);font-weight:650;margin:0 0 14px}
.pi-lead{font-size:1.05rem;line-height:2;color:var(--nace-muted);max-width:75ch}
.pi-hero figure,.pi-moodboard figure{margin:0}
.pi-hero figure picture{display:block;overflow:hidden;border-radius:var(--nace-radius-sm);background:var(--nace-border)}
.pi-hero figure img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block}
.pi-hero figcaption,.pi-moodboard figcaption{font-size:.76rem;line-height:1.8;color:var(--nace-muted);padding:10px 0}
.pi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0}
.pi-project-hero .pi-actions .button:nth-child(2){background:transparent;color:var(--nace-blue)}
.pi-count{margin-top:32px;color:var(--nace-muted)}.pi-count strong{font-size:2rem;color:var(--nace-navy);margin-inline-end:10px}
.pi-heading{margin-bottom:30px}.pi-heading h2,.pi-final-cta h2,.pi-facts-section h2,.pi-section>h2{font-size:clamp(1.55rem,2.7vw,2.5rem);font-weight:500;line-height:1.65;margin:0 0 20px}
.pi-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.pi-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.pi-project-card{background:#fff;border:1px solid var(--nace-border);border-radius:var(--nace-radius-sm);overflow:hidden;transition:box-shadow .2s,transform .2s;min-width:0}
.pi-project-card:hover,.pi-project-card:focus-within{box-shadow:var(--nace-shadow);transform:translateY(-3px)}
.pi-project-card>a,.pi-collection-card>a{display:block;color:inherit;text-decoration:none}
.pi-card-image{aspect-ratio:16/10;overflow:hidden;background:var(--nace-surface)}
.pi-card-image picture,.pi-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s}
.pi-project-card:hover .pi-card-image img{transform:scale(1.025)}
.pi-card-copy{padding:24px}.pi-card-copy h3{font-size:1.22rem;line-height:1.7;font-weight:550;margin:12px 0}
.pi-card-copy p{font-size:.9rem;line-height:1.9;margin:8px 0;color:var(--nace-muted)}
.pi-card-copy .pi-work-type{color:var(--nace-blue);font-size:.76rem}
.pi-meta{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.73rem;color:var(--nace-muted)}
.pi-card-metrics{list-style:none;padding:14px 0;margin:18px 0;border-block:1px solid var(--nace-border);font-size:.9rem;color:var(--nace-navy)}
.pi-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--nace-blue);margin-top:16px}
.pi-record-visual{min-height:180px;background:var(--nace-navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.7rem}
.pi-record-visual>span:first-child{font-size:2.4rem;letter-spacing:.14em;font-weight:300}
.pi-filter-bar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;padding:4px 3px 14px;max-width:100%}
.pi-filter-bar button,.pi-button{font:inherit;font-size:.85rem;min-height:46px;border:1px solid var(--nace-border);border-radius:30px;padding:10px 18px;background:#fff;color:var(--nace-navy);cursor:pointer;flex-shrink:0}
.pi-filter-bar button[aria-pressed=true]{background:var(--nace-navy);color:#fff;border-color:var(--nace-navy)}
[data-project-status]{color:var(--nace-muted);font-size:.8rem;margin:14px 0 28px}
.pi-final-cta{text-align:center;border-top:1px solid var(--nace-border)}.pi-final-cta p{margin-inline:auto}.pi-final-cta>a,.pi-final-cta>button{margin:14px}
.pi-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--nace-border)}
.pi-facts>div{padding:26px 22px;border-bottom:1px solid var(--nace-border)}
.pi-facts dt{font-size:.8rem;color:var(--nace-muted);margin-bottom:9px}.pi-facts dd{font-size:1rem;line-height:1.9;margin:0}
.pi-facts-wide{grid-column:1/-1}.pi-facts ul{display:flex;flex-wrap:wrap;gap:12px 35px;margin:0;padding-inline-start:18px}
.pi-facts a,.pi-related-services a{color:var(--nace-blue)}
.pi-scope{padding-top:0;max-width:1050px}.pi-scope .detail-copy{width:100%;padding:0}.pi-scope .detail-copy h2{font-size:1.9rem}.pi-scope .project-value{margin-top:25px}
.pi-related-services{display:flex;flex-wrap:wrap;gap:12px}.pi-related-services a{border:1px solid var(--nace-border);border-radius:4px;padding:18px;font-size:.9rem}
.pi-ideas-hero{padding-top:32px}.pi-ideas-title{max-width:1000px;padding:35px 0 20px}
.pi-moodboard{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(3,165px);gap:18px;align-items:stretch}
.pi-mood-strip{grid-column:2;grid-row:1/4;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pi-moodboard a{display:block;min-width:0;color:inherit;text-decoration:none;overflow:hidden}
.pi-moodboard .pi-mood-0{grid-row:1/4}.pi-moodboard figure{height:100%;position:relative;display:flex;flex-direction:column}
.pi-moodboard picture{display:block;flex:1;min-height:0;overflow:hidden}.pi-moodboard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s}.pi-moodboard a:hover img{transform:scale(1.025)}
.pi-moodboard figcaption{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#fff;font-size:.73rem}
.pi-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pi-collection-card{border:1px solid var(--nace-border);border-radius:4px;overflow:hidden;min-width:0;transition:box-shadow .2s}
.pi-collection-card:hover{box-shadow:var(--nace-shadow)}
.pi-category-photos{display:grid;grid-template-columns:2fr 1fr;gap:4px;height:260px;overflow:hidden;background:var(--nace-surface)}
.pi-category-photos>picture,.pi-category-photos>div{min-width:0;min-height:0;overflow:hidden}
.pi-category-photos>div{display:grid;grid-template-rows:1fr 1fr;gap:4px}.pi-category-photos picture{display:block;overflow:hidden}.pi-category-photos img{width:100%;height:100%;object-fit:cover;display:block}
.pi-collection-intro{padding-top:32px}.pi-collection-intro .pi-eyebrow{margin-top:32px}
.pi-collection-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-block:1px solid var(--nace-border);padding:18px 0;margin-top:26px}.pi-collection-tools p{margin:0}.pi-collection-tools a{color:var(--nace-blue);font-size:.85rem;min-height:44px;display:inline-flex;align-items:center}
.pi-provenance-note{font-size:.8rem;color:var(--nace-muted);line-height:1.9;max-width:100%!important;margin:22px 0}
.pi-provenance-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.pi-provenance-note summary::before{content:'+';font-size:1.1rem}.pi-provenance-note[open] summary::before{content:'−'}
.pi-collection-body{padding-top:20px}.pi-photo-grid{columns:4;column-gap:20px}
.pi-photo-card{break-inside:avoid;display:inline-block;width:100%;margin:0 0 24px;vertical-align:top}
.pi-photo{display:block;position:relative;border-radius:4px;overflow:hidden;background:var(--nace-surface)}
.pi-photo picture,.pi-photo img{display:block;width:100%;height:auto}.pi-photo img{transition:transform .2s}.pi-photo:hover img{transform:scale(1.025)}
.pi-expand{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;background:#fff;color:var(--nace-navy);border-radius:50%;opacity:0;transition:opacity .15s}.pi-photo:hover .pi-expand,.pi-photo:focus .pi-expand{opacity:1}
.pi-photo-card figcaption{padding:12px 2px}.pi-photo-card figcaption p{font-size:.8rem;line-height:1.8;color:var(--nace-muted);margin:5px 0}.pi-badge{display:inline-block;font-size:.65rem;border:1px solid var(--nace-border);padding:3px 8px;border-radius:3px;color:var(--nace-blue)}
.pi-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;padding:18px 28px;border:0;background:#0e2440fa;color:#fff;overflow:hidden;font-family:inherit}
.pi-dialog::backdrop{background:#0e2440e8}.pi-dialog[open]{display:flex;flex-direction:column;gap:12px}.pi-dialog button,.pi-dialog a{font:inherit;font-size:.85rem;min-width:44px;min-height:44px;cursor:pointer}
.pi-dialog button{background:#ffffff14;border:1px solid #ffffff50;color:#fff;border-radius:4px;padding:8px 14px}.pi-dialog a{color:#fff}.pi-dialog :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pi-lightbox-head,.pi-lightbox-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pi-lightbox-head{justify-content:space-between}.pi-lightbox-actions{justify-content:center;flex-shrink:0}
.pi-lightbox-image-wrap{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pan-y}
.pi-lightbox-image-wrap>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.pi-lightbox-image-wrap.is-zoomed>img{max-width:none;max-height:none;width:150%;height:auto}
.pi-lightbox-prev,.pi-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#0e2440d9!important}.pi-lightbox-prev{inset-inline-start:0}.pi-lightbox-next{inset-inline-end:0}
.pi-lightbox-caption{text-align:center;margin:0;font-size:.9rem;max-width:100%!important}.pi-lightbox-type{font-size:.75rem;text-align:center;margin:0;line-height:1.6}
.pi-lightbox-thumbs{display:flex;overflow-x:auto;gap:6px;max-width:100%;height:62px;flex-shrink:0;direction:ltr;margin-inline:auto}
.pi-lightbox-thumbs button{padding:2px;width:68px;height:58px;flex-shrink:0}.pi-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.pi-lightbox-thumbs [aria-current=true]{border:2px solid #fff}
.pi-lightbox-actions .pi-quote{background:var(--nace-blue);padding:8px 18px;text-decoration:none;display:inline-flex;align-items:center;border-radius:4px}
.pi-shortlist-dialog{max-width:min(920px,96vw);max-height:92dvh;width:920px;height:auto;background:#fff;color:var(--nace-navy);inset:4dvh auto auto 50%;transform:translateX(-50%);border-radius:12px;overflow:auto;padding:24px}.pi-shortlist-dialog button{color:var(--nace-navy);border-color:var(--nace-border);background:var(--nace-surface)}.pi-shortlist-dialog a{color:var(--nace-blue)}
.pi-shortlist-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-shortlist-list li{min-width:0;border:1px solid var(--nace-border);border-radius:4px;padding:10px}.pi-shortlist-list img{width:100%;height:130px;object-fit:cover}.pi-shortlist-list p{font-size:.8rem;line-height:1.8}.pi-shortlist-list a{font-size:.8rem;overflow-wrap:anywhere}.pi-shortlist-dialog textarea{width:100%;min-height:170px;font:inherit}
.nace-inspiration-tray.pi-tray{position:fixed;inset:auto 50% 85px auto;transform:translateX(50%);z-index:250;background:var(--nace-navy);color:#fff;border:1px solid #ffffff50;border-radius:40px;padding:7px 18px;box-shadow:var(--nace-shadow);max-width:90vw}.pi-tray button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;cursor:pointer}
.nace-portfolio [hidden],.pi-dialog [hidden],.pi-tray[hidden]{display:none!important}
.nace-portfolio .breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--nace-muted);line-height:1.8}
.nace-portfolio .breadcrumbs a,.nace-portfolio .breadcrumbs span{color:var(--nace-muted)}
@media(min-width:1001px){.pi-featured-card .pi-card-copy{padding:30px}.pi-featured-card h3{font-size:1.5rem}}
@media(max-width:1000px){.pi-wrap{width:calc(100% - 48px)}.pi-hero-grid{gap:28px}.pi-project-grid,.pi-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-photo-grid{columns:3}.pi-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-moodboard{grid-template-rows:repeat(3,145px)}}
@media(max-width:700px){.pi-wrap{width:calc(100% - 32px)}.pi-section{padding-block:42px}.pi-hero{padding:22px 0 32px}.pi-hero-grid{grid-template-columns:1fr;gap:26px;margin-top:20px}.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:1.95rem;line-height:1.6}.pi-lead{font-size:.94rem}.pi-hero figure img{max-height:430px}.pi-featured-grid,.pi-project-grid{grid-template-columns:1fr;gap:22px}.pi-card-copy{padding:22px}.pi-collection-grid{grid-template-columns:1fr;gap:26px}.pi-category-photos{height:260px}.pi-moodboard{display:flex;flex-wrap:wrap;gap:12px}.pi-moodboard .pi-mood-0{width:100%;flex:0 0 100%}.pi-moodboard .pi-mood-0 picture{height:280px;flex:none}.pi-moodboard>a:not(.pi-mood-0){flex:1 0 28%;min-width:0}.pi-moodboard>a:not(.pi-mood-0) picture{height:140px;flex:none}.pi-moodboard figcaption{font-size:.62rem;gap:3px}.pi-moodboard figcaption>span:last-child{display:none}.pi-ideas-title{padding-top:22px}.pi-photo-grid{columns:2;column-gap:12px}.pi-photo-card{margin-bottom:16px}.pi-photo-card figcaption p{font-size:.72rem}.pi-expand{width:32px;height:32px;opacity:1}.pi-facts{grid-template-columns:1fr}.pi-facts>div{padding:18px 0}.pi-facts ul{display:block}.pi-facts li{margin-bottom:8px}.pi-collection-tools{gap:12px 18px}.pi-collection-tools p{flex-basis:100%}.pi-collection-intro .pi-eyebrow{margin-top:24px}.pi-dialog{padding:12px;gap:8px}.pi-lightbox-thumbs{display:none}.pi-lightbox-head button,.pi-lightbox-actions button,.pi-lightbox-actions a{font-size:.75rem;padding:7px 10px}.pi-lightbox-caption{font-size:.8rem}.pi-lightbox-type{font-size:.68rem}.pi-lightbox-actions{gap:7px}.pi-shortlist-dialog{padding:18px}.pi-shortlist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pi-shortlist-list img{height:110px}.pi-final-cta>a,.pi-final-cta>button{margin:8px 0}.pi-shortlist-dialog :is(a,button):focus-visible{outline-color:var(--nace-blue)}}
@media(max-width:700px){.pi-mood-strip{display:flex;width:100%;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px}.pi-mood-strip>a{flex:0 0 66%;scroll-snap-align:start}.pi-mood-strip picture{height:180px;flex:none}.pi-collection-intro .pi-lead{line-height:1.9}.pi-collection-intro .pi-provenance-note{margin:12px 0}.pi-lightbox-type{text-align:center!important}.pi-dialog .pi-lightbox-caption{color:#fff}}
@media(prefers-reduced-motion:reduce){.nace-portfolio *,.pi-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none}.pi-project-card:hover{transform:none}.pi-lightbox-prev,.pi-lightbox-next{transform:translateY(-50%)}.pi-shortlist-dialog{transform:translateX(-50%)}}

/* NACE colours copied from the current brand stylesheet, without a new palette. */
:root{--nace-navy:#0e2440;--nace-blue:#1b578c;--nace-white:#fff;--nace-surface:#f2f2f2;--nace-muted:#52667e;--nace-border:#dce3ed;--nace-radius-sm:4px;--nace-radius-lg:12px;--nace-shadow:0 14px 36px #0e244012}
.nace-portfolio main{color:var(--nace-navy);background:var(--nace-white)}
.nace-portfolio main *,.pi-dialog *,.nace-inspiration-tray *{box-sizing:border-box}
.pi-modal-open{overflow:hidden}.pi-wrap{width:min(1340px,calc(100% - 80px));margin-inline:auto}
.pi-section{padding-block:72px}.pi-soft{background:var(--nace-surface)}
.pi-hero{padding:38px 0 60px;background:var(--nace-surface)}
.pi-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:60px;margin-top:32px}
.pi-hero-grid.pi-no-cover{grid-template-columns:1fr;max-width:1000px}
.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.55;font-weight:500;margin:14px 0 20px;text-wrap:balance}
.pi-eyebrow{font-size:.76rem;letter-spacing:.09em;direction:ltr;color:var(--nace-blue);font-weight:650;margin:0 0 14px}
.pi-lead{font-size:1.05rem;line-height:2;color:var(--nace-muted);max-width:75ch}
.pi-hero figure,.pi-moodboard figure{margin:0}
.pi-hero figure picture{display:block;overflow:hidden;border-radius:var(--nace-radius-sm);background:var(--nace-border)}
.pi-hero figure img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block}
.pi-hero figcaption,.pi-moodboard figcaption{font-size:.76rem;line-height:1.8;color:var(--nace-muted);padding:10px 0}
.pi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0}
.pi-project-hero .pi-actions .button:nth-child(2){background:transparent;color:var(--nace-blue)}
.pi-count{margin-top:32px;color:var(--nace-muted)}.pi-count strong{font-size:2rem;color:var(--nace-navy);margin-inline-end:10px}
.pi-heading{margin-bottom:30px}.pi-heading h2,.pi-final-cta h2,.pi-facts-section h2,.pi-section>h2{font-size:clamp(1.55rem,2.7vw,2.5rem);font-weight:500;line-height:1.65;margin:0 0 20px}
.pi-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.pi-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.pi-project-card{background:#fff;border:1px solid var(--nace-border);border-radius:var(--nace-radius-sm);overflow:hidden;transition:box-shadow .2s,transform .2s;min-width:0}
.pi-project-card:hover,.pi-project-card:focus-within{box-shadow:var(--nace-shadow);transform:translateY(-3px)}
.pi-project-card>a,.pi-collection-card>a{display:block;color:inherit;text-decoration:none}
.pi-card-image{aspect-ratio:16/10;overflow:hidden;background:var(--nace-surface)}
.pi-card-image picture,.pi-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s}
.pi-project-card:hover .pi-card-image img{transform:scale(1.025)}
.pi-card-copy{padding:24px}.pi-card-copy h3{font-size:1.22rem;line-height:1.7;font-weight:550;margin:12px 0}
.pi-card-copy p{font-size:.9rem;line-height:1.9;margin:8px 0;color:var(--nace-muted)}
.pi-card-copy .pi-work-type{color:var(--nace-blue);font-size:.76rem}
.pi-meta{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.73rem;color:var(--nace-muted)}
.pi-card-metrics{list-style:none;padding:14px 0;margin:18px 0;border-block:1px solid var(--nace-border);font-size:.9rem;color:var(--nace-navy)}
.pi-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--nace-blue);margin-top:16px}
.pi-record-visual{min-height:180px;background:var(--nace-navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.7rem}
.pi-record-visual>span:first-child{font-size:2.4rem;letter-spacing:.14em;font-weight:300}
.pi-filter-bar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;padding:4px 3px 14px;max-width:100%}
.pi-filter-bar button,.pi-button{font:inherit;font-size:.85rem;min-height:46px;border:1px solid var(--nace-border);border-radius:30px;padding:10px 18px;background:#fff;color:var(--nace-navy);cursor:pointer;flex-shrink:0}
.pi-filter-bar button[aria-pressed=true]{background:var(--nace-navy);color:#fff;border-color:var(--nace-navy)}
[data-project-status]{color:var(--nace-muted);font-size:.8rem;margin:14px 0 28px}
.pi-final-cta{text-align:center;border-top:1px solid var(--nace-border)}.pi-final-cta p{margin-inline:auto}.pi-final-cta>a,.pi-final-cta>button{margin:14px}
.pi-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--nace-border)}
.pi-facts>div{padding:26px 22px;border-bottom:1px solid var(--nace-border)}
.pi-facts dt{font-size:.8rem;color:var(--nace-muted);margin-bottom:9px}.pi-facts dd{font-size:1rem;line-height:1.9;margin:0}
.pi-facts-wide{grid-column:1/-1}.pi-facts ul{display:flex;flex-wrap:wrap;gap:12px 35px;margin:0;padding-inline-start:18px}
.pi-facts a,.pi-related-services a{color:var(--nace-blue)}
.pi-scope{padding-top:0;max-width:1050px}.pi-scope .detail-copy{width:100%;padding:0}.pi-scope .detail-copy h2{font-size:1.9rem}.pi-scope .project-value{margin-top:25px}
.pi-related-services{display:flex;flex-wrap:wrap;gap:12px}.pi-related-services a{border:1px solid var(--nace-border);border-radius:4px;padding:18px;font-size:.9rem}
.pi-ideas-hero{padding-top:32px}.pi-ideas-title{max-width:1000px;padding:35px 0 20px}
.pi-moodboard{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(3,165px);gap:18px;align-items:stretch}
.pi-mood-strip{grid-column:2;grid-row:1/4;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pi-moodboard a{display:block;min-width:0;color:inherit;text-decoration:none;overflow:hidden}
.pi-moodboard .pi-mood-0{grid-row:1/4}.pi-moodboard figure{height:100%;position:relative;display:flex;flex-direction:column}
.pi-moodboard picture{display:block;flex:1;min-height:0;overflow:hidden}.pi-moodboard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s}.pi-moodboard a:hover img{transform:scale(1.025)}
.pi-moodboard figcaption{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#fff;font-size:.73rem}
.pi-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pi-collection-card{border:1px solid var(--nace-border);border-radius:4px;overflow:hidden;min-width:0;transition:box-shadow .2s}
.pi-collection-card:hover{box-shadow:var(--nace-shadow)}
.pi-category-photos{display:grid;grid-template-columns:2fr 1fr;gap:4px;height:260px;overflow:hidden;background:var(--nace-surface)}
.pi-category-photos>picture,.pi-category-photos>div{min-width:0;min-height:0;overflow:hidden}
.pi-category-photos>div{display:grid;grid-template-rows:1fr 1fr;gap:4px}.pi-category-photos picture{display:block;overflow:hidden}.pi-category-photos img{width:100%;height:100%;object-fit:cover;display:block}
.pi-collection-intro{padding-top:32px}.pi-collection-intro .pi-eyebrow{margin-top:32px}
.pi-collection-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-block:1px solid var(--nace-border);padding:18px 0;margin-top:26px}.pi-collection-tools p{margin:0}.pi-collection-tools a{color:var(--nace-blue);font-size:.85rem;min-height:44px;display:inline-flex;align-items:center}
.pi-provenance-note{font-size:.8rem;color:var(--nace-muted);line-height:1.9;max-width:100%!important;margin:22px 0}
.pi-provenance-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.pi-provenance-note summary::before{content:'+';font-size:1.1rem}.pi-provenance-note[open] summary::before{content:'−'}
.pi-collection-body{padding-top:20px}.pi-photo-grid{columns:4;column-gap:20px}
.pi-photo-card{break-inside:avoid;display:inline-block;width:100%;margin:0 0 24px;vertical-align:top}
.pi-photo{display:block;position:relative;border-radius:4px;overflow:hidden;background:var(--nace-surface)}
.pi-photo picture,.pi-photo img{display:block;width:100%;height:auto}.pi-photo img{transition:transform .2s}.pi-photo:hover img{transform:scale(1.025)}
.pi-expand{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;background:#fff;color:var(--nace-navy);border-radius:50%;opacity:0;transition:opacity .15s}.pi-photo:hover .pi-expand,.pi-photo:focus .pi-expand{opacity:1}
.pi-photo-card figcaption{padding:12px 2px}.pi-photo-card figcaption p{font-size:.8rem;line-height:1.8;color:var(--nace-muted);margin:5px 0}.pi-badge{display:inline-block;font-size:.65rem;border:1px solid var(--nace-border);padding:3px 8px;border-radius:3px;color:var(--nace-blue)}
.pi-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;padding:18px 28px;border:0;background:#0e2440fa;color:#fff;overflow:hidden;font-family:inherit}
.pi-dialog::backdrop{background:#0e2440e8}.pi-dialog[open]{display:flex;flex-direction:column;gap:12px}.pi-dialog button,.pi-dialog a{font:inherit;font-size:.85rem;min-width:44px;min-height:44px;cursor:pointer}
.pi-dialog button{background:#ffffff14;border:1px solid #ffffff50;color:#fff;border-radius:4px;padding:8px 14px}.pi-dialog a{color:#fff}.pi-dialog :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pi-lightbox-head,.pi-lightbox-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pi-lightbox-head{justify-content:space-between}.pi-lightbox-actions{justify-content:center;flex-shrink:0}
.pi-lightbox-image-wrap{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pan-y}
.pi-lightbox-image-wrap>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.pi-lightbox-image-wrap.is-zoomed>img{max-width:none;max-height:none;width:150%;height:auto}
.pi-lightbox-prev,.pi-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#0e2440d9!important}.pi-lightbox-prev{inset-inline-start:0}.pi-lightbox-next{inset-inline-end:0}
.pi-lightbox-caption{text-align:center;margin:0;font-size:.9rem;max-width:100%!important}.pi-lightbox-type{font-size:.75rem;text-align:center;margin:0;line-height:1.6}
.pi-lightbox-thumbs{display:flex;overflow-x:auto;gap:6px;max-width:100%;height:62px;flex-shrink:0;direction:ltr;margin-inline:auto}
.pi-lightbox-thumbs button{padding:2px;width:68px;height:58px;flex-shrink:0}.pi-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.pi-lightbox-thumbs [aria-current=true]{border:2px solid #fff}
.pi-lightbox-actions .pi-quote{background:var(--nace-blue);padding:8px 18px;text-decoration:none;display:inline-flex;align-items:center;border-radius:4px}
.pi-shortlist-dialog{max-width:min(920px,96vw);max-height:92dvh;width:920px;height:auto;background:#fff;color:var(--nace-navy);inset:4dvh auto auto 50%;transform:translateX(-50%);border-radius:12px;overflow:auto;padding:24px}.pi-shortlist-dialog button{color:var(--nace-navy);border-color:var(--nace-border);background:var(--nace-surface)}.pi-shortlist-dialog a{color:var(--nace-blue)}
.pi-shortlist-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-shortlist-list li{min-width:0;border:1px solid var(--nace-border);border-radius:4px;padding:10px}.pi-shortlist-list img{width:100%;height:130px;object-fit:cover}.pi-shortlist-list p{font-size:.8rem;line-height:1.8}.pi-shortlist-list a{font-size:.8rem;overflow-wrap:anywhere}.pi-shortlist-dialog textarea{width:100%;min-height:170px;font:inherit}
.nace-inspiration-tray.pi-tray{position:fixed;inset:auto 50% 85px auto;transform:translateX(50%);z-index:250;background:var(--nace-navy);color:#fff;border:1px solid #ffffff50;border-radius:40px;padding:7px 18px;box-shadow:var(--nace-shadow);max-width:90vw}.pi-tray button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;cursor:pointer}
.nace-portfolio [hidden],.pi-dialog [hidden],.pi-tray[hidden]{display:none!important}
.nace-portfolio .breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--nace-muted);line-height:1.8}
.nace-portfolio .breadcrumbs a,.nace-portfolio .breadcrumbs span{color:var(--nace-muted)}
@media(min-width:1001px){.pi-featured-card .pi-card-copy{padding:30px}.pi-featured-card h3{font-size:1.5rem}}
@media(max-width:1000px){.pi-wrap{width:calc(100% - 48px)}.pi-hero-grid{gap:28px}.pi-project-grid,.pi-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-photo-grid{columns:3}.pi-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-moodboard{grid-template-rows:repeat(3,145px)}}
@media(max-width:700px){.pi-wrap{width:calc(100% - 32px)}.pi-section{padding-block:42px}.pi-hero{padding:22px 0 32px}.pi-hero-grid{grid-template-columns:1fr;gap:26px;margin-top:20px}.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:1.95rem;line-height:1.6}.pi-lead{font-size:.94rem}.pi-hero figure img{max-height:430px}.pi-featured-grid,.pi-project-grid{grid-template-columns:1fr;gap:22px}.pi-card-copy{padding:22px}.pi-collection-grid{grid-template-columns:1fr;gap:26px}.pi-category-photos{height:260px}.pi-moodboard{display:flex;flex-wrap:wrap;gap:12px}.pi-moodboard .pi-mood-0{width:100%;flex:0 0 100%}.pi-moodboard .pi-mood-0 picture{height:280px;flex:none}.pi-moodboard>a:not(.pi-mood-0){flex:1 0 28%;min-width:0}.pi-moodboard>a:not(.pi-mood-0) picture{height:140px;flex:none}.pi-moodboard figcaption{font-size:.62rem;gap:3px}.pi-moodboard figcaption>span:last-child{display:none}.pi-ideas-title{padding-top:22px}.pi-photo-grid{columns:2;column-gap:12px}.pi-photo-card{margin-bottom:16px}.pi-photo-card figcaption p{font-size:.72rem}.pi-expand{width:32px;height:32px;opacity:1}.pi-facts{grid-template-columns:1fr}.pi-facts>div{padding:18px 0}.pi-facts ul{display:block}.pi-facts li{margin-bottom:8px}.pi-collection-tools{gap:12px 18px}.pi-collection-tools p{flex-basis:100%}.pi-collection-intro .pi-eyebrow{margin-top:24px}.pi-dialog{padding:12px;gap:8px}.pi-lightbox-thumbs{display:none}.pi-lightbox-head button,.pi-lightbox-actions button,.pi-lightbox-actions a{font-size:.75rem;padding:7px 10px}.pi-lightbox-caption{font-size:.8rem}.pi-lightbox-type{font-size:.68rem}.pi-lightbox-actions{gap:7px}.pi-shortlist-dialog{padding:18px}.pi-shortlist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pi-shortlist-list img{height:110px}.pi-final-cta>a,.pi-final-cta>button{margin:8px 0}.pi-shortlist-dialog :is(a,button):focus-visible{outline-color:var(--nace-blue)}}
@media(max-width:700px){.pi-mood-strip{display:flex;width:100%;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px}.pi-mood-strip>a{flex:0 0 66%;scroll-snap-align:start}.pi-mood-strip picture{height:180px;flex:none}.pi-collection-intro .pi-lead{line-height:1.9}.pi-collection-intro .pi-provenance-note{margin:12px 0}.pi-lightbox-type{text-align:center!important}.pi-dialog .pi-lightbox-caption{color:#fff}}
@media(prefers-reduced-motion:reduce){.nace-portfolio *,.pi-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none}.pi-project-card:hover{transform:none}.pi-lightbox-prev,.pi-lightbox-next{transform:translateY(-50%)}.pi-shortlist-dialog{transform:translateX(-50%)}}

/* NACE colours copied from the current brand stylesheet, without a new palette. */
:root{--nace-navy:#0e2440;--nace-blue:#1b578c;--nace-white:#fff;--nace-surface:#f2f2f2;--nace-muted:#52667e;--nace-border:#dce3ed;--nace-radius-sm:4px;--nace-radius-lg:12px;--nace-shadow:0 14px 36px #0e244012}
.nace-portfolio main{color:var(--nace-navy);background:var(--nace-white)}
.nace-portfolio main *,.pi-dialog *,.nace-inspiration-tray *{box-sizing:border-box}
.pi-modal-open{overflow:hidden}.pi-wrap{width:min(1340px,calc(100% - 80px));margin-inline:auto}
.pi-section{padding-block:72px}.pi-soft{background:var(--nace-surface)}
.pi-hero{padding:38px 0 60px;background:var(--nace-surface)}
.pi-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:60px;margin-top:32px}
.pi-hero-grid.pi-no-cover{grid-template-columns:1fr;max-width:1000px}
.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.55;font-weight:500;margin:14px 0 20px;text-wrap:balance}
.pi-eyebrow{font-size:.76rem;letter-spacing:.09em;direction:ltr;color:var(--nace-blue);font-weight:650;margin:0 0 14px}
.pi-lead{font-size:1.05rem;line-height:2;color:var(--nace-muted);max-width:75ch}
.pi-hero figure,.pi-moodboard figure{margin:0}
.pi-hero figure picture{display:block;overflow:hidden;border-radius:var(--nace-radius-sm);background:var(--nace-border)}
.pi-hero figure img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block}
.pi-hero figcaption,.pi-moodboard figcaption{font-size:.76rem;line-height:1.8;color:var(--nace-muted);padding:10px 0}
.pi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0}
.pi-project-hero .pi-actions .button:nth-child(2){background:transparent;color:var(--nace-blue)}
.pi-count{margin-top:32px;color:var(--nace-muted)}.pi-count strong{font-size:2rem;color:var(--nace-navy);margin-inline-end:10px}
.pi-heading{margin-bottom:30px}.pi-heading h2,.pi-final-cta h2,.pi-facts-section h2,.pi-section>h2{font-size:clamp(1.55rem,2.7vw,2.5rem);font-weight:500;line-height:1.65;margin:0 0 20px}
.pi-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.pi-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.pi-project-card{background:#fff;border:1px solid var(--nace-border);border-radius:var(--nace-radius-sm);overflow:hidden;transition:box-shadow .2s,transform .2s;min-width:0}
.pi-project-card:hover,.pi-project-card:focus-within{box-shadow:var(--nace-shadow);transform:translateY(-3px)}
.pi-project-card>a,.pi-collection-card>a{display:block;color:inherit;text-decoration:none}
.pi-card-image{aspect-ratio:16/10;overflow:hidden;background:var(--nace-surface)}
.pi-card-image picture,.pi-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s}
.pi-project-card:hover .pi-card-image img{transform:scale(1.025)}
.pi-card-copy{padding:24px}.pi-card-copy h3{font-size:1.22rem;line-height:1.7;font-weight:550;margin:12px 0}
.pi-card-copy p{font-size:.9rem;line-height:1.9;margin:8px 0;color:var(--nace-muted)}
.pi-card-copy .pi-work-type{color:var(--nace-blue);font-size:.76rem}
.pi-meta{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.73rem;color:var(--nace-muted)}
.pi-card-metrics{list-style:none;padding:14px 0;margin:18px 0;border-block:1px solid var(--nace-border);font-size:.9rem;color:var(--nace-navy)}
.pi-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--nace-blue);margin-top:16px}
.pi-record-visual{min-height:180px;background:var(--nace-navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.7rem}
.pi-record-visual>span:first-child{font-size:2.4rem;letter-spacing:.14em;font-weight:300}
.pi-filter-bar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;padding:4px 3px 14px;max-width:100%}
.pi-filter-bar button,.pi-button{font:inherit;font-size:.85rem;min-height:46px;border:1px solid var(--nace-border);border-radius:30px;padding:10px 18px;background:#fff;color:var(--nace-navy);cursor:pointer;flex-shrink:0}
.pi-filter-bar button[aria-pressed=true]{background:var(--nace-navy);color:#fff;border-color:var(--nace-navy)}
[data-project-status]{color:var(--nace-muted);font-size:.8rem;margin:14px 0 28px}
.pi-final-cta{text-align:center;border-top:1px solid var(--nace-border)}.pi-final-cta p{margin-inline:auto}.pi-final-cta>a,.pi-final-cta>button{margin:14px}
.pi-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--nace-border)}
.pi-facts>div{padding:26px 22px;border-bottom:1px solid var(--nace-border)}
.pi-facts dt{font-size:.8rem;color:var(--nace-muted);margin-bottom:9px}.pi-facts dd{font-size:1rem;line-height:1.9;margin:0}
.pi-facts-wide{grid-column:1/-1}.pi-facts ul{display:flex;flex-wrap:wrap;gap:12px 35px;margin:0;padding-inline-start:18px}
.pi-facts a,.pi-related-services a{color:var(--nace-blue)}
.pi-scope{padding-top:0;max-width:1050px}.pi-scope .detail-copy{width:100%;padding:0}.pi-scope .detail-copy h2{font-size:1.9rem}.pi-scope .project-value{margin-top:25px}
.pi-related-services{display:flex;flex-wrap:wrap;gap:12px}.pi-related-services a{border:1px solid var(--nace-border);border-radius:4px;padding:18px;font-size:.9rem}
.pi-ideas-hero{padding-top:32px}.pi-ideas-title{max-width:1000px;padding:35px 0 20px}
.pi-moodboard{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(3,165px);gap:18px;align-items:stretch}
.pi-mood-strip{grid-column:2;grid-row:1/4;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pi-moodboard a{display:block;min-width:0;color:inherit;text-decoration:none;overflow:hidden}
.pi-moodboard .pi-mood-0{grid-row:1/4}.pi-moodboard figure{height:100%;position:relative;display:flex;flex-direction:column}
.pi-moodboard picture{display:block;flex:1;min-height:0;overflow:hidden}.pi-moodboard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s}.pi-moodboard a:hover img{transform:scale(1.025)}
.pi-moodboard figcaption{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#fff;font-size:.73rem}
.pi-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pi-collection-card{border:1px solid var(--nace-border);border-radius:4px;overflow:hidden;min-width:0;transition:box-shadow .2s}
.pi-collection-card:hover{box-shadow:var(--nace-shadow)}
.pi-category-photos{display:grid;grid-template-columns:2fr 1fr;gap:4px;height:260px;overflow:hidden;background:var(--nace-surface)}
.pi-category-photos>picture,.pi-category-photos>div{min-width:0;min-height:0;overflow:hidden}
.pi-category-photos>div{display:grid;grid-template-rows:1fr 1fr;gap:4px}.pi-category-photos picture{display:block;overflow:hidden}.pi-category-photos img{width:100%;height:100%;object-fit:cover;display:block}
.pi-collection-intro{padding-top:32px}.pi-collection-intro .pi-eyebrow{margin-top:32px}
.pi-collection-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-block:1px solid var(--nace-border);padding:18px 0;margin-top:26px}.pi-collection-tools p{margin:0}.pi-collection-tools a{color:var(--nace-blue);font-size:.85rem;min-height:44px;display:inline-flex;align-items:center}
.pi-provenance-note{font-size:.8rem;color:var(--nace-muted);line-height:1.9;max-width:100%!important;margin:22px 0}
.pi-provenance-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.pi-provenance-note summary::before{content:'+';font-size:1.1rem}.pi-provenance-note[open] summary::before{content:'−'}
.pi-collection-body{padding-top:20px}.pi-photo-grid{columns:4;column-gap:20px}
.pi-photo-card{break-inside:avoid;display:inline-block;width:100%;margin:0 0 24px;vertical-align:top}
.pi-photo{display:block;position:relative;border-radius:4px;overflow:hidden;background:var(--nace-surface)}
.pi-photo picture,.pi-photo img{display:block;width:100%;height:auto}.pi-photo img{transition:transform .2s}.pi-photo:hover img{transform:scale(1.025)}
.pi-expand{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;background:#fff;color:var(--nace-navy);border-radius:50%;opacity:0;transition:opacity .15s}.pi-photo:hover .pi-expand,.pi-photo:focus .pi-expand{opacity:1}
.pi-photo-card figcaption{padding:12px 2px}.pi-photo-card figcaption p{font-size:.8rem;line-height:1.8;color:var(--nace-muted);margin:5px 0}.pi-badge{display:inline-block;font-size:.65rem;border:1px solid var(--nace-border);padding:3px 8px;border-radius:3px;color:var(--nace-blue)}
.pi-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;padding:18px 28px;border:0;background:#0e2440fa;color:#fff;overflow:hidden;font-family:inherit}
.pi-dialog::backdrop{background:#0e2440e8}.pi-dialog[open]{display:flex;flex-direction:column;gap:12px}.pi-dialog button,.pi-dialog a{font:inherit;font-size:.85rem;min-width:44px;min-height:44px;cursor:pointer}
.pi-dialog button{background:#ffffff14;border:1px solid #ffffff50;color:#fff;border-radius:4px;padding:8px 14px}.pi-dialog a{color:#fff}.pi-dialog :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pi-lightbox-head,.pi-lightbox-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pi-lightbox-head{justify-content:space-between}.pi-lightbox-actions{justify-content:center;flex-shrink:0}
.pi-lightbox-image-wrap{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pan-y}
.pi-lightbox-image-wrap>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.pi-lightbox-image-wrap.is-zoomed>img{max-width:none;max-height:none;width:150%;height:auto}
.pi-lightbox-prev,.pi-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#0e2440d9!important}.pi-lightbox-prev{inset-inline-start:0}.pi-lightbox-next{inset-inline-end:0}
.pi-lightbox-caption{text-align:center;margin:0;font-size:.9rem;max-width:100%!important}.pi-lightbox-type{font-size:.75rem;text-align:center;margin:0;line-height:1.6}
.pi-lightbox-thumbs{display:flex;overflow-x:auto;gap:6px;max-width:100%;height:62px;flex-shrink:0;direction:ltr;margin-inline:auto}
.pi-lightbox-thumbs button{padding:2px;width:68px;height:58px;flex-shrink:0}.pi-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.pi-lightbox-thumbs [aria-current=true]{border:2px solid #fff}
.pi-lightbox-actions .pi-quote{background:var(--nace-blue);padding:8px 18px;text-decoration:none;display:inline-flex;align-items:center;border-radius:4px}
.pi-shortlist-dialog{max-width:min(920px,96vw);max-height:92dvh;width:920px;height:auto;background:#fff;color:var(--nace-navy);inset:4dvh auto auto 50%;transform:translateX(-50%);border-radius:12px;overflow:auto;padding:24px}.pi-shortlist-dialog button{color:var(--nace-navy);border-color:var(--nace-border);background:var(--nace-surface)}.pi-shortlist-dialog a{color:var(--nace-blue)}
.pi-shortlist-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-shortlist-list li{min-width:0;border:1px solid var(--nace-border);border-radius:4px;padding:10px}.pi-shortlist-list img{width:100%;height:130px;object-fit:cover}.pi-shortlist-list p{font-size:.8rem;line-height:1.8}.pi-shortlist-list a{font-size:.8rem;overflow-wrap:anywhere}.pi-shortlist-dialog textarea{width:100%;min-height:170px;font:inherit}
.nace-inspiration-tray.pi-tray{position:fixed;inset:auto 50% 85px auto;transform:translateX(50%);z-index:250;background:var(--nace-navy);color:#fff;border:1px solid #ffffff50;border-radius:40px;padding:7px 18px;box-shadow:var(--nace-shadow);max-width:90vw}.pi-tray button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;cursor:pointer}
.nace-portfolio [hidden],.pi-dialog [hidden],.pi-tray[hidden]{display:none!important}
.nace-portfolio .breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--nace-muted);line-height:1.8}
.nace-portfolio .breadcrumbs a,.nace-portfolio .breadcrumbs span{color:var(--nace-muted)}
@media(min-width:1001px){.pi-featured-card .pi-card-copy{padding:30px}.pi-featured-card h3{font-size:1.5rem}}
@media(max-width:1000px){.pi-wrap{width:calc(100% - 48px)}.pi-hero-grid{gap:28px}.pi-project-grid,.pi-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-photo-grid{columns:3}.pi-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-moodboard{grid-template-rows:repeat(3,145px)}}
@media(max-width:700px){.pi-wrap{width:calc(100% - 32px)}.pi-section{padding-block:42px}.pi-hero{padding:22px 0 32px}.pi-hero-grid{grid-template-columns:1fr;gap:26px;margin-top:20px}.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:1.95rem;line-height:1.6}.pi-lead{font-size:.94rem}.pi-hero figure img{max-height:430px}.pi-featured-grid,.pi-project-grid{grid-template-columns:1fr;gap:22px}.pi-card-copy{padding:22px}.pi-collection-grid{grid-template-columns:1fr;gap:26px}.pi-category-photos{height:260px}.pi-moodboard{display:flex;flex-wrap:wrap;gap:12px}.pi-moodboard .pi-mood-0{width:100%;flex:0 0 100%}.pi-moodboard .pi-mood-0 picture{height:280px;flex:none}.pi-moodboard>a:not(.pi-mood-0){flex:1 0 28%;min-width:0}.pi-moodboard>a:not(.pi-mood-0) picture{height:140px;flex:none}.pi-moodboard figcaption{font-size:.62rem;gap:3px}.pi-moodboard figcaption>span:last-child{display:none}.pi-ideas-title{padding-top:22px}.pi-photo-grid{columns:2;column-gap:12px}.pi-photo-card{margin-bottom:16px}.pi-photo-card figcaption p{font-size:.72rem}.pi-expand{width:32px;height:32px;opacity:1}.pi-facts{grid-template-columns:1fr}.pi-facts>div{padding:18px 0}.pi-facts ul{display:block}.pi-facts li{margin-bottom:8px}.pi-collection-tools{gap:12px 18px}.pi-collection-tools p{flex-basis:100%}.pi-collection-intro .pi-eyebrow{margin-top:24px}.pi-dialog{padding:12px;gap:8px}.pi-lightbox-thumbs{display:none}.pi-lightbox-head button,.pi-lightbox-actions button,.pi-lightbox-actions a{font-size:.75rem;padding:7px 10px}.pi-lightbox-caption{font-size:.8rem}.pi-lightbox-type{font-size:.68rem}.pi-lightbox-actions{gap:7px}.pi-shortlist-dialog{padding:18px}.pi-shortlist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pi-shortlist-list img{height:110px}.pi-final-cta>a,.pi-final-cta>button{margin:8px 0}.pi-shortlist-dialog :is(a,button):focus-visible{outline-color:var(--nace-blue)}}
@media(max-width:700px){.pi-mood-strip{display:flex;width:100%;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px}.pi-mood-strip>a{flex:0 0 66%;scroll-snap-align:start}.pi-mood-strip picture{height:180px;flex:none}.pi-collection-intro .pi-lead{line-height:1.9}.pi-collection-intro .pi-provenance-note{margin:12px 0}.pi-lightbox-type{text-align:center!important}.pi-dialog .pi-lightbox-caption{color:#fff}}
@media(prefers-reduced-motion:reduce){.nace-portfolio *,.pi-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none}.pi-project-card:hover{transform:none}.pi-lightbox-prev,.pi-lightbox-next{transform:translateY(-50%)}.pi-shortlist-dialog{transform:translateX(-50%)}}

/* NACE colours copied from the current brand stylesheet, without a new palette. */
:root{--nace-navy:#0e2440;--nace-blue:#1b578c;--nace-white:#fff;--nace-surface:#f2f2f2;--nace-muted:#52667e;--nace-border:#dce3ed;--nace-radius-sm:4px;--nace-radius-lg:12px;--nace-shadow:0 14px 36px #0e244012}
.nace-portfolio main{color:var(--nace-navy);background:var(--nace-white)}
.nace-portfolio main *,.pi-dialog *,.nace-inspiration-tray *{box-sizing:border-box}
.pi-modal-open{overflow:hidden}.pi-wrap{width:min(1340px,calc(100% - 80px));margin-inline:auto}
.pi-section{padding-block:72px}.pi-soft{background:var(--nace-surface)}
.pi-hero{padding:38px 0 60px;background:var(--nace-surface)}
.pi-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:60px;margin-top:32px}
.pi-hero-grid.pi-no-cover{grid-template-columns:1fr;max-width:1000px}
.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.55;font-weight:500;margin:14px 0 20px;text-wrap:balance}
.pi-eyebrow{font-size:.76rem;letter-spacing:.09em;direction:ltr;color:var(--nace-blue);font-weight:650;margin:0 0 14px}
.pi-lead{font-size:1.05rem;line-height:2;color:var(--nace-muted);max-width:75ch}
.pi-hero figure,.pi-moodboard figure{margin:0}
.pi-hero figure picture{display:block;overflow:hidden;border-radius:var(--nace-radius-sm);background:var(--nace-border)}
.pi-hero figure img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block}
.pi-hero figcaption,.pi-moodboard figcaption{font-size:.76rem;line-height:1.8;color:var(--nace-muted);padding:10px 0}
.pi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0}
.pi-project-hero .pi-actions .button:nth-child(2){background:transparent;color:var(--nace-blue)}
.pi-count{margin-top:32px;color:var(--nace-muted)}.pi-count strong{font-size:2rem;color:var(--nace-navy);margin-inline-end:10px}
.pi-heading{margin-bottom:30px}.pi-heading h2,.pi-final-cta h2,.pi-facts-section h2,.pi-section>h2{font-size:clamp(1.55rem,2.7vw,2.5rem);font-weight:500;line-height:1.65;margin:0 0 20px}
.pi-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.pi-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.pi-project-card{background:#fff;border:1px solid var(--nace-border);border-radius:var(--nace-radius-sm);overflow:hidden;transition:box-shadow .2s,transform .2s;min-width:0}
.pi-project-card:hover,.pi-project-card:focus-within{box-shadow:var(--nace-shadow);transform:translateY(-3px)}
.pi-project-card>a,.pi-collection-card>a{display:block;color:inherit;text-decoration:none}
.pi-card-image{aspect-ratio:16/10;overflow:hidden;background:var(--nace-surface)}
.pi-card-image picture,.pi-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s}
.pi-project-card:hover .pi-card-image img{transform:scale(1.025)}
.pi-card-copy{padding:24px}.pi-card-copy h3{font-size:1.22rem;line-height:1.7;font-weight:550;margin:12px 0}
.pi-card-copy p{font-size:.9rem;line-height:1.9;margin:8px 0;color:var(--nace-muted)}
.pi-card-copy .pi-work-type{color:var(--nace-blue);font-size:.76rem}
.pi-meta{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.73rem;color:var(--nace-muted)}
.pi-card-metrics{list-style:none;padding:14px 0;margin:18px 0;border-block:1px solid var(--nace-border);font-size:.9rem;color:var(--nace-navy)}
.pi-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--nace-blue);margin-top:16px}
.pi-record-visual{min-height:180px;background:var(--nace-navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.7rem}
.pi-record-visual>span:first-child{font-size:2.4rem;letter-spacing:.14em;font-weight:300}
.pi-filter-bar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;padding:4px 3px 14px;max-width:100%}
.pi-filter-bar button,.pi-button{font:inherit;font-size:.85rem;min-height:46px;border:1px solid var(--nace-border);border-radius:30px;padding:10px 18px;background:#fff;color:var(--nace-navy);cursor:pointer;flex-shrink:0}
.pi-filter-bar button[aria-pressed=true]{background:var(--nace-navy);color:#fff;border-color:var(--nace-navy)}
[data-project-status]{color:var(--nace-muted);font-size:.8rem;margin:14px 0 28px}
.pi-final-cta{text-align:center;border-top:1px solid var(--nace-border)}.pi-final-cta p{margin-inline:auto}.pi-final-cta>a,.pi-final-cta>button{margin:14px}
.pi-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--nace-border)}
.pi-facts>div{padding:26px 22px;border-bottom:1px solid var(--nace-border)}
.pi-facts dt{font-size:.8rem;color:var(--nace-muted);margin-bottom:9px}.pi-facts dd{font-size:1rem;line-height:1.9;margin:0}
.pi-facts-wide{grid-column:1/-1}.pi-facts ul{display:flex;flex-wrap:wrap;gap:12px 35px;margin:0;padding-inline-start:18px}
.pi-facts a,.pi-related-services a{color:var(--nace-blue)}
.pi-scope{padding-top:0;max-width:1050px}.pi-scope .detail-copy{width:100%;padding:0}.pi-scope .detail-copy h2{font-size:1.9rem}.pi-scope .project-value{margin-top:25px}
.pi-related-services{display:flex;flex-wrap:wrap;gap:12px}.pi-related-services a{border:1px solid var(--nace-border);border-radius:4px;padding:18px;font-size:.9rem}
.pi-ideas-hero{padding-top:32px}.pi-ideas-title{max-width:1000px;padding:35px 0 20px}
.pi-moodboard{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(3,165px);gap:18px;align-items:stretch}
.pi-mood-strip{grid-column:2;grid-row:1/4;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pi-moodboard a{display:block;min-width:0;color:inherit;text-decoration:none;overflow:hidden}
.pi-moodboard .pi-mood-0{grid-row:1/4}.pi-moodboard figure{height:100%;position:relative;display:flex;flex-direction:column}
.pi-moodboard picture{display:block;flex:1;min-height:0;overflow:hidden}.pi-moodboard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s}.pi-moodboard a:hover img{transform:scale(1.025)}
.pi-moodboard figcaption{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#fff;font-size:.73rem}
.pi-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pi-collection-card{border:1px solid var(--nace-border);border-radius:4px;overflow:hidden;min-width:0;transition:box-shadow .2s}
.pi-collection-card:hover{box-shadow:var(--nace-shadow)}
.pi-category-photos{display:grid;grid-template-columns:2fr 1fr;gap:4px;height:260px;overflow:hidden;background:var(--nace-surface)}
.pi-category-photos>picture,.pi-category-photos>div{min-width:0;min-height:0;overflow:hidden}
.pi-category-photos>div{display:grid;grid-template-rows:1fr 1fr;gap:4px}.pi-category-photos picture{display:block;overflow:hidden}.pi-category-photos img{width:100%;height:100%;object-fit:cover;display:block}
.pi-collection-intro{padding-top:32px}.pi-collection-intro .pi-eyebrow{margin-top:32px}
.pi-collection-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-block:1px solid var(--nace-border);padding:18px 0;margin-top:26px}.pi-collection-tools p{margin:0}.pi-collection-tools a{color:var(--nace-blue);font-size:.85rem;min-height:44px;display:inline-flex;align-items:center}
.pi-provenance-note{font-size:.8rem;color:var(--nace-muted);line-height:1.9;max-width:100%!important;margin:22px 0}
.pi-provenance-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.pi-provenance-note summary::before{content:'+';font-size:1.1rem}.pi-provenance-note[open] summary::before{content:'−'}
.pi-collection-body{padding-top:20px}.pi-photo-grid{columns:4;column-gap:20px}
.pi-photo-card{break-inside:avoid;display:inline-block;width:100%;margin:0 0 24px;vertical-align:top}
.pi-photo{display:block;position:relative;border-radius:4px;overflow:hidden;background:var(--nace-surface)}
.pi-photo picture,.pi-photo img{display:block;width:100%;height:auto}.pi-photo img{transition:transform .2s}.pi-photo:hover img{transform:scale(1.025)}
.pi-expand{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;background:#fff;color:var(--nace-navy);border-radius:50%;opacity:0;transition:opacity .15s}.pi-photo:hover .pi-expand,.pi-photo:focus .pi-expand{opacity:1}
.pi-photo-card figcaption{padding:12px 2px}.pi-photo-card figcaption p{font-size:.8rem;line-height:1.8;color:var(--nace-muted);margin:5px 0}.pi-badge{display:inline-block;font-size:.65rem;border:1px solid var(--nace-border);padding:3px 8px;border-radius:3px;color:var(--nace-blue)}
.pi-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;padding:18px 28px;border:0;background:#0e2440fa;color:#fff;overflow:hidden;font-family:inherit}
.pi-dialog::backdrop{background:#0e2440e8}.pi-dialog[open]{display:flex;flex-direction:column;gap:12px}.pi-dialog button,.pi-dialog a{font:inherit;font-size:.85rem;min-width:44px;min-height:44px;cursor:pointer}
.pi-dialog button{background:#ffffff14;border:1px solid #ffffff50;color:#fff;border-radius:4px;padding:8px 14px}.pi-dialog a{color:#fff}.pi-dialog :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pi-lightbox-head,.pi-lightbox-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pi-lightbox-head{justify-content:space-between}.pi-lightbox-actions{justify-content:center;flex-shrink:0}
.pi-lightbox-image-wrap{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pan-y}
.pi-lightbox-image-wrap>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.pi-lightbox-image-wrap.is-zoomed>img{max-width:none;max-height:none;width:150%;height:auto}
.pi-lightbox-prev,.pi-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#0e2440d9!important}.pi-lightbox-prev{inset-inline-start:0}.pi-lightbox-next{inset-inline-end:0}
.pi-lightbox-caption{text-align:center;margin:0;font-size:.9rem;max-width:100%!important}.pi-lightbox-type{font-size:.75rem;text-align:center;margin:0;line-height:1.6}
.pi-lightbox-thumbs{display:flex;overflow-x:auto;gap:6px;max-width:100%;height:62px;flex-shrink:0;direction:ltr;margin-inline:auto}
.pi-lightbox-thumbs button{padding:2px;width:68px;height:58px;flex-shrink:0}.pi-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.pi-lightbox-thumbs [aria-current=true]{border:2px solid #fff}
.pi-lightbox-actions .pi-quote{background:var(--nace-blue);padding:8px 18px;text-decoration:none;display:inline-flex;align-items:center;border-radius:4px}
.pi-shortlist-dialog{max-width:min(920px,96vw);max-height:92dvh;width:920px;height:auto;background:#fff;color:var(--nace-navy);inset:4dvh auto auto 50%;transform:translateX(-50%);border-radius:12px;overflow:auto;padding:24px}.pi-shortlist-dialog button{color:var(--nace-navy);border-color:var(--nace-border);background:var(--nace-surface)}.pi-shortlist-dialog a{color:var(--nace-blue)}
.pi-shortlist-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-shortlist-list li{min-width:0;border:1px solid var(--nace-border);border-radius:4px;padding:10px}.pi-shortlist-list img{width:100%;height:130px;object-fit:cover}.pi-shortlist-list p{font-size:.8rem;line-height:1.8}.pi-shortlist-list a{font-size:.8rem;overflow-wrap:anywhere}.pi-shortlist-dialog textarea{width:100%;min-height:170px;font:inherit}
.nace-inspiration-tray.pi-tray{position:fixed;inset:auto 50% 85px auto;transform:translateX(50%);z-index:250;background:var(--nace-navy);color:#fff;border:1px solid #ffffff50;border-radius:40px;padding:7px 18px;box-shadow:var(--nace-shadow);max-width:90vw}.pi-tray button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;cursor:pointer}
.nace-portfolio [hidden],.pi-dialog [hidden],.pi-tray[hidden]{display:none!important}
.nace-portfolio .breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--nace-muted);line-height:1.8}
.nace-portfolio .breadcrumbs a,.nace-portfolio .breadcrumbs span{color:var(--nace-muted)}
@media(min-width:1001px){.pi-featured-card .pi-card-copy{padding:30px}.pi-featured-card h3{font-size:1.5rem}}
@media(max-width:1000px){.pi-wrap{width:calc(100% - 48px)}.pi-hero-grid{gap:28px}.pi-project-grid,.pi-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-photo-grid{columns:3}.pi-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-moodboard{grid-template-rows:repeat(3,145px)}}
@media(max-width:700px){.pi-wrap{width:calc(100% - 32px)}.pi-section{padding-block:42px}.pi-hero{padding:22px 0 32px}.pi-hero-grid{grid-template-columns:1fr;gap:26px;margin-top:20px}.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:1.95rem;line-height:1.6}.pi-lead{font-size:.94rem}.pi-hero figure img{max-height:430px}.pi-featured-grid,.pi-project-grid{grid-template-columns:1fr;gap:22px}.pi-card-copy{padding:22px}.pi-collection-grid{grid-template-columns:1fr;gap:26px}.pi-category-photos{height:260px}.pi-moodboard{display:flex;flex-wrap:wrap;gap:12px}.pi-moodboard .pi-mood-0{width:100%;flex:0 0 100%}.pi-moodboard .pi-mood-0 picture{height:280px;flex:none}.pi-moodboard>a:not(.pi-mood-0){flex:1 0 28%;min-width:0}.pi-moodboard>a:not(.pi-mood-0) picture{height:140px;flex:none}.pi-moodboard figcaption{font-size:.62rem;gap:3px}.pi-moodboard figcaption>span:last-child{display:none}.pi-ideas-title{padding-top:22px}.pi-photo-grid{columns:2;column-gap:12px}.pi-photo-card{margin-bottom:16px}.pi-photo-card figcaption p{font-size:.72rem}.pi-expand{width:32px;height:32px;opacity:1}.pi-facts{grid-template-columns:1fr}.pi-facts>div{padding:18px 0}.pi-facts ul{display:block}.pi-facts li{margin-bottom:8px}.pi-collection-tools{gap:12px 18px}.pi-collection-tools p{flex-basis:100%}.pi-collection-intro .pi-eyebrow{margin-top:24px}.pi-dialog{padding:12px;gap:8px}.pi-lightbox-thumbs{display:none}.pi-lightbox-head button,.pi-lightbox-actions button,.pi-lightbox-actions a{font-size:.75rem;padding:7px 10px}.pi-lightbox-caption{font-size:.8rem}.pi-lightbox-type{font-size:.68rem}.pi-lightbox-actions{gap:7px}.pi-shortlist-dialog{padding:18px}.pi-shortlist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pi-shortlist-list img{height:110px}.pi-final-cta>a,.pi-final-cta>button{margin:8px 0}.pi-shortlist-dialog :is(a,button):focus-visible{outline-color:var(--nace-blue)}}
@media(max-width:700px){.pi-mood-strip{display:flex;width:100%;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px}.pi-mood-strip>a{flex:0 0 66%;scroll-snap-align:start}.pi-mood-strip picture{height:180px;flex:none}.pi-collection-intro .pi-lead{line-height:1.9}.pi-collection-intro .pi-provenance-note{margin:12px 0}.pi-lightbox-type{text-align:center!important}.pi-dialog .pi-lightbox-caption{color:#fff}}
@media(prefers-reduced-motion:reduce){.nace-portfolio *,.pi-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none}.pi-project-card:hover{transform:none}.pi-lightbox-prev,.pi-lightbox-next{transform:translateY(-50%)}.pi-shortlist-dialog{transform:translateX(-50%)}}

/* NACE colours copied from the current brand stylesheet, without a new palette. */
:root{--nace-navy:#0e2440;--nace-blue:#1b578c;--nace-white:#fff;--nace-surface:#f2f2f2;--nace-muted:#52667e;--nace-border:#dce3ed;--nace-radius-sm:4px;--nace-radius-lg:12px;--nace-shadow:0 14px 36px #0e244012}
.nace-portfolio main{color:var(--nace-navy);background:var(--nace-white)}
.nace-portfolio main *,.pi-dialog *,.nace-inspiration-tray *{box-sizing:border-box}
.pi-modal-open{overflow:hidden}.pi-wrap{width:min(1340px,calc(100% - 80px));margin-inline:auto}
.pi-section{padding-block:72px}.pi-soft{background:var(--nace-surface)}
.pi-hero{padding:38px 0 60px;background:var(--nace-surface)}
.pi-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:60px;margin-top:32px}
.pi-hero-grid.pi-no-cover{grid-template-columns:1fr;max-width:1000px}
.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.55;font-weight:500;margin:14px 0 20px;text-wrap:balance}
.pi-eyebrow{font-size:.76rem;letter-spacing:.09em;direction:ltr;color:var(--nace-blue);font-weight:650;margin:0 0 14px}
.pi-lead{font-size:1.05rem;line-height:2;color:var(--nace-muted);max-width:75ch}
.pi-hero figure,.pi-moodboard figure{margin:0}
.pi-hero figure picture{display:block;overflow:hidden;border-radius:var(--nace-radius-sm);background:var(--nace-border)}
.pi-hero figure img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block}
.pi-hero figcaption,.pi-moodboard figcaption{font-size:.76rem;line-height:1.8;color:var(--nace-muted);padding:10px 0}
.pi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0}
.pi-project-hero .pi-actions .button:nth-child(2){background:transparent;color:var(--nace-blue)}
.pi-count{margin-top:32px;color:var(--nace-muted)}.pi-count strong{font-size:2rem;color:var(--nace-navy);margin-inline-end:10px}
.pi-heading{margin-bottom:30px}.pi-heading h2,.pi-final-cta h2,.pi-facts-section h2,.pi-section>h2{font-size:clamp(1.55rem,2.7vw,2.5rem);font-weight:500;line-height:1.65;margin:0 0 20px}
.pi-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.pi-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.pi-project-card{background:#fff;border:1px solid var(--nace-border);border-radius:var(--nace-radius-sm);overflow:hidden;transition:box-shadow .2s,transform .2s;min-width:0}
.pi-project-card:hover,.pi-project-card:focus-within{box-shadow:var(--nace-shadow);transform:translateY(-3px)}
.pi-project-card>a,.pi-collection-card>a{display:block;color:inherit;text-decoration:none}
.pi-card-image{aspect-ratio:16/10;overflow:hidden;background:var(--nace-surface)}
.pi-card-image picture,.pi-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s}
.pi-project-card:hover .pi-card-image img{transform:scale(1.025)}
.pi-card-copy{padding:24px}.pi-card-copy h3{font-size:1.22rem;line-height:1.7;font-weight:550;margin:12px 0}
.pi-card-copy p{font-size:.9rem;line-height:1.9;margin:8px 0;color:var(--nace-muted)}
.pi-card-copy .pi-work-type{color:var(--nace-blue);font-size:.76rem}
.pi-meta{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.73rem;color:var(--nace-muted)}
.pi-card-metrics{list-style:none;padding:14px 0;margin:18px 0;border-block:1px solid var(--nace-border);font-size:.9rem;color:var(--nace-navy)}
.pi-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--nace-blue);margin-top:16px}
.pi-record-visual{min-height:180px;background:var(--nace-navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.7rem}
.pi-record-visual>span:first-child{font-size:2.4rem;letter-spacing:.14em;font-weight:300}
.pi-filter-bar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;padding:4px 3px 14px;max-width:100%}
.pi-filter-bar button,.pi-button{font:inherit;font-size:.85rem;min-height:46px;border:1px solid var(--nace-border);border-radius:30px;padding:10px 18px;background:#fff;color:var(--nace-navy);cursor:pointer;flex-shrink:0}
.pi-filter-bar button[aria-pressed=true]{background:var(--nace-navy);color:#fff;border-color:var(--nace-navy)}
[data-project-status]{color:var(--nace-muted);font-size:.8rem;margin:14px 0 28px}
.pi-final-cta{text-align:center;border-top:1px solid var(--nace-border)}.pi-final-cta p{margin-inline:auto}.pi-final-cta>a,.pi-final-cta>button{margin:14px}
.pi-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--nace-border)}
.pi-facts>div{padding:26px 22px;border-bottom:1px solid var(--nace-border)}
.pi-facts dt{font-size:.8rem;color:var(--nace-muted);margin-bottom:9px}.pi-facts dd{font-size:1rem;line-height:1.9;margin:0}
.pi-facts-wide{grid-column:1/-1}.pi-facts ul{display:flex;flex-wrap:wrap;gap:12px 35px;margin:0;padding-inline-start:18px}
.pi-facts a,.pi-related-services a{color:var(--nace-blue)}
.pi-scope{padding-top:0;max-width:1050px}.pi-scope .detail-copy{width:100%;padding:0}.pi-scope .detail-copy h2{font-size:1.9rem}.pi-scope .project-value{margin-top:25px}
.pi-related-services{display:flex;flex-wrap:wrap;gap:12px}.pi-related-services a{border:1px solid var(--nace-border);border-radius:4px;padding:18px;font-size:.9rem}
.pi-ideas-hero{padding-top:32px}.pi-ideas-title{max-width:1000px;padding:35px 0 20px}
.pi-moodboard{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(3,165px);gap:18px;align-items:stretch}
.pi-mood-strip{grid-column:2;grid-row:1/4;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pi-moodboard a{display:block;min-width:0;color:inherit;text-decoration:none;overflow:hidden}
.pi-moodboard .pi-mood-0{grid-row:1/4}.pi-moodboard figure{height:100%;position:relative;display:flex;flex-direction:column}
.pi-moodboard picture{display:block;flex:1;min-height:0;overflow:hidden}.pi-moodboard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s}.pi-moodboard a:hover img{transform:scale(1.025)}
.pi-moodboard figcaption{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#fff;font-size:.73rem}
.pi-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pi-collection-card{border:1px solid var(--nace-border);border-radius:4px;overflow:hidden;min-width:0;transition:box-shadow .2s}
.pi-collection-card:hover{box-shadow:var(--nace-shadow)}
.pi-category-photos{display:grid;grid-template-columns:2fr 1fr;gap:4px;height:260px;overflow:hidden;background:var(--nace-surface)}
.pi-category-photos>picture,.pi-category-photos>div{min-width:0;min-height:0;overflow:hidden}
.pi-category-photos>div{display:grid;grid-template-rows:1fr 1fr;gap:4px}.pi-category-photos picture{display:block;overflow:hidden}.pi-category-photos img{width:100%;height:100%;object-fit:cover;display:block}
.pi-collection-intro{padding-top:32px}.pi-collection-intro .pi-eyebrow{margin-top:32px}
.pi-collection-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-block:1px solid var(--nace-border);padding:18px 0;margin-top:26px}.pi-collection-tools p{margin:0}.pi-collection-tools a{color:var(--nace-blue);font-size:.85rem;min-height:44px;display:inline-flex;align-items:center}
.pi-provenance-note{font-size:.8rem;color:var(--nace-muted);line-height:1.9;max-width:100%!important;margin:22px 0}
.pi-provenance-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.pi-provenance-note summary::before{content:'+';font-size:1.1rem}.pi-provenance-note[open] summary::before{content:'−'}
.pi-collection-body{padding-top:20px}.pi-photo-grid{columns:4;column-gap:20px}
.pi-photo-card{break-inside:avoid;display:inline-block;width:100%;margin:0 0 24px;vertical-align:top}
.pi-photo{display:block;position:relative;border-radius:4px;overflow:hidden;background:var(--nace-surface)}
.pi-photo picture,.pi-photo img{display:block;width:100%;height:auto}.pi-photo img{transition:transform .2s}.pi-photo:hover img{transform:scale(1.025)}
.pi-expand{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;background:#fff;color:var(--nace-navy);border-radius:50%;opacity:0;transition:opacity .15s}.pi-photo:hover .pi-expand,.pi-photo:focus .pi-expand{opacity:1}
.pi-photo-card figcaption{padding:12px 2px}.pi-photo-card figcaption p{font-size:.8rem;line-height:1.8;color:var(--nace-muted);margin:5px 0}.pi-badge{display:inline-block;font-size:.65rem;border:1px solid var(--nace-border);padding:3px 8px;border-radius:3px;color:var(--nace-blue)}
.pi-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;padding:18px 28px;border:0;background:#0e2440fa;color:#fff;overflow:hidden;font-family:inherit}
.pi-dialog::backdrop{background:#0e2440e8}.pi-dialog[open]{display:flex;flex-direction:column;gap:12px}.pi-dialog button,.pi-dialog a{font:inherit;font-size:.85rem;min-width:44px;min-height:44px;cursor:pointer}
.pi-dialog button{background:#ffffff14;border:1px solid #ffffff50;color:#fff;border-radius:4px;padding:8px 14px}.pi-dialog a{color:#fff}.pi-dialog :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pi-lightbox-head,.pi-lightbox-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pi-lightbox-head{justify-content:space-between}.pi-lightbox-actions{justify-content:center;flex-shrink:0}
.pi-lightbox-image-wrap{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pan-y}
.pi-lightbox-image-wrap>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.pi-lightbox-image-wrap.is-zoomed>img{max-width:none;max-height:none;width:150%;height:auto}
.pi-lightbox-prev,.pi-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#0e2440d9!important}.pi-lightbox-prev{inset-inline-start:0}.pi-lightbox-next{inset-inline-end:0}
.pi-lightbox-caption{text-align:center;margin:0;font-size:.9rem;max-width:100%!important}.pi-lightbox-type{font-size:.75rem;text-align:center;margin:0;line-height:1.6}
.pi-lightbox-thumbs{display:flex;overflow-x:auto;gap:6px;max-width:100%;height:62px;flex-shrink:0;direction:ltr;margin-inline:auto}
.pi-lightbox-thumbs button{padding:2px;width:68px;height:58px;flex-shrink:0}.pi-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.pi-lightbox-thumbs [aria-current=true]{border:2px solid #fff}
.pi-lightbox-actions .pi-quote{background:var(--nace-blue);padding:8px 18px;text-decoration:none;display:inline-flex;align-items:center;border-radius:4px}
.pi-shortlist-dialog{max-width:min(920px,96vw);max-height:92dvh;width:920px;height:auto;background:#fff;color:var(--nace-navy);inset:4dvh auto auto 50%;transform:translateX(-50%);border-radius:12px;overflow:auto;padding:24px}.pi-shortlist-dialog button{color:var(--nace-navy);border-color:var(--nace-border);background:var(--nace-surface)}.pi-shortlist-dialog a{color:var(--nace-blue)}
.pi-shortlist-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-shortlist-list li{min-width:0;border:1px solid var(--nace-border);border-radius:4px;padding:10px}.pi-shortlist-list img{width:100%;height:130px;object-fit:cover}.pi-shortlist-list p{font-size:.8rem;line-height:1.8}.pi-shortlist-list a{font-size:.8rem;overflow-wrap:anywhere}.pi-shortlist-dialog textarea{width:100%;min-height:170px;font:inherit}
.nace-inspiration-tray.pi-tray{position:fixed;inset:auto 50% 85px auto;transform:translateX(50%);z-index:250;background:var(--nace-navy);color:#fff;border:1px solid #ffffff50;border-radius:40px;padding:7px 18px;box-shadow:var(--nace-shadow);max-width:90vw}.pi-tray button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;cursor:pointer}
.nace-portfolio [hidden],.pi-dialog [hidden],.pi-tray[hidden]{display:none!important}
.nace-portfolio .breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--nace-muted);line-height:1.8}
.nace-portfolio .breadcrumbs a,.nace-portfolio .breadcrumbs span{color:var(--nace-muted)}
@media(min-width:1001px){.pi-featured-card .pi-card-copy{padding:30px}.pi-featured-card h3{font-size:1.5rem}}
@media(max-width:1000px){.pi-wrap{width:calc(100% - 48px)}.pi-hero-grid{gap:28px}.pi-project-grid,.pi-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-photo-grid{columns:3}.pi-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-moodboard{grid-template-rows:repeat(3,145px)}}
@media(max-width:700px){.pi-wrap{width:calc(100% - 32px)}.pi-section{padding-block:42px}.pi-hero{padding:22px 0 32px}.pi-hero-grid{grid-template-columns:1fr;gap:26px;margin-top:20px}.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:1.95rem;line-height:1.6}.pi-lead{font-size:.94rem}.pi-hero figure img{max-height:430px}.pi-featured-grid,.pi-project-grid{grid-template-columns:1fr;gap:22px}.pi-card-copy{padding:22px}.pi-collection-grid{grid-template-columns:1fr;gap:26px}.pi-category-photos{height:260px}.pi-moodboard{display:flex;flex-wrap:wrap;gap:12px}.pi-moodboard .pi-mood-0{width:100%;flex:0 0 100%}.pi-moodboard .pi-mood-0 picture{height:280px;flex:none}.pi-moodboard>a:not(.pi-mood-0){flex:1 0 28%;min-width:0}.pi-moodboard>a:not(.pi-mood-0) picture{height:140px;flex:none}.pi-moodboard figcaption{font-size:.62rem;gap:3px}.pi-moodboard figcaption>span:last-child{display:none}.pi-ideas-title{padding-top:22px}.pi-photo-grid{columns:2;column-gap:12px}.pi-photo-card{margin-bottom:16px}.pi-photo-card figcaption p{font-size:.72rem}.pi-expand{width:32px;height:32px;opacity:1}.pi-facts{grid-template-columns:1fr}.pi-facts>div{padding:18px 0}.pi-facts ul{display:block}.pi-facts li{margin-bottom:8px}.pi-collection-tools{gap:12px 18px}.pi-collection-tools p{flex-basis:100%}.pi-collection-intro .pi-eyebrow{margin-top:24px}.pi-dialog{padding:12px;gap:8px}.pi-lightbox-thumbs{display:none}.pi-lightbox-head button,.pi-lightbox-actions button,.pi-lightbox-actions a{font-size:.75rem;padding:7px 10px}.pi-lightbox-caption{font-size:.8rem}.pi-lightbox-type{font-size:.68rem}.pi-lightbox-actions{gap:7px}.pi-shortlist-dialog{padding:18px}.pi-shortlist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pi-shortlist-list img{height:110px}.pi-final-cta>a,.pi-final-cta>button{margin:8px 0}.pi-shortlist-dialog :is(a,button):focus-visible{outline-color:var(--nace-blue)}}
@media(max-width:700px){.pi-mood-strip{display:flex;width:100%;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px}.pi-mood-strip>a{flex:0 0 66%;scroll-snap-align:start}.pi-mood-strip picture{height:180px;flex:none}.pi-collection-intro .pi-lead{line-height:1.9}.pi-collection-intro .pi-provenance-note{margin:12px 0}.pi-lightbox-type{text-align:center!important}.pi-dialog .pi-lightbox-caption{color:#fff}}
@media(prefers-reduced-motion:reduce){.nace-portfolio *,.pi-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none}.pi-project-card:hover{transform:none}.pi-lightbox-prev,.pi-lightbox-next{transform:translateY(-50%)}.pi-shortlist-dialog{transform:translateX(-50%)}}

/* NACE colours copied from the current brand stylesheet, without a new palette. */
:root{--nace-navy:#0e2440;--nace-blue:#1b578c;--nace-white:#fff;--nace-surface:#f2f2f2;--nace-muted:#52667e;--nace-border:#dce3ed;--nace-radius-sm:4px;--nace-radius-lg:12px;--nace-shadow:0 14px 36px #0e244012}
.nace-portfolio main{color:var(--nace-navy);background:var(--nace-white)}
.nace-portfolio main *,.pi-dialog *,.nace-inspiration-tray *{box-sizing:border-box}
.pi-modal-open{overflow:hidden}.pi-wrap{width:min(1340px,calc(100% - 80px));margin-inline:auto}
.pi-section{padding-block:72px}.pi-soft{background:var(--nace-surface)}
.pi-hero{padding:38px 0 60px;background:var(--nace-surface)}
.pi-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:60px;margin-top:32px}
.pi-hero-grid.pi-no-cover{grid-template-columns:1fr;max-width:1000px}
.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.55;font-weight:500;margin:14px 0 20px;text-wrap:balance}
.pi-eyebrow{font-size:.76rem;letter-spacing:.09em;direction:ltr;color:var(--nace-blue);font-weight:650;margin:0 0 14px}
.pi-lead{font-size:1.05rem;line-height:2;color:var(--nace-muted);max-width:75ch}
.pi-hero figure,.pi-moodboard figure{margin:0}
.pi-hero figure picture{display:block;overflow:hidden;border-radius:var(--nace-radius-sm);background:var(--nace-border)}
.pi-hero figure img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block}
.pi-hero figcaption,.pi-moodboard figcaption{font-size:.76rem;line-height:1.8;color:var(--nace-muted);padding:10px 0}
.pi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0}
.pi-project-hero .pi-actions .button:nth-child(2){background:transparent;color:var(--nace-blue)}
.pi-count{margin-top:32px;color:var(--nace-muted)}.pi-count strong{font-size:2rem;color:var(--nace-navy);margin-inline-end:10px}
.pi-heading{margin-bottom:30px}.pi-heading h2,.pi-final-cta h2,.pi-facts-section h2,.pi-section>h2{font-size:clamp(1.55rem,2.7vw,2.5rem);font-weight:500;line-height:1.65;margin:0 0 20px}
.pi-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.pi-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.pi-project-card{background:#fff;border:1px solid var(--nace-border);border-radius:var(--nace-radius-sm);overflow:hidden;transition:box-shadow .2s,transform .2s;min-width:0}
.pi-project-card:hover,.pi-project-card:focus-within{box-shadow:var(--nace-shadow);transform:translateY(-3px)}
.pi-project-card>a,.pi-collection-card>a{display:block;color:inherit;text-decoration:none}
.pi-card-image{aspect-ratio:16/10;overflow:hidden;background:var(--nace-surface)}
.pi-card-image picture,.pi-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s}
.pi-project-card:hover .pi-card-image img{transform:scale(1.025)}
.pi-card-copy{padding:24px}.pi-card-copy h3{font-size:1.22rem;line-height:1.7;font-weight:550;margin:12px 0}
.pi-card-copy p{font-size:.9rem;line-height:1.9;margin:8px 0;color:var(--nace-muted)}
.pi-card-copy .pi-work-type{color:var(--nace-blue);font-size:.76rem}
.pi-meta{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.73rem;color:var(--nace-muted)}
.pi-card-metrics{list-style:none;padding:14px 0;margin:18px 0;border-block:1px solid var(--nace-border);font-size:.9rem;color:var(--nace-navy)}
.pi-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--nace-blue);margin-top:16px}
.pi-record-visual{min-height:180px;background:var(--nace-navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.7rem}
.pi-record-visual>span:first-child{font-size:2.4rem;letter-spacing:.14em;font-weight:300}
.pi-filter-bar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;padding:4px 3px 14px;max-width:100%}
.pi-filter-bar button,.pi-button{font:inherit;font-size:.85rem;min-height:46px;border:1px solid var(--nace-border);border-radius:30px;padding:10px 18px;background:#fff;color:var(--nace-navy);cursor:pointer;flex-shrink:0}
.pi-filter-bar button[aria-pressed=true]{background:var(--nace-navy);color:#fff;border-color:var(--nace-navy)}
[data-project-status]{color:var(--nace-muted);font-size:.8rem;margin:14px 0 28px}
.pi-final-cta{text-align:center;border-top:1px solid var(--nace-border)}.pi-final-cta p{margin-inline:auto}.pi-final-cta>a,.pi-final-cta>button{margin:14px}
.pi-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--nace-border)}
.pi-facts>div{padding:26px 22px;border-bottom:1px solid var(--nace-border)}
.pi-facts dt{font-size:.8rem;color:var(--nace-muted);margin-bottom:9px}.pi-facts dd{font-size:1rem;line-height:1.9;margin:0}
.pi-facts-wide{grid-column:1/-1}.pi-facts ul{display:flex;flex-wrap:wrap;gap:12px 35px;margin:0;padding-inline-start:18px}
.pi-facts a,.pi-related-services a{color:var(--nace-blue)}
.pi-scope{padding-top:0;max-width:1050px}.pi-scope .detail-copy{width:100%;padding:0}.pi-scope .detail-copy h2{font-size:1.9rem}.pi-scope .project-value{margin-top:25px}
.pi-related-services{display:flex;flex-wrap:wrap;gap:12px}.pi-related-services a{border:1px solid var(--nace-border);border-radius:4px;padding:18px;font-size:.9rem}
.pi-ideas-hero{padding-top:32px}.pi-ideas-title{max-width:1000px;padding:35px 0 20px}
.pi-moodboard{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(3,165px);gap:18px;align-items:stretch}
.pi-mood-strip{grid-column:2;grid-row:1/4;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pi-moodboard a{display:block;min-width:0;color:inherit;text-decoration:none;overflow:hidden}
.pi-moodboard .pi-mood-0{grid-row:1/4}.pi-moodboard figure{height:100%;position:relative;display:flex;flex-direction:column}
.pi-moodboard picture{display:block;flex:1;min-height:0;overflow:hidden}.pi-moodboard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s}.pi-moodboard a:hover img{transform:scale(1.025)}
.pi-moodboard figcaption{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#fff;font-size:.73rem}
.pi-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pi-collection-card{border:1px solid var(--nace-border);border-radius:4px;overflow:hidden;min-width:0;transition:box-shadow .2s}
.pi-collection-card:hover{box-shadow:var(--nace-shadow)}
.pi-category-photos{display:grid;grid-template-columns:2fr 1fr;gap:4px;height:260px;overflow:hidden;background:var(--nace-surface)}
.pi-category-photos>picture,.pi-category-photos>div{min-width:0;min-height:0;overflow:hidden}
.pi-category-photos>div{display:grid;grid-template-rows:1fr 1fr;gap:4px}.pi-category-photos picture{display:block;overflow:hidden}.pi-category-photos img{width:100%;height:100%;object-fit:cover;display:block}
.pi-collection-intro{padding-top:32px}.pi-collection-intro .pi-eyebrow{margin-top:32px}
.pi-collection-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-block:1px solid var(--nace-border);padding:18px 0;margin-top:26px}.pi-collection-tools p{margin:0}.pi-collection-tools a{color:var(--nace-blue);font-size:.85rem;min-height:44px;display:inline-flex;align-items:center}
.pi-provenance-note{font-size:.8rem;color:var(--nace-muted);line-height:1.9;max-width:100%!important;margin:22px 0}
.pi-provenance-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.pi-provenance-note summary::before{content:'+';font-size:1.1rem}.pi-provenance-note[open] summary::before{content:'−'}
.pi-collection-body{padding-top:20px}.pi-photo-grid{columns:4;column-gap:20px}
.pi-photo-card{break-inside:avoid;display:inline-block;width:100%;margin:0 0 24px;vertical-align:top}
.pi-photo{display:block;position:relative;border-radius:4px;overflow:hidden;background:var(--nace-surface)}
.pi-photo picture,.pi-photo img{display:block;width:100%;height:auto}.pi-photo img{transition:transform .2s}.pi-photo:hover img{transform:scale(1.025)}
.pi-expand{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;background:#fff;color:var(--nace-navy);border-radius:50%;opacity:0;transition:opacity .15s}.pi-photo:hover .pi-expand,.pi-photo:focus .pi-expand{opacity:1}
.pi-photo-card figcaption{padding:12px 2px}.pi-photo-card figcaption p{font-size:.8rem;line-height:1.8;color:var(--nace-muted);margin:5px 0}.pi-badge{display:inline-block;font-size:.65rem;border:1px solid var(--nace-border);padding:3px 8px;border-radius:3px;color:var(--nace-blue)}
.pi-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;padding:18px 28px;border:0;background:#0e2440fa;color:#fff;overflow:hidden;font-family:inherit}
.pi-dialog::backdrop{background:#0e2440e8}.pi-dialog[open]{display:flex;flex-direction:column;gap:12px}.pi-dialog button,.pi-dialog a{font:inherit;font-size:.85rem;min-width:44px;min-height:44px;cursor:pointer}
.pi-dialog button{background:#ffffff14;border:1px solid #ffffff50;color:#fff;border-radius:4px;padding:8px 14px}.pi-dialog a{color:#fff}.pi-dialog :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pi-lightbox-head,.pi-lightbox-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pi-lightbox-head{justify-content:space-between}.pi-lightbox-actions{justify-content:center;flex-shrink:0}
.pi-lightbox-image-wrap{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pan-y}
.pi-lightbox-image-wrap>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.pi-lightbox-image-wrap.is-zoomed>img{max-width:none;max-height:none;width:150%;height:auto}
.pi-lightbox-prev,.pi-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#0e2440d9!important}.pi-lightbox-prev{inset-inline-start:0}.pi-lightbox-next{inset-inline-end:0}
.pi-lightbox-caption{text-align:center;margin:0;font-size:.9rem;max-width:100%!important}.pi-lightbox-type{font-size:.75rem;text-align:center;margin:0;line-height:1.6}
.pi-lightbox-thumbs{display:flex;overflow-x:auto;gap:6px;max-width:100%;height:62px;flex-shrink:0;direction:ltr;margin-inline:auto}
.pi-lightbox-thumbs button{padding:2px;width:68px;height:58px;flex-shrink:0}.pi-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.pi-lightbox-thumbs [aria-current=true]{border:2px solid #fff}
.pi-lightbox-actions .pi-quote{background:var(--nace-blue);padding:8px 18px;text-decoration:none;display:inline-flex;align-items:center;border-radius:4px}
.pi-shortlist-dialog{max-width:min(920px,96vw);max-height:92dvh;width:920px;height:auto;background:#fff;color:var(--nace-navy);inset:4dvh auto auto 50%;transform:translateX(-50%);border-radius:12px;overflow:auto;padding:24px}.pi-shortlist-dialog button{color:var(--nace-navy);border-color:var(--nace-border);background:var(--nace-surface)}.pi-shortlist-dialog a{color:var(--nace-blue)}
.pi-shortlist-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-shortlist-list li{min-width:0;border:1px solid var(--nace-border);border-radius:4px;padding:10px}.pi-shortlist-list img{width:100%;height:130px;object-fit:cover}.pi-shortlist-list p{font-size:.8rem;line-height:1.8}.pi-shortlist-list a{font-size:.8rem;overflow-wrap:anywhere}.pi-shortlist-dialog textarea{width:100%;min-height:170px;font:inherit}
.nace-inspiration-tray.pi-tray{position:fixed;inset:auto 50% 85px auto;transform:translateX(50%);z-index:250;background:var(--nace-navy);color:#fff;border:1px solid #ffffff50;border-radius:40px;padding:7px 18px;box-shadow:var(--nace-shadow);max-width:90vw}.pi-tray button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;cursor:pointer}
.nace-portfolio [hidden],.pi-dialog [hidden],.pi-tray[hidden]{display:none!important}
.nace-portfolio .breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--nace-muted);line-height:1.8}
.nace-portfolio .breadcrumbs a,.nace-portfolio .breadcrumbs span{color:var(--nace-muted)}
@media(min-width:1001px){.pi-featured-card .pi-card-copy{padding:30px}.pi-featured-card h3{font-size:1.5rem}}
@media(max-width:1000px){.pi-wrap{width:calc(100% - 48px)}.pi-hero-grid{gap:28px}.pi-project-grid,.pi-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-photo-grid{columns:3}.pi-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-moodboard{grid-template-rows:repeat(3,145px)}}
@media(max-width:700px){.pi-wrap{width:calc(100% - 32px)}.pi-section{padding-block:42px}.pi-hero{padding:22px 0 32px}.pi-hero-grid{grid-template-columns:1fr;gap:26px;margin-top:20px}.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:1.95rem;line-height:1.6}.pi-lead{font-size:.94rem}.pi-hero figure img{max-height:430px}.pi-featured-grid,.pi-project-grid{grid-template-columns:1fr;gap:22px}.pi-card-copy{padding:22px}.pi-collection-grid{grid-template-columns:1fr;gap:26px}.pi-category-photos{height:260px}.pi-moodboard{display:flex;flex-wrap:wrap;gap:12px}.pi-moodboard .pi-mood-0{width:100%;flex:0 0 100%}.pi-moodboard .pi-mood-0 picture{height:280px;flex:none}.pi-moodboard>a:not(.pi-mood-0){flex:1 0 28%;min-width:0}.pi-moodboard>a:not(.pi-mood-0) picture{height:140px;flex:none}.pi-moodboard figcaption{font-size:.62rem;gap:3px}.pi-moodboard figcaption>span:last-child{display:none}.pi-ideas-title{padding-top:22px}.pi-photo-grid{columns:2;column-gap:12px}.pi-photo-card{margin-bottom:16px}.pi-photo-card figcaption p{font-size:.72rem}.pi-expand{width:32px;height:32px;opacity:1}.pi-facts{grid-template-columns:1fr}.pi-facts>div{padding:18px 0}.pi-facts ul{display:block}.pi-facts li{margin-bottom:8px}.pi-collection-tools{gap:12px 18px}.pi-collection-tools p{flex-basis:100%}.pi-collection-intro .pi-eyebrow{margin-top:24px}.pi-dialog{padding:12px;gap:8px}.pi-lightbox-thumbs{display:none}.pi-lightbox-head button,.pi-lightbox-actions button,.pi-lightbox-actions a{font-size:.75rem;padding:7px 10px}.pi-lightbox-caption{font-size:.8rem}.pi-lightbox-type{font-size:.68rem}.pi-lightbox-actions{gap:7px}.pi-shortlist-dialog{padding:18px}.pi-shortlist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pi-shortlist-list img{height:110px}.pi-final-cta>a,.pi-final-cta>button{margin:8px 0}.pi-shortlist-dialog :is(a,button):focus-visible{outline-color:var(--nace-blue)}}
@media(max-width:700px){.pi-mood-strip{display:flex;width:100%;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px}.pi-mood-strip>a{flex:0 0 66%;scroll-snap-align:start}.pi-mood-strip picture{height:180px;flex:none}.pi-collection-intro .pi-lead{line-height:1.9}.pi-collection-intro .pi-provenance-note{margin:12px 0}.pi-lightbox-type{text-align:center!important}.pi-dialog .pi-lightbox-caption{color:#fff}}
@media(prefers-reduced-motion:reduce){.nace-portfolio *,.pi-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none}.pi-project-card:hover{transform:none}.pi-lightbox-prev,.pi-lightbox-next{transform:translateY(-50%)}.pi-shortlist-dialog{transform:translateX(-50%)}}

/* NACE colours copied from the current brand stylesheet, without a new palette. */
:root{--nace-navy:#0e2440;--nace-blue:#1b578c;--nace-white:#fff;--nace-surface:#f2f2f2;--nace-muted:#52667e;--nace-border:#dce3ed;--nace-radius-sm:4px;--nace-radius-lg:12px;--nace-shadow:0 14px 36px #0e244012}
.nace-portfolio main{color:var(--nace-navy);background:var(--nace-white)}
.nace-portfolio main *,.pi-dialog *,.nace-inspiration-tray *{box-sizing:border-box}
.pi-modal-open{overflow:hidden}.pi-wrap{width:min(1340px,calc(100% - 80px));margin-inline:auto}
.pi-section{padding-block:72px}.pi-soft{background:var(--nace-surface)}
.pi-hero{padding:38px 0 60px;background:var(--nace-surface)}
.pi-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:60px;margin-top:32px}
.pi-hero-grid.pi-no-cover{grid-template-columns:1fr;max-width:1000px}
.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.55;font-weight:500;margin:14px 0 20px;text-wrap:balance}
.pi-eyebrow{font-size:.76rem;letter-spacing:.09em;direction:ltr;color:var(--nace-blue);font-weight:650;margin:0 0 14px}
.pi-lead{font-size:1.05rem;line-height:2;color:var(--nace-muted);max-width:75ch}
.pi-hero figure,.pi-moodboard figure{margin:0}
.pi-hero figure picture{display:block;overflow:hidden;border-radius:var(--nace-radius-sm);background:var(--nace-border)}
.pi-hero figure img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block}
.pi-hero figcaption,.pi-moodboard figcaption{font-size:.76rem;line-height:1.8;color:var(--nace-muted);padding:10px 0}
.pi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0}
.pi-project-hero .pi-actions .button:nth-child(2){background:transparent;color:var(--nace-blue)}
.pi-count{margin-top:32px;color:var(--nace-muted)}.pi-count strong{font-size:2rem;color:var(--nace-navy);margin-inline-end:10px}
.pi-heading{margin-bottom:30px}.pi-heading h2,.pi-final-cta h2,.pi-facts-section h2,.pi-section>h2{font-size:clamp(1.55rem,2.7vw,2.5rem);font-weight:500;line-height:1.65;margin:0 0 20px}
.pi-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.pi-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.pi-project-card{background:#fff;border:1px solid var(--nace-border);border-radius:var(--nace-radius-sm);overflow:hidden;transition:box-shadow .2s,transform .2s;min-width:0}
.pi-project-card:hover,.pi-project-card:focus-within{box-shadow:var(--nace-shadow);transform:translateY(-3px)}
.pi-project-card>a,.pi-collection-card>a{display:block;color:inherit;text-decoration:none}
.pi-card-image{aspect-ratio:16/10;overflow:hidden;background:var(--nace-surface)}
.pi-card-image picture,.pi-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s}
.pi-project-card:hover .pi-card-image img{transform:scale(1.025)}
.pi-card-copy{padding:24px}.pi-card-copy h3{font-size:1.22rem;line-height:1.7;font-weight:550;margin:12px 0}
.pi-card-copy p{font-size:.9rem;line-height:1.9;margin:8px 0;color:var(--nace-muted)}
.pi-card-copy .pi-work-type{color:var(--nace-blue);font-size:.76rem}
.pi-meta{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.73rem;color:var(--nace-muted)}
.pi-card-metrics{list-style:none;padding:14px 0;margin:18px 0;border-block:1px solid var(--nace-border);font-size:.9rem;color:var(--nace-navy)}
.pi-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--nace-blue);margin-top:16px}
.pi-record-visual{min-height:180px;background:var(--nace-navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.7rem}
.pi-record-visual>span:first-child{font-size:2.4rem;letter-spacing:.14em;font-weight:300}
.pi-filter-bar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;padding:4px 3px 14px;max-width:100%}
.pi-filter-bar button,.pi-button{font:inherit;font-size:.85rem;min-height:46px;border:1px solid var(--nace-border);border-radius:30px;padding:10px 18px;background:#fff;color:var(--nace-navy);cursor:pointer;flex-shrink:0}
.pi-filter-bar button[aria-pressed=true]{background:var(--nace-navy);color:#fff;border-color:var(--nace-navy)}
[data-project-status]{color:var(--nace-muted);font-size:.8rem;margin:14px 0 28px}
.pi-final-cta{text-align:center;border-top:1px solid var(--nace-border)}.pi-final-cta p{margin-inline:auto}.pi-final-cta>a,.pi-final-cta>button{margin:14px}
.pi-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--nace-border)}
.pi-facts>div{padding:26px 22px;border-bottom:1px solid var(--nace-border)}
.pi-facts dt{font-size:.8rem;color:var(--nace-muted);margin-bottom:9px}.pi-facts dd{font-size:1rem;line-height:1.9;margin:0}
.pi-facts-wide{grid-column:1/-1}.pi-facts ul{display:flex;flex-wrap:wrap;gap:12px 35px;margin:0;padding-inline-start:18px}
.pi-facts a,.pi-related-services a{color:var(--nace-blue)}
.pi-scope{padding-top:0;max-width:1050px}.pi-scope .detail-copy{width:100%;padding:0}.pi-scope .detail-copy h2{font-size:1.9rem}.pi-scope .project-value{margin-top:25px}
.pi-related-services{display:flex;flex-wrap:wrap;gap:12px}.pi-related-services a{border:1px solid var(--nace-border);border-radius:4px;padding:18px;font-size:.9rem}
.pi-ideas-hero{padding-top:32px}.pi-ideas-title{max-width:1000px;padding:35px 0 20px}
.pi-moodboard{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(3,165px);gap:18px;align-items:stretch}
.pi-mood-strip{grid-column:2;grid-row:1/4;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pi-moodboard a{display:block;min-width:0;color:inherit;text-decoration:none;overflow:hidden}
.pi-moodboard .pi-mood-0{grid-row:1/4}.pi-moodboard figure{height:100%;position:relative;display:flex;flex-direction:column}
.pi-moodboard picture{display:block;flex:1;min-height:0;overflow:hidden}.pi-moodboard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s}.pi-moodboard a:hover img{transform:scale(1.025)}
.pi-moodboard figcaption{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#fff;font-size:.73rem}
.pi-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pi-collection-card{border:1px solid var(--nace-border);border-radius:4px;overflow:hidden;min-width:0;transition:box-shadow .2s}
.pi-collection-card:hover{box-shadow:var(--nace-shadow)}
.pi-category-photos{display:grid;grid-template-columns:2fr 1fr;gap:4px;height:260px;overflow:hidden;background:var(--nace-surface)}
.pi-category-photos>picture,.pi-category-photos>div{min-width:0;min-height:0;overflow:hidden}
.pi-category-photos>div{display:grid;grid-template-rows:1fr 1fr;gap:4px}.pi-category-photos picture{display:block;overflow:hidden}.pi-category-photos img{width:100%;height:100%;object-fit:cover;display:block}
.pi-collection-intro{padding-top:32px}.pi-collection-intro .pi-eyebrow{margin-top:32px}
.pi-collection-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-block:1px solid var(--nace-border);padding:18px 0;margin-top:26px}.pi-collection-tools p{margin:0}.pi-collection-tools a{color:var(--nace-blue);font-size:.85rem;min-height:44px;display:inline-flex;align-items:center}
.pi-provenance-note{font-size:.8rem;color:var(--nace-muted);line-height:1.9;max-width:100%!important;margin:22px 0}
.pi-provenance-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.pi-provenance-note summary::before{content:'+';font-size:1.1rem}.pi-provenance-note[open] summary::before{content:'−'}
.pi-collection-body{padding-top:20px}.pi-photo-grid{columns:4;column-gap:20px}
.pi-photo-card{break-inside:avoid;display:inline-block;width:100%;margin:0 0 24px;vertical-align:top}
.pi-photo{display:block;position:relative;border-radius:4px;overflow:hidden;background:var(--nace-surface)}
.pi-photo picture,.pi-photo img{display:block;width:100%;height:auto}.pi-photo img{transition:transform .2s}.pi-photo:hover img{transform:scale(1.025)}
.pi-expand{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;background:#fff;color:var(--nace-navy);border-radius:50%;opacity:0;transition:opacity .15s}.pi-photo:hover .pi-expand,.pi-photo:focus .pi-expand{opacity:1}
.pi-photo-card figcaption{padding:12px 2px}.pi-photo-card figcaption p{font-size:.8rem;line-height:1.8;color:var(--nace-muted);margin:5px 0}.pi-badge{display:inline-block;font-size:.65rem;border:1px solid var(--nace-border);padding:3px 8px;border-radius:3px;color:var(--nace-blue)}
.pi-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;padding:18px 28px;border:0;background:#0e2440fa;color:#fff;overflow:hidden;font-family:inherit}
.pi-dialog::backdrop{background:#0e2440e8}.pi-dialog[open]{display:flex;flex-direction:column;gap:12px}.pi-dialog button,.pi-dialog a{font:inherit;font-size:.85rem;min-width:44px;min-height:44px;cursor:pointer}
.pi-dialog button{background:#ffffff14;border:1px solid #ffffff50;color:#fff;border-radius:4px;padding:8px 14px}.pi-dialog a{color:#fff}.pi-dialog :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pi-lightbox-head,.pi-lightbox-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pi-lightbox-head{justify-content:space-between}.pi-lightbox-actions{justify-content:center;flex-shrink:0}
.pi-lightbox-image-wrap{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pan-y}
.pi-lightbox-image-wrap>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.pi-lightbox-image-wrap.is-zoomed>img{max-width:none;max-height:none;width:150%;height:auto}
.pi-lightbox-prev,.pi-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#0e2440d9!important}.pi-lightbox-prev{inset-inline-start:0}.pi-lightbox-next{inset-inline-end:0}
.pi-lightbox-caption{text-align:center;margin:0;font-size:.9rem;max-width:100%!important}.pi-lightbox-type{font-size:.75rem;text-align:center;margin:0;line-height:1.6}
.pi-lightbox-thumbs{display:flex;overflow-x:auto;gap:6px;max-width:100%;height:62px;flex-shrink:0;direction:ltr;margin-inline:auto}
.pi-lightbox-thumbs button{padding:2px;width:68px;height:58px;flex-shrink:0}.pi-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.pi-lightbox-thumbs [aria-current=true]{border:2px solid #fff}
.pi-lightbox-actions .pi-quote{background:var(--nace-blue);padding:8px 18px;text-decoration:none;display:inline-flex;align-items:center;border-radius:4px}
.pi-shortlist-dialog{max-width:min(920px,96vw);max-height:92dvh;width:920px;height:auto;background:#fff;color:var(--nace-navy);inset:4dvh auto auto 50%;transform:translateX(-50%);border-radius:12px;overflow:auto;padding:24px}.pi-shortlist-dialog button{color:var(--nace-navy);border-color:var(--nace-border);background:var(--nace-surface)}.pi-shortlist-dialog a{color:var(--nace-blue)}
.pi-shortlist-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-shortlist-list li{min-width:0;border:1px solid var(--nace-border);border-radius:4px;padding:10px}.pi-shortlist-list img{width:100%;height:130px;object-fit:cover}.pi-shortlist-list p{font-size:.8rem;line-height:1.8}.pi-shortlist-list a{font-size:.8rem;overflow-wrap:anywhere}.pi-shortlist-dialog textarea{width:100%;min-height:170px;font:inherit}
.nace-inspiration-tray.pi-tray{position:fixed;inset:auto 50% 85px auto;transform:translateX(50%);z-index:250;background:var(--nace-navy);color:#fff;border:1px solid #ffffff50;border-radius:40px;padding:7px 18px;box-shadow:var(--nace-shadow);max-width:90vw}.pi-tray button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;cursor:pointer}
.nace-portfolio [hidden],.pi-dialog [hidden],.pi-tray[hidden]{display:none!important}
.nace-portfolio .breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--nace-muted);line-height:1.8}
.nace-portfolio .breadcrumbs a,.nace-portfolio .breadcrumbs span{color:var(--nace-muted)}
@media(min-width:1001px){.pi-featured-card .pi-card-copy{padding:30px}.pi-featured-card h3{font-size:1.5rem}}
@media(max-width:1000px){.pi-wrap{width:calc(100% - 48px)}.pi-hero-grid{gap:28px}.pi-project-grid,.pi-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-photo-grid{columns:3}.pi-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-moodboard{grid-template-rows:repeat(3,145px)}}
@media(max-width:700px){.pi-wrap{width:calc(100% - 32px)}.pi-section{padding-block:42px}.pi-hero{padding:22px 0 32px}.pi-hero-grid{grid-template-columns:1fr;gap:26px;margin-top:20px}.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:1.95rem;line-height:1.6}.pi-lead{font-size:.94rem}.pi-hero figure img{max-height:430px}.pi-featured-grid,.pi-project-grid{grid-template-columns:1fr;gap:22px}.pi-card-copy{padding:22px}.pi-collection-grid{grid-template-columns:1fr;gap:26px}.pi-category-photos{height:260px}.pi-moodboard{display:flex;flex-wrap:wrap;gap:12px}.pi-moodboard .pi-mood-0{width:100%;flex:0 0 100%}.pi-moodboard .pi-mood-0 picture{height:280px;flex:none}.pi-moodboard>a:not(.pi-mood-0){flex:1 0 28%;min-width:0}.pi-moodboard>a:not(.pi-mood-0) picture{height:140px;flex:none}.pi-moodboard figcaption{font-size:.62rem;gap:3px}.pi-moodboard figcaption>span:last-child{display:none}.pi-ideas-title{padding-top:22px}.pi-photo-grid{columns:2;column-gap:12px}.pi-photo-card{margin-bottom:16px}.pi-photo-card figcaption p{font-size:.72rem}.pi-expand{width:32px;height:32px;opacity:1}.pi-facts{grid-template-columns:1fr}.pi-facts>div{padding:18px 0}.pi-facts ul{display:block}.pi-facts li{margin-bottom:8px}.pi-collection-tools{gap:12px 18px}.pi-collection-tools p{flex-basis:100%}.pi-collection-intro .pi-eyebrow{margin-top:24px}.pi-dialog{padding:12px;gap:8px}.pi-lightbox-thumbs{display:none}.pi-lightbox-head button,.pi-lightbox-actions button,.pi-lightbox-actions a{font-size:.75rem;padding:7px 10px}.pi-lightbox-caption{font-size:.8rem}.pi-lightbox-type{font-size:.68rem}.pi-lightbox-actions{gap:7px}.pi-shortlist-dialog{padding:18px}.pi-shortlist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pi-shortlist-list img{height:110px}.pi-final-cta>a,.pi-final-cta>button{margin:8px 0}.pi-shortlist-dialog :is(a,button):focus-visible{outline-color:var(--nace-blue)}}
@media(max-width:700px){.pi-mood-strip{display:flex;width:100%;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px}.pi-mood-strip>a{flex:0 0 66%;scroll-snap-align:start}.pi-mood-strip picture{height:180px;flex:none}.pi-collection-intro .pi-lead{line-height:1.9}.pi-collection-intro .pi-provenance-note{margin:12px 0}.pi-lightbox-type{text-align:center!important}.pi-dialog .pi-lightbox-caption{color:#fff}}
@media(prefers-reduced-motion:reduce){.nace-portfolio *,.pi-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none}.pi-project-card:hover{transform:none}.pi-lightbox-prev,.pi-lightbox-next{transform:translateY(-50%)}.pi-shortlist-dialog{transform:translateX(-50%)}}

/* NACE colours copied from the current brand stylesheet, without a new palette. */
:root{--nace-navy:#0e2440;--nace-blue:#1b578c;--nace-white:#fff;--nace-surface:#f2f2f2;--nace-muted:#52667e;--nace-border:#dce3ed;--nace-radius-sm:4px;--nace-radius-lg:12px;--nace-shadow:0 14px 36px #0e244012}
.nace-portfolio main{color:var(--nace-navy);background:var(--nace-white)}
.nace-portfolio main *,.pi-dialog *,.nace-inspiration-tray *{box-sizing:border-box}
.pi-modal-open{overflow:hidden}.pi-wrap{width:min(1340px,calc(100% - 80px));margin-inline:auto}
.pi-section{padding-block:72px}.pi-soft{background:var(--nace-surface)}
.pi-hero{padding:38px 0 60px;background:var(--nace-surface)}
.pi-hero-grid{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:60px;margin-top:32px}
.pi-hero-grid.pi-no-cover{grid-template-columns:1fr;max-width:1000px}
.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:clamp(2rem,3.7vw,3.8rem);line-height:1.55;font-weight:500;margin:14px 0 20px;text-wrap:balance}
.pi-eyebrow{font-size:.76rem;letter-spacing:.09em;direction:ltr;color:var(--nace-blue);font-weight:650;margin:0 0 14px}
.pi-lead{font-size:1.05rem;line-height:2;color:var(--nace-muted);max-width:75ch}
.pi-hero figure,.pi-moodboard figure{margin:0}
.pi-hero figure picture{display:block;overflow:hidden;border-radius:var(--nace-radius-sm);background:var(--nace-border)}
.pi-hero figure img{width:100%;height:auto;max-height:640px;object-fit:contain;display:block}
.pi-hero figcaption,.pi-moodboard figcaption{font-size:.76rem;line-height:1.8;color:var(--nace-muted);padding:10px 0}
.pi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0}
.pi-project-hero .pi-actions .button:nth-child(2){background:transparent;color:var(--nace-blue)}
.pi-count{margin-top:32px;color:var(--nace-muted)}.pi-count strong{font-size:2rem;color:var(--nace-navy);margin-inline-end:10px}
.pi-heading{margin-bottom:30px}.pi-heading h2,.pi-final-cta h2,.pi-facts-section h2,.pi-section>h2{font-size:clamp(1.55rem,2.7vw,2.5rem);font-weight:500;line-height:1.65;margin:0 0 20px}
.pi-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.pi-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.pi-project-card{background:#fff;border:1px solid var(--nace-border);border-radius:var(--nace-radius-sm);overflow:hidden;transition:box-shadow .2s,transform .2s;min-width:0}
.pi-project-card:hover,.pi-project-card:focus-within{box-shadow:var(--nace-shadow);transform:translateY(-3px)}
.pi-project-card>a,.pi-collection-card>a{display:block;color:inherit;text-decoration:none}
.pi-card-image{aspect-ratio:16/10;overflow:hidden;background:var(--nace-surface)}
.pi-card-image picture,.pi-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s}
.pi-project-card:hover .pi-card-image img{transform:scale(1.025)}
.pi-card-copy{padding:24px}.pi-card-copy h3{font-size:1.22rem;line-height:1.7;font-weight:550;margin:12px 0}
.pi-card-copy p{font-size:.9rem;line-height:1.9;margin:8px 0;color:var(--nace-muted)}
.pi-card-copy .pi-work-type{color:var(--nace-blue);font-size:.76rem}
.pi-meta{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.73rem;color:var(--nace-muted)}
.pi-card-metrics{list-style:none;padding:14px 0;margin:18px 0;border-block:1px solid var(--nace-border);font-size:.9rem;color:var(--nace-navy)}
.pi-link{display:inline-block;font-size:.86rem;font-weight:600;color:var(--nace-blue);margin-top:16px}
.pi-record-visual{min-height:180px;background:var(--nace-navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.7rem}
.pi-record-visual>span:first-child{font-size:2.4rem;letter-spacing:.14em;font-weight:300}
.pi-filter-bar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;padding:4px 3px 14px;max-width:100%}
.pi-filter-bar button,.pi-button{font:inherit;font-size:.85rem;min-height:46px;border:1px solid var(--nace-border);border-radius:30px;padding:10px 18px;background:#fff;color:var(--nace-navy);cursor:pointer;flex-shrink:0}
.pi-filter-bar button[aria-pressed=true]{background:var(--nace-navy);color:#fff;border-color:var(--nace-navy)}
[data-project-status]{color:var(--nace-muted);font-size:.8rem;margin:14px 0 28px}
.pi-final-cta{text-align:center;border-top:1px solid var(--nace-border)}.pi-final-cta p{margin-inline:auto}.pi-final-cta>a,.pi-final-cta>button{margin:14px}
.pi-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--nace-border)}
.pi-facts>div{padding:26px 22px;border-bottom:1px solid var(--nace-border)}
.pi-facts dt{font-size:.8rem;color:var(--nace-muted);margin-bottom:9px}.pi-facts dd{font-size:1rem;line-height:1.9;margin:0}
.pi-facts-wide{grid-column:1/-1}.pi-facts ul{display:flex;flex-wrap:wrap;gap:12px 35px;margin:0;padding-inline-start:18px}
.pi-facts a,.pi-related-services a{color:var(--nace-blue)}
.pi-scope{padding-top:0;max-width:1050px}.pi-scope .detail-copy{width:100%;padding:0}.pi-scope .detail-copy h2{font-size:1.9rem}.pi-scope .project-value{margin-top:25px}
.pi-related-services{display:flex;flex-wrap:wrap;gap:12px}.pi-related-services a{border:1px solid var(--nace-border);border-radius:4px;padding:18px;font-size:.9rem}
.pi-ideas-hero{padding-top:32px}.pi-ideas-title{max-width:1000px;padding:35px 0 20px}
.pi-moodboard{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(3,165px);gap:18px;align-items:stretch}
.pi-mood-strip{grid-column:2;grid-row:1/4;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:18px;min-width:0}
.pi-moodboard a{display:block;min-width:0;color:inherit;text-decoration:none;overflow:hidden}
.pi-moodboard .pi-mood-0{grid-row:1/4}.pi-moodboard figure{height:100%;position:relative;display:flex;flex-direction:column}
.pi-moodboard picture{display:block;flex:1;min-height:0;overflow:hidden}.pi-moodboard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s}.pi-moodboard a:hover img{transform:scale(1.025)}
.pi-moodboard figcaption{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;background:#fff;font-size:.73rem}
.pi-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.pi-collection-card{border:1px solid var(--nace-border);border-radius:4px;overflow:hidden;min-width:0;transition:box-shadow .2s}
.pi-collection-card:hover{box-shadow:var(--nace-shadow)}
.pi-category-photos{display:grid;grid-template-columns:2fr 1fr;gap:4px;height:260px;overflow:hidden;background:var(--nace-surface)}
.pi-category-photos>picture,.pi-category-photos>div{min-width:0;min-height:0;overflow:hidden}
.pi-category-photos>div{display:grid;grid-template-rows:1fr 1fr;gap:4px}.pi-category-photos picture{display:block;overflow:hidden}.pi-category-photos img{width:100%;height:100%;object-fit:cover;display:block}
.pi-collection-intro{padding-top:32px}.pi-collection-intro .pi-eyebrow{margin-top:32px}
.pi-collection-tools{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-block:1px solid var(--nace-border);padding:18px 0;margin-top:26px}.pi-collection-tools p{margin:0}.pi-collection-tools a{color:var(--nace-blue);font-size:.85rem;min-height:44px;display:inline-flex;align-items:center}
.pi-provenance-note{font-size:.8rem;color:var(--nace-muted);line-height:1.9;max-width:100%!important;margin:22px 0}
.pi-provenance-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.pi-provenance-note summary::before{content:'+';font-size:1.1rem}.pi-provenance-note[open] summary::before{content:'−'}
.pi-collection-body{padding-top:20px}.pi-photo-grid{columns:4;column-gap:20px}
.pi-photo-card{break-inside:avoid;display:inline-block;width:100%;margin:0 0 24px;vertical-align:top}
.pi-photo{display:block;position:relative;border-radius:4px;overflow:hidden;background:var(--nace-surface)}
.pi-photo picture,.pi-photo img{display:block;width:100%;height:auto}.pi-photo img{transition:transform .2s}.pi-photo:hover img{transform:scale(1.025)}
.pi-expand{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;background:#fff;color:var(--nace-navy);border-radius:50%;opacity:0;transition:opacity .15s}.pi-photo:hover .pi-expand,.pi-photo:focus .pi-expand{opacity:1}
.pi-photo-card figcaption{padding:12px 2px}.pi-photo-card figcaption p{font-size:.8rem;line-height:1.8;color:var(--nace-muted);margin:5px 0}.pi-badge{display:inline-block;font-size:.65rem;border:1px solid var(--nace-border);padding:3px 8px;border-radius:3px;color:var(--nace-blue)}
.pi-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;padding:18px 28px;border:0;background:#0e2440fa;color:#fff;overflow:hidden;font-family:inherit}
.pi-dialog::backdrop{background:#0e2440e8}.pi-dialog[open]{display:flex;flex-direction:column;gap:12px}.pi-dialog button,.pi-dialog a{font:inherit;font-size:.85rem;min-width:44px;min-height:44px;cursor:pointer}
.pi-dialog button{background:#ffffff14;border:1px solid #ffffff50;color:#fff;border-radius:4px;padding:8px 14px}.pi-dialog a{color:#fff}.pi-dialog :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:3px}
.pi-lightbox-head,.pi-lightbox-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pi-lightbox-head{justify-content:space-between}.pi-lightbox-actions{justify-content:center;flex-shrink:0}
.pi-lightbox-image-wrap{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pan-y}
.pi-lightbox-image-wrap>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}.pi-lightbox-image-wrap.is-zoomed>img{max-width:none;max-height:none;width:150%;height:auto}
.pi-lightbox-prev,.pi-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1;background:#0e2440d9!important}.pi-lightbox-prev{inset-inline-start:0}.pi-lightbox-next{inset-inline-end:0}
.pi-lightbox-caption{text-align:center;margin:0;font-size:.9rem;max-width:100%!important}.pi-lightbox-type{font-size:.75rem;text-align:center;margin:0;line-height:1.6}
.pi-lightbox-thumbs{display:flex;overflow-x:auto;gap:6px;max-width:100%;height:62px;flex-shrink:0;direction:ltr;margin-inline:auto}
.pi-lightbox-thumbs button{padding:2px;width:68px;height:58px;flex-shrink:0}.pi-lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.pi-lightbox-thumbs [aria-current=true]{border:2px solid #fff}
.pi-lightbox-actions .pi-quote{background:var(--nace-blue);padding:8px 18px;text-decoration:none;display:inline-flex;align-items:center;border-radius:4px}
.pi-shortlist-dialog{max-width:min(920px,96vw);max-height:92dvh;width:920px;height:auto;background:#fff;color:var(--nace-navy);inset:4dvh auto auto 50%;transform:translateX(-50%);border-radius:12px;overflow:auto;padding:24px}.pi-shortlist-dialog button{color:var(--nace-navy);border-color:var(--nace-border);background:var(--nace-surface)}.pi-shortlist-dialog a{color:var(--nace-blue)}
.pi-shortlist-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-shortlist-list li{min-width:0;border:1px solid var(--nace-border);border-radius:4px;padding:10px}.pi-shortlist-list img{width:100%;height:130px;object-fit:cover}.pi-shortlist-list p{font-size:.8rem;line-height:1.8}.pi-shortlist-list a{font-size:.8rem;overflow-wrap:anywhere}.pi-shortlist-dialog textarea{width:100%;min-height:170px;font:inherit}
.nace-inspiration-tray.pi-tray{position:fixed;inset:auto 50% 85px auto;transform:translateX(50%);z-index:250;background:var(--nace-navy);color:#fff;border:1px solid #ffffff50;border-radius:40px;padding:7px 18px;box-shadow:var(--nace-shadow);max-width:90vw}.pi-tray button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;cursor:pointer}
.nace-portfolio [hidden],.pi-dialog [hidden],.pi-tray[hidden]{display:none!important}
.nace-portfolio .breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--nace-muted);line-height:1.8}
.nace-portfolio .breadcrumbs a,.nace-portfolio .breadcrumbs span{color:var(--nace-muted)}
@media(min-width:1001px){.pi-featured-card .pi-card-copy{padding:30px}.pi-featured-card h3{font-size:1.5rem}}
@media(max-width:1000px){.pi-wrap{width:calc(100% - 48px)}.pi-hero-grid{gap:28px}.pi-project-grid,.pi-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-photo-grid{columns:3}.pi-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-moodboard{grid-template-rows:repeat(3,145px)}}
@media(max-width:700px){.pi-wrap{width:calc(100% - 32px)}.pi-section{padding-block:42px}.pi-hero{padding:22px 0 32px}.pi-hero-grid{grid-template-columns:1fr;gap:26px;margin-top:20px}.pi-hero h1,.pi-ideas-title h1,.pi-collection-intro h1{font-size:1.95rem;line-height:1.6}.pi-lead{font-size:.94rem}.pi-hero figure img{max-height:430px}.pi-featured-grid,.pi-project-grid{grid-template-columns:1fr;gap:22px}.pi-card-copy{padding:22px}.pi-collection-grid{grid-template-columns:1fr;gap:26px}.pi-category-photos{height:260px}.pi-moodboard{display:flex;flex-wrap:wrap;gap:12px}.pi-moodboard .pi-mood-0{width:100%;flex:0 0 100%}.pi-moodboard .pi-mood-0 picture{height:280px;flex:none}.pi-moodboard>a:not(.pi-mood-0){flex:1 0 28%;min-width:0}.pi-moodboard>a:not(.pi-mood-0) picture{height:140px;flex:none}.pi-moodboard figcaption{font-size:.62rem;gap:3px}.pi-moodboard figcaption>span:last-child{display:none}.pi-ideas-title{padding-top:22px}.pi-photo-grid{columns:2;column-gap:12px}.pi-photo-card{margin-bottom:16px}.pi-photo-card figcaption p{font-size:.72rem}.pi-expand{width:32px;height:32px;opacity:1}.pi-facts{grid-template-columns:1fr}.pi-facts>div{padding:18px 0}.pi-facts ul{display:block}.pi-facts li{margin-bottom:8px}.pi-collection-tools{gap:12px 18px}.pi-collection-tools p{flex-basis:100%}.pi-collection-intro .pi-eyebrow{margin-top:24px}.pi-dialog{padding:12px;gap:8px}.pi-lightbox-thumbs{display:none}.pi-lightbox-head button,.pi-lightbox-actions button,.pi-lightbox-actions a{font-size:.75rem;padding:7px 10px}.pi-lightbox-caption{font-size:.8rem}.pi-lightbox-type{font-size:.68rem}.pi-lightbox-actions{gap:7px}.pi-shortlist-dialog{padding:18px}.pi-shortlist-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pi-shortlist-list img{height:110px}.pi-final-cta>a,.pi-final-cta>button{margin:8px 0}.pi-shortlist-dialog :is(a,button):focus-visible{outline-color:var(--nace-blue)}}
@media(max-width:700px){.pi-mood-strip{display:flex;width:100%;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px}.pi-mood-strip>a{flex:0 0 66%;scroll-snap-align:start}.pi-mood-strip picture{height:180px;flex:none}.pi-collection-intro .pi-lead{line-height:1.9}.pi-collection-intro .pi-provenance-note{margin:12px 0}.pi-lightbox-type{text-align:center!important}.pi-dialog .pi-lightbox-caption{color:#fff}}
@media(prefers-reduced-motion:reduce){.nace-portfolio *,.pi-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important;transform:none}.pi-project-card:hover{transform:none}.pi-lightbox-prev,.pi-lightbox-next{transform:translateY(-50%)}.pi-shortlist-dialog{transform:translateX(-50%)}}
html{scroll-behavior:auto!important}
.amc-demo-details{-webkit-backdrop-filter:none;backdrop-filter:none}
