/* Equipment, production stories and photographic motion. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.equipment-grid{list-style:none;padding:0;margin:0 0 23px;display:grid;grid-template-columns:1fr 1fr;gap:13px}
.equipment-card{border:1px solid #c8cdc4;padding:23px 20px;display:flex;flex-direction:column;align-items:flex-start;gap:20px;min-height:170px;transition:border-color .3s,background .3s}
.equipment-art{height:57px;width:57px;display:grid;place-items:center;background:#e7e8dd;transition:background .3s,transform .4s var(--ease)}
.equipment-icon{width:45px!important;height:45px!important;flex-shrink:0;color:var(--ink)}
.equipment-card>span:last-child{font-size:13px;line-height:1.55;max-width:235px}
.equipment-card:hover{border-color:var(--ink);background:#eeefe6}
.equipment-card:hover .equipment-art{background:var(--yellow);transform:translateY(-3px)}
.detail-info>div:nth-child(2){padding-top:40px}
.service-reel-section{padding-top:90px;margin-top:67px;border-top:1px solid var(--dark-line)}
.service-reel-section .section-heading>p{font-size:13px}
.service-card{transition:transform .5s var(--ease),border-color .4s;isolation:isolate}
.service-card>img{transition:transform 1.15s var(--ease);filter:grayscale(1) brightness(.7)}
.service-card:hover>img,.service-card:focus-visible>img{transform:scale(1.06);filter:grayscale(1) brightness(.7)}
.service-card>img.image-colour{z-index:0;filter:grayscale(0) brightness(.88);clip-path:inset(0 100% 0 0);transition:clip-path .8s var(--ease),transform 1.15s var(--ease);pointer-events:none}
.service-card:hover>img.image-colour,.service-card:focus-visible>img.image-colour{clip-path:inset(0);filter:grayscale(0) brightness(.88)}
.service-card:hover,.service-card:focus-visible{border-color:#d8d949;transform:translateY(-4px)}
.service-card .round-arrow{transition:background .3s,color .3s,transform .4s var(--ease)}
.service-card:hover .round-arrow,.service-card:focus-visible .round-arrow{background:var(--yellow);border-color:var(--yellow);color:var(--ink);transform:translateX(3px)}
.header-cta svg,.button svg,.text-link svg{transition:transform .3s var(--ease)}
.header-cta:hover svg,.button:hover svg,.text-link:hover svg{transform:translateX(3px)}
.form-actions #form-back:hover svg{transform:rotate(180deg) translateX(3px)}
.gallery-tile>img{filter:grayscale(1) brightness(.88);transition:filter .9s var(--ease),transform 1.2s var(--ease)}
.gallery-tile:hover>img,.gallery-tile:focus-visible>img{filter:grayscale(0) brightness(1);transform:scale(1.055)}
.gallery-tile .round-arrow{transition:background .3s,color .3s,transform .3s}
.gallery-tile:hover .round-arrow,.gallery-tile:focus-visible .round-arrow{background:var(--yellow);border-color:var(--yellow);color:var(--ink);transform:translateX(2px)}
.detail-photo,.event-story-image,.event-panel-image{overflow:hidden}
.detail-photo img,.event-story-image img{transition:transform 1.3s var(--ease),filter .8s;filter:saturate(.6)}
.detail-photo:hover img,.event-story-image:hover img{transform:scale(1.04);filter:saturate(1)}
.event-panel:not([hidden]) .event-panel-image img{animation:image-settle .9s var(--ease) both}
.has-entered{animation:frame-enter .8s var(--ease) both}
.service-grid .has-entered:nth-child(3n+2),.equipment-grid .has-entered:nth-child(2n){animation-delay:.07s}
.service-grid .has-entered:nth-child(3n+3){animation-delay:.14s}
@keyframes frame-enter{from{opacity:.25;translate:0 24px}to{opacity:1;translate:0 0}}
@keyframes image-settle{from{opacity:.35;transform:scale(1.065)}to{opacity:1;transform:scale(1)}}
/* Three frames tell one production story. */
.project-feature{background:#1c2729}
.project-feature .section-heading{margin-bottom:55px}
.story-intro{max-width:295px;padding-bottom:4px}
.story-intro>p{font-size:21px;line-height:1.35;margin:14px 0 0;letter-spacing:-.02em}
.concept-label{display:inline-flex;font-size:8px;line-height:1.4;letter-spacing:.12em;border:1px solid #6d7670;padding:6px 9px;color:#c9d2c6;white-space:nowrap}
.story-triptych{display:grid;grid-template-columns:1.16fr 1fr 1fr;gap:27px;align-items:start}
.story-chapter{min-width:0}
.story-chapter:nth-child(2){padding-top:58px}
.story-chapter:nth-child(3){padding-top:22px}
.chapter-topline{display:flex;gap:15px;align-items:center;padding-bottom:17px;border-bottom:1px solid var(--line);margin-bottom:18px}
.chapter-topline>span{font-size:10px;color:var(--yellow);font-variant-numeric:tabular-nums}
.chapter-topline>h3{font-size:12px;margin:0;letter-spacing:.06em;text-transform:uppercase;font-weight:400}
.story-frame{overflow:hidden}
.story-frame .gallery-tile{aspect-ratio:1.02}
.story-chapter:first-child .gallery-tile{aspect-ratio:.99}
.story-frame .gallery-overlay{padding:55px 20px 20px}
.story-frame .gallery-overlay strong{font-size:15px;line-height:1.3;max-width:225px}
.story-frame .gallery-overlay small{display:none}
.story-frame .round-arrow{width:30px;height:30px}
.story-frame .round-arrow svg{width:17px;height:17px}
.story-chapter h4{font-size:21px;line-height:1.3;letter-spacing:-.02em;margin:24px 0 14px}
.story-chapter>p{font-size:13px;line-height:1.85;color:#bac4c0;margin:0}
.story-end{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding-top:25px;margin-top:42px}
.story-end>p{font-size:10px;color:#a9b4b0;margin:0;line-height:1.7}
.story-end .text-link{font-size:12px;flex-shrink:0}
.projects-index{padding-top:10px}
.project-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.project-card{display:block;border-bottom:1px solid var(--line);padding-bottom:25px}
.project-card-image{position:relative;overflow:hidden;aspect-ratio:.94}
.project-card-image>img{height:100%;width:100%;object-fit:cover;filter:grayscale(1) brightness(.8);transition:filter .8s,transform 1.2s var(--ease)}
.project-card:hover img,.project-card:focus-visible img{filter:grayscale(0);transform:scale(1.05)}
.project-card-image>.concept-label{position:absolute;top:19px;left:18px;background:#111a1cd9;border-color:#849389;color:#f3f2ec;font-size:7px}
.project-card-count{position:absolute;bottom:0;left:0;right:0;padding:50px 18px 17px;font-size:7px;letter-spacing:.06em;background:linear-gradient(transparent,#000b)}
.project-card-copy{padding-top:24px}
.project-card-copy>span:first-child{font-size:9px;letter-spacing:.11em;color:var(--yellow)}
.project-card-copy h3{font-size:30px;margin:16px 0 26px;max-width:320px;line-height:1.15}
.project-card-copy .text-link{font-size:12px;color:#d4dcda}
.project-intro{padding:29px 0 10px}
.project-intro>.container>.breadcrumbs{margin-bottom:60px}
.project-intro-top{display:flex;align-items:center;gap:20px;margin-bottom:30px}
.project-intro-top>.eyebrow{margin:0;font-size:10px;color:var(--yellow)}
.project-intro h1{max-width:1050px;font-size:clamp(56px,7.2vw,104px);line-height:1.02}
.project-intro .lead{max-width:690px;font-size:18px;line-height:1.75;color:var(--muted);margin-bottom:10px}
.project-detail-story{padding-top:45px}
.project-outcomes{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}
.project-outcomes article{padding-top:22px;border-top:1px solid var(--dark-line)}
.project-outcomes article>span{font-size:10px;color:#67716e}
.project-outcomes h3{font-size:25px;margin:30px 0 15px}
.project-outcomes p{font-size:15px;color:#5b6761;max-width:275px;margin:0;line-height:1.75}
.project-toolkit{margin-top:70px;border-top:1px solid var(--dark-line);padding-top:40px}
.project-toolkit .eyebrow{font-size:10px}
.toolkit-links{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.toolkit-links>a{display:flex;align-items:center;flex-wrap:wrap;gap:20px;padding:24px 19px;border:1px solid #c8cdc4;transition:background .3s,border-color .3s}
.toolkit-links>a>.equipment-icon{width:39px!important;height:39px!important;flex-basis:100%;margin-right:auto}
.toolkit-links>a>span{font-size:12px;line-height:1.4;max-width:calc(100% - 37px)}
.toolkit-links>a>svg:last-child{margin-left:auto;width:17px;height:17px}
.toolkit-links>a:hover{background:var(--yellow);border-color:var(--yellow)}
.toolkit-links>a:focus-visible{outline-color:#536000}
/* Native scrolling, a peek at the next frame, and clear playback controls. */
.photo-reel{--reel-gap:24px;position:relative;min-width:0}
.reel-viewport{width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#7b847a transparent;overscroll-behavior-x:contain;scroll-behavior:auto;scroll-snap-type:x mandatory;padding-bottom:12px;touch-action:pan-x pan-y;cursor:grab}
.reel-viewport::-webkit-scrollbar{height:3px}
.reel-viewport::-webkit-scrollbar-thumb{background:#7b847a}
.reel-viewport:focus-visible{outline:2px solid var(--yellow);outline-offset:6px}
.light-section .reel-viewport:focus-visible{outline-color:#596000}
.reel-viewport.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.reel-viewport.is-dragging .gallery-tile{cursor:grabbing}
.reel-track{display:flex;gap:var(--reel-gap);align-items:stretch}
.reel-slide{flex:0 0 calc((100% - 96px) / 3);min-width:0;scroll-snap-align:start;scroll-snap-stop:always}
.reel-slide>.gallery-tile{height:100%;width:100%;aspect-ratio:.95}
.reel-slide img{user-select:none;-webkit-user-drag:none;pointer-events:none}
.reel-slide .gallery-overlay{padding:55px 22px 24px}
.reel-slide .gallery-overlay strong{font-size:19px;line-height:1.3}
.reel-slide .gallery-overlay small{font-size:9px;letter-spacing:.05em;margin-bottom:9px}
.reel-slide .round-arrow{display:grid;width:32px;height:32px}
.reel-slide .round-arrow svg{width:17px;height:17px}
.reel-slide.is-current .gallery-tile>img{filter:grayscale(0) brightness(.96);transform:scale(1.035)}
.reel-slide.is-current .gallery-tile:hover>img{transform:scale(1.065)}
.reel-slide.is-current .gallery-overlay>span:first-child{transform:translateY(-3px)}
.reel-slide .gallery-overlay>span:first-child{transition:transform .9s var(--ease)}
.reel-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:25px}
.reel-meta{display:flex;align-items:center;gap:26px}
.reel-index{font-size:12px;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.reel-index strong{font-weight:400;color:var(--yellow)}
.reel-index>span{color:#89948f}
.reel-hint{font-size:10px;color:#aab7af;padding-left:25px;border-left:1px solid var(--line)}
.reel-controls{display:flex;gap:9px;align-items:center}
.reel-controls button{display:flex;align-items:center;justify-content:center;border:1px solid #697a73;background:none;color:var(--paper);height:43px;min-width:46px;transition:background .25s,color .25s,border-color .25s}
.reel-controls button:hover{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}
.reel-prev svg{transform:rotate(180deg)}
.reel-controls .reel-toggle{gap:10px;font-size:10px;margin-right:12px;padding:0 13px;border-color:transparent;min-width:88px}
.reel-controls .reel-toggle:hover{background:#293632;color:var(--paper)}
.reel-controls .reel-toggle:disabled{cursor:default;opacity:.6}
.playback-icon{width:10px;height:11px;border-left:3px solid currentColor;border-right:3px solid currentColor;display:inline-block}
.reel-toggle[aria-pressed=true] .playback-icon{border:0;border-left:8px solid currentColor;border-top:5px solid transparent;border-bottom:5px solid transparent;height:0;width:0}
.light-section .reel-index strong{color:var(--ink)}
.light-section .reel-index>span,.light-section .reel-hint{color:#637167}
.light-section .reel-hint{border-color:var(--dark-line)}
.light-section .reel-controls button{color:var(--ink);border-color:#b6bfb3}
.light-section .reel-controls .reel-toggle{border-color:transparent}
.light-section .reel-controls .reel-toggle:hover{background:#e1e5d8;color:var(--ink)}
.light-section .reel-controls button:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.light-section .reel-controls button:focus-visible{outline-color:#596000}
.gallery-browser-heading{padding-top:76px;margin-top:55px;border-top:1px solid var(--line)}
.gallery-browser-heading .eyebrow{font-size:10px;color:var(--yellow);margin-bottom:18px}
.gallery-browser-heading h2{font-size:42px;margin-bottom:36px}
.lightbox>img{transition:opacity .25s,transform .4s var(--ease)}
.lightbox>img.is-changing{opacity:.2;transform:scale(.985)}
@media(max-width:1150px){.equipment-card{min-height:158px;padding:20px 16px;gap:15px}.equipment-card>span:last-child{font-size:12px}.story-triptych{gap:22px}.story-chapter h4{font-size:20px}.story-frame .gallery-overlay{padding:45px 17px 18px}.story-frame .gallery-overlay strong{font-size:13px}.reel-slide .gallery-overlay{padding:45px 18px 20px}.reel-slide .gallery-overlay strong{font-size:16px}.reel-slide .round-arrow{width:27px;height:27px}.story-intro{max-width:255px}.story-intro>p{font-size:19px}.project-cards{gap:23px}.project-card-copy h3{font-size:26px}.toolkit-links{gap:12px}.toolkit-links>a{padding:20px 15px;gap:15px}.toolkit-links>a>span{font-size:11px}}
@media(max-width:900px){.equipment-grid{gap:10px}.equipment-card{padding:18px 14px;min-height:163px;gap:16px}.equipment-card>span:last-child{font-size:12px}.equipment-art{height:49px;width:49px}.equipment-icon{width:38px!important;height:38px!important}.detail-info>div:nth-child(2){padding-top:36px}.service-reel-section{padding-top:65px;margin-top:45px}.photo-reel{--reel-gap:20px}.reel-slide{flex-basis:calc((100% - 65px)/2)}.reel-slide>.gallery-tile{aspect-ratio:1}.reel-slide .gallery-overlay strong{font-size:18px}.reel-slide .round-arrow{display:grid}.project-feature .section-heading{margin-bottom:38px}.project-feature .section-heading h2{font-size:38px}.story-triptych{gap:18px;grid-template-columns:1fr 1fr 1fr}.story-chapter:nth-child(2){padding-top:38px}.story-chapter:nth-child(3){padding-top:15px}.story-frame .gallery-tile,.story-chapter:first-child .gallery-tile{aspect-ratio:.78}.story-frame .gallery-overlay{padding:30px 13px 14px}.story-frame .gallery-overlay strong{font-size:12px}.story-frame .round-arrow{display:none}.chapter-topline{gap:10px}.chapter-topline h3{font-size:10px}.story-chapter h4{font-size:19px;margin-top:20px}.story-chapter>p{font-size:12px;line-height:1.8}.story-intro{max-width:210px}.story-intro>p{font-size:17px}.concept-label{font-size:7px}.story-end{gap:24px;align-items:flex-start}.story-end>p{max-width:300px;font-size:9px}.story-end .text-link{font-size:11px}.project-cards{grid-template-columns:1fr;gap:40px}.project-card{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;padding-bottom:36px;align-items:center}.project-card-image{aspect-ratio:1.12}.project-card-copy{padding:0}.project-card-copy h3{font-size:32px}.project-intro-top{gap:18px}.project-intro h1{font-size:65px}.project-intro .lead{font-size:17px}.project-outcomes{gap:25px}.project-outcomes h3{font-size:22px}.project-outcomes p{font-size:14px}.toolkit-links{grid-template-columns:repeat(2,1fr);gap:15px}.toolkit-links>a{flex-wrap:nowrap;gap:18px;padding:20px}.toolkit-links>a>.equipment-icon{flex-basis:auto;margin:0}.toolkit-links>a>span{font-size:12px}.gallery-browser-heading{padding-top:57px;margin-top:40px}}
@media(max-width:600px){.equipment-grid{gap:12px}.equipment-card{min-height:162px;padding:19px 16px;gap:17px}.equipment-card>span:last-child{font-size:12px}.equipment-art{height:54px;width:54px}.equipment-icon{width:43px!important;height:43px!important}.detail-info>div:nth-child(2){padding:0}.service-reel-section{margin-top:35px;padding-top:47px}.service-reel-section .section-heading>p{font-size:12px;max-width:310px}.service-reel-section h2{font-size:33px}.project-feature .section-heading h2{font-size:36px}.story-intro{margin-top:26px;max-width:100%}.story-intro>p{font-size:20px;margin-top:12px;max-width:285px}.concept-label{font-size:7px}.story-triptych{grid-template-columns:1fr;gap:35px}.story-chapter:nth-child(2),.story-chapter:nth-child(3){padding:0}.chapter-topline{padding-bottom:13px;margin-bottom:16px;gap:14px}.chapter-topline h3{font-size:11px}.chapter-topline>span{font-size:9px}.story-frame .gallery-tile,.story-chapter:first-child .gallery-tile{aspect-ratio:1.25}.story-frame .gallery-overlay{padding:50px 19px 20px}.story-frame .gallery-overlay strong{font-size:17px;max-width:260px}.story-frame .round-arrow{display:grid}.story-chapter h4{font-size:23px;margin:21px 0 12px}.story-chapter>p{font-size:14px;line-height:1.8}.story-end{display:block;margin-top:32px;padding-top:22px}.story-end>p{font-size:10px;max-width:100%;margin-bottom:12px}.story-end .text-link{font-size:12px}.photo-reel{--reel-gap:15px}.reel-slide{flex-basis:calc(100% - 48px)}.reel-slide>.gallery-tile{aspect-ratio:.99}.reel-slide .gallery-overlay{padding:55px 20px 21px}.reel-slide .gallery-overlay strong{font-size:18px;max-width:200px}.reel-slide .gallery-overlay small{font-size:9px}.reel-slide .round-arrow{display:grid;width:29px;height:29px}.reel-slide .round-arrow svg{width:16px;height:16px}.reel-footer{margin-top:17px;gap:14px;flex-wrap:wrap}.reel-meta{gap:10px}.reel-index{font-size:11px}.reel-hint{display:none}.reel-controls{gap:7px}.reel-controls button{height:40px;min-width:41px}.reel-controls .reel-toggle{font-size:9px;min-width:72px;margin-right:4px;padding:0 9px;gap:8px}.playback-icon{height:10px;width:9px}.reel-controls button svg{width:20px;height:20px}.project-card{grid-template-columns:1fr;gap:23px;padding-bottom:30px}.project-card-image{aspect-ratio:1.18}.project-card-copy h3{font-size:30px;max-width:330px;margin-top:15px;margin-bottom:19px}.project-card-copy>span:first-child{font-size:8px}.project-card-image>.concept-label{top:16px;left:16px}.project-card-count{font-size:7px;padding:40px 16px 16px}.project-card-copy .text-link{font-size:12px}.projects-index{padding-top:0}.project-intro{padding-top:21px}.project-intro>.container>.breadcrumbs{font-size:8px;margin-bottom:39px;gap:8px}.project-intro-top{align-items:flex-start;flex-direction:column;gap:15px;margin-bottom:26px}.project-intro-top>.eyebrow{font-size:9px}.project-intro h1{font-size:50px;line-height:1.05;margin-bottom:24px}.project-intro .lead{font-size:15px;line-height:1.8}.project-detail-story{padding-top:32px}.project-outcomes{grid-template-columns:1fr;gap:27px}.project-outcomes article{padding-top:18px}.project-outcomes h3{font-size:25px;margin-top:17px;margin-bottom:11px}.project-outcomes p{font-size:14px;max-width:300px}.project-toolkit{margin-top:40px;padding-top:28px}.project-toolkit .eyebrow{font-size:8px}.toolkit-links{gap:11px}.toolkit-links>a{flex-wrap:wrap;padding:18px 14px;gap:14px}.toolkit-links>a>.equipment-icon{flex-basis:100%;width:36px!important;height:36px!important}.toolkit-links>a>span{font-size:11px;max-width:calc(100% - 30px)}.toolkit-links>a>svg:last-child{width:15px;height:15px}.gallery-browser-heading{padding-top:45px;margin-top:33px}.gallery-browser-heading h2{font-size:33px;margin-bottom:26px}.gallery-browser-heading .eyebrow{font-size:8px;margin-bottom:16px}}
@media(hover:none){.service-card .image-colour{clip-path:inset(0);filter:grayscale(.5) brightness(.8)}.service-card:hover{transform:none}.gallery-tile>img{filter:grayscale(.65) brightness(.95)}}
@media(prefers-reduced-motion:reduce){.has-entered,.event-panel:not([hidden]) .event-panel-image img{animation:none!important}.service-card:hover,.service-card:focus-visible{transform:none}.service-card>img,.gallery-tile>img,.reel-slide.is-current .gallery-tile>img,.detail-photo:hover img,.event-story-image:hover img{transform:none!important}.service-card>img.image-colour{clip-path:inset(0);filter:grayscale(.3) brightness(.8)}.reel-viewport{scroll-behavior:auto!important}.reel-slide .gallery-overlay>span:first-child{transform:none!important}}
