/* Only BP Teesside; OMV keeps its current stylesheet. */
.site-header{min-height:74px!important;height:auto!important;display:flex!important;align-items:center!important;justify-content:space-between!important;opacity:1!important;visibility:visible!important;animation:none!important;transform:none!important}.site-header .brand{display:flex!important;gap:8px;align-items:center!important;white-space:nowrap;color:var(--accent)!important;font-weight:500!important;font-size:18px!important;text-decoration:none!important}.site-header .brand>span:first-child{color:var(--accent)!important}.site-header .brand i{width:4px;height:4px;background:var(--accent)}.site-header .brand .brand-subtitle{font-size:12px!important;color:#a8afb4!important;font-weight:400!important}.header-actions{display:flex!important;align-items:center;gap:20px}.main-nav{display:flex;gap:19px}.main-nav a{font-size:12px}.lang-switch{display:flex!important;gap:8px;align-items:center}.lang-btn{display:grid!important;place-items:center!important;width:34px!important;height:24px!important;opacity:.7}.lang-btn.active{opacity:1}.lang-flag{display:block!important;width:27px!important;height:17px!important;object-fit:cover;border-radius:2px;border:1px solid rgba(255,255,255,.36)}.header-divider{display:none!important}
.hero{padding-top:30px}.hero .eyebrow{display:block!important;margin:0 0 8px;color:var(--accent);font-size:11px;letter-spacing:.16em;animation:none!important;opacity:1!important}.hero-title-row{display:flex;align-items:end;justify-content:space-between;gap:24px}.hero-title-row h1{flex:1;min-width:0;white-space:normal;animation:none!important;opacity:1!important}.hero-title-row .share-project{flex:none;display:inline-flex!important;align-items:center;gap:7px;align-self:end;margin:0 0 5px!important;white-space:nowrap;opacity:1!important;visibility:visible!important}.hero>.lede{margin:12px 0 0;white-space:normal;opacity:1!important}
.role-inline{margin:8px 0 0;font-size:14px;line-height:1.5;color:#d4d8dc;white-space:normal}.gallery-section,.gallery-viewport,.gallery-track,.gallery-card,.gallery-card img{visibility:visible!important;opacity:1!important}.gallery-track{display:flex;gap:0;transform:translateX(0);transition:transform .38s ease!important}.gallery-card{flex:0 0 18%;margin:0;min-width:0;cursor:zoom-in}.gallery-card img{display:block!important;width:100%;height:340px;object-fit:cover}.gallery-track:hover .gallery-card:hover{flex-basis:18%}
.reveal,.reveal-title,.reveal-slide,.reveal-scale,.reveal-gallery,.reveal-soft,.header-enter{opacity:1!important;transform:none!important;animation:none!important;transition:none!important}.hero h1,.hero .lede{opacity:1!important;transform:none!important}.focus-item{opacity:1!important}
@media(max-width:900px){.main-nav{display:none!important}.menu-toggle{display:block}.gallery-card{flex-basis:28%}.gallery-card img{height:310px}}
@media(max-width:640px){.site-header{min-height:64px!important}.site-header .brand{font-size:15px!important}.site-header .brand .brand-subtitle{font-size:10px!important}.header-actions{gap:8px}.lang-btn{width:28px!important}.lang-flag{width:22px!important;height:15px!important}.hero-title-row{align-items:start}.hero-title-row h1{font-size:clamp(25px,7vw,35px)}.hero-title-row .share-project{font-size:9px;padding:6px 8px;align-self:start;margin-top:5px!important}.gallery-card{flex-basis:42%}.gallery-card img{height:270px}.gallery-track:hover .gallery-card:hover{flex-basis:42%}}
/* V0.2 — align Teesside header with OMV, repair share and constrain tags */
.site-header .brand>span:first-child{font-size:20px!important;color:var(--accent)!important;font-weight:500!important;line-height:1.2}.site-header .brand .brand-subtitle{font-size:12px!important;color:var(--muted)!important}.site-header .main-nav{display:flex!important;gap:18px!important;align-items:center}.site-header .main-nav a{font-size:12px!important;color:var(--muted)!important;text-decoration:none!important;font-weight:400!important}.site-header .main-nav a:hover{color:var(--text)!important}.site-header .menu-toggle{display:none!important}.mobile-menu{position:fixed!important;z-index:40;right:0;top:0;width:min(360px,85vw);height:100vh;padding:95px 30px;background:rgba(11,13,15,.97);transform:translateX(102%)!important;transition:transform .35s ease;display:flex!important;flex-direction:column;gap:18px;visibility:hidden;pointer-events:none}.mobile-menu.open{transform:none!important;visibility:visible;pointer-events:auto}.mobile-menu a{font-size:18px;color:var(--text);text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:12px}
.hero-title-row .share-project{display:flex!important;position:static!important;border:1px solid var(--line)!important;border-radius:999px!important;background:transparent!important;color:#cbd0d3!important;padding:9px 13px!important;font:inherit!important;font-size:11px!important;white-space:nowrap!important;cursor:pointer!important;box-shadow:none!important;min-width:max-content}.hero-title-row .share-project:hover{border-color:var(--accent)!important;color:var(--accent)!important}
.tag-section .tags{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;white-space:nowrap;scrollbar-width:thin;padding-bottom:7px}.tag-section .tags .tag{flex:0 0 auto!important;white-space:nowrap}
@media(max-width:900px){.site-header .main-nav{display:none!important}.site-header .menu-toggle{display:block!important;width:30px;border:0;background:none;padding:4px;cursor:pointer}.site-header .menu-toggle span{display:block;height:1px;background:#fff;margin:6px 0}}
@media(max-width:640px){.site-header .brand>span:first-child{font-size:17px!important}.site-header .brand .brand-subtitle{font-size:10px!important}.hero-title-row .share-project{padding:7px 9px!important;font-size:9px!important}}

/* V0.3: reference header, V5 hover expansion, and compact tag row. */
.site-header{min-height:90px!important}.site-header .brand{gap:10px!important}.site-header .brand>span:first-child{font-size:30px!important;font-weight:400!important;line-height:1.05!important}.site-header .brand i{width:5px!important;height:5px!important;border-radius:50%}.site-header .brand .brand-subtitle{font-size:14px!important}.site-header .main-nav{gap:22px!important}.site-header .main-nav a{font-size:13px!important}.site-header .lang-flag{width:24px!important;height:15px!important}.site-header .lang-btn{width:30px!important;height:22px!important}
.gallery-track:hover .gallery-card:hover{flex-basis:34%!important;filter:brightness(1)!important}.gallery-card{transition:flex-basis .38s cubic-bezier(.22,.61,.36,1),filter .3s ease!important}.gallery-track:hover .gallery-card:not(:hover){filter:brightness(.62)}
/* Match the circular close control used by the video player, outside the image. */
.lightbox{padding:72px 28px 38px!important}.lightbox figure{position:relative}.lightbox-close{top:18px!important;right:max(28px,calc((100vw - 1100px)/2))!important;width:40px!important;height:40px!important;border:1px solid #777!important;border-radius:50%!important;background:transparent!important;color:#fff!important;font-size:25px!important;line-height:1!important;z-index:2}.lightbox-close:before,.lightbox-close:after{display:none!important}.lightbox-close:hover{background:#34383c!important}
.tag-section .tags{overflow:hidden!important;white-space:nowrap!important;padding-bottom:0!important;max-width:100%}.tag-section .tags .tag{flex:none!important}
.related-copy h3{font-size:15px!important}.related-copy p{font-size:12px!important;line-height:1.4}
@media(max-width:1150px){.gallery-track:hover .gallery-card:hover{flex-basis:36%!important}}
@media(max-width:900px){.site-header .brand>span:first-child{font-size:24px!important}.site-header .brand .brand-subtitle{font-size:12px!important}.gallery-track:hover .gallery-card:hover{flex-basis:44%!important}}
@media(max-width:640px){.site-header{min-height:70px!important}.site-header .brand>span:first-child{font-size:20px!important}.site-header .brand .brand-subtitle{display:inline!important;font-size:10px!important}.site-header .lang-flag{width:22px!important;height:14px!important}.gallery-track:hover .gallery-card:hover{flex-basis:62%!important}.lightbox-close{right:14px!important;top:12px!important}.related-copy h3{font-size:15px!important}.related-copy p{font-size:12px!important}}
@media(prefers-reduced-motion:reduce){.gallery-card{transition:none!important}}

.lightbox figure{width:max-content;max-width:min(1100px,88vw)}.lightbox-close{top:-48px!important;right:0!important}
@media(max-width:640px){.lightbox-close{top:-48px!important;right:0!important}}

/* V0.4: subtle hierarchy and the V7 scroll reveal. */
.site-header .brand>span:first-child{font-size:32px!important}.site-header .brand i{border-radius:0!important;width:5px!important;height:5px!important}
.hero-title-row h1{font-size:clamp(28px,2.65vw,38px)!important;line-height:1.1!important}
.lightbox-prev{left:max(12px,calc((100vw - 1100px)/2 - 54px))!important}.lightbox-next{right:max(12px,calc((100vw - 1100px)/2 - 54px))!important}
/* Reveal only after the script initializes; content stays visible if JavaScript is unavailable. */
body.tf-motion-ready .reveal:not(.in-view){opacity:0!important;transform:translateY(24px)!important;transition:opacity .7s ease,transform .7s cubic-bezier(.22,.61,.36,1)!important}
body.tf-motion-ready .reveal.in-view{opacity:1!important;transform:none!important;transition:opacity .7s ease,transform .7s cubic-bezier(.22,.61,.36,1)!important}
body.tf-motion-ready .hero.reveal{opacity:1!important;transform:none!important}
body.tf-motion-ready .site-header,body.tf-motion-ready .hero .eyebrow,body.tf-motion-ready .hero .hero-title-row,body.tf-motion-ready .hero .lede{opacity:0!important;transform:translateY(18px)!important;transition:opacity .7s ease,transform .7s cubic-bezier(.22,.61,.36,1)!important}
body.tf-motion-ready .site-header.tf-entered,body.tf-motion-ready .hero .eyebrow.tf-entered,body.tf-motion-ready .hero .hero-title-row.tf-entered,body.tf-motion-ready .hero .lede.tf-entered{opacity:1!important;transform:none!important}
@media(max-width:900px){.site-header .brand>span:first-child{font-size:26px!important}.lightbox-prev{left:9px!important}.lightbox-next{right:9px!important}}
@media(max-width:640px){.site-header .brand>span:first-child{font-size:22px!important}.hero-title-row h1{font-size:clamp(25px,6.2vw,33px)!important}.lightbox-prev{left:6px!important}.lightbox-next{right:6px!important}}
@media(prefers-reduced-motion:reduce){body.tf-motion-ready .reveal:not(.in-view),body.tf-motion-ready .site-header,body.tf-motion-ready .hero .eyebrow,body.tf-motion-ready .hero .hero-title-row,body.tf-motion-ready .hero .lede{opacity:1!important;transform:none!important;transition:none!important}}

.lightbox-prev{left:var(--tf-prev,12px)!important}.lightbox-next{right:var(--tf-next,12px)!important}

/* V0.5: optical baseline alignment from the supplied header reference. */
.site-header{align-items:flex-end!important;padding-bottom:15px!important}
.site-header .brand{align-items:baseline!important;gap:9px!important;line-height:1!important}
.site-header .brand>span:first-child{font-size:36px!important;line-height:1!important}
.site-header .brand i{align-self:flex-end!important;flex:0 0 5px!important;margin-bottom:2px!important}
.site-header .brand .brand-subtitle{line-height:1!important}
.site-header .header-actions{align-items:flex-end!important;gap:20px!important}
.site-header .main-nav{align-items:baseline!important;gap:22px!important;line-height:1!important}
.site-header .main-nav a{line-height:1!important}
.site-header .lang-switch{align-items:flex-end!important;line-height:1!important}
.site-header .lang-btn{display:flex!important;align-items:flex-end!important;justify-content:center!important;height:16px!important;padding:0!important;line-height:1!important}
.site-header .lang-flag{display:block!important;vertical-align:bottom!important}
.related-title-square{display:inline-block;width:5px;height:5px;margin:0 8px 2px;background:#f2f3f4;vertical-align:baseline}
@media(max-width:900px){.site-header .brand>span:first-child{font-size:29px!important}}
@media(max-width:640px){.site-header{padding-bottom:11px!important}.site-header .brand>span:first-child{font-size:24px!important}.site-header .brand .brand-subtitle{font-size:10px!important}.site-header .header-actions{gap:8px!important}.related-title-square{margin-inline:6px}}

/* V0.6: align the visible letter bases to the flag baseline in the reference. */
.site-header .brand>span:first-child{position:relative;top:5px;font-weight:450!important}
.site-header .brand .brand-descriptor{display:inline-flex!important;align-items:center!important;gap:9px!important;position:relative;top:3px;line-height:1!important;white-space:nowrap}
.site-header .brand .brand-descriptor i{display:block!important;align-self:center!important;flex:0 0 5px!important;margin:0!important;border-radius:0!important}
.site-header .brand .brand-descriptor .brand-subtitle{display:inline!important;line-height:1!important}
.site-header .main-nav{position:relative;top:2px}
/* Flags retain their reference position. */
.hero-title-row h1{font-size:clamp(27px,2.45vw,35px)!important}
@media(max-width:900px){.site-header .brand>span:first-child{top:4px}.site-header .brand .brand-descriptor{top:2px}.site-header .main-nav{top:0}}
@media(max-width:640px){.site-header .brand>span:first-child{top:3px}.site-header .brand .brand-descriptor{top:2px;gap:6px!important}.hero-title-row h1{font-size:clamp(24px,5.8vw,30px)!important}}

.hero-preview:hover .play-pill,.hero-preview:focus-visible .play-pill{background:var(--accent,#b7ff31)!important;border-color:var(--accent,#b7ff31)!important}
.hero-preview:hover .play-triangle,.hero-preview:focus-visible .play-triangle{border-left-color:#0b0d0f}
/* Up to five images share the available width and expand on hover. */
.gallery-track[data-adaptive] .gallery-card,.gallery-track[data-adaptive]:hover .gallery-card:hover{flex:1 1 0!important;transition:flex-grow .38s cubic-bezier(.22,.61,.36,1),filter .3s ease!important}
.gallery-track[data-adaptive]:hover .gallery-card:hover{flex-grow:1.8!important}
.gallery-controls[hidden],.gallery-section[hidden]{display:none!important}
.gallery-card,.hero-preview,.project-preview,.rf-wide-frame{overflow:hidden}
@media(prefers-reduced-motion:reduce){.gallery-track[data-adaptive] .gallery-card{transition:none!important}}
