:root{--ink:#24263e;--paper:#fafafa;--white:#fff;--signal:#f9bf26;--muted:#59616d;--line:#dddfe4;--max:1240px;--sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:1rem;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit}img{display:block;max-width:100%}button{font:inherit}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{overflow-wrap:break-word}h1{font-size:clamp(2.8rem,6.5vw,6rem);line-height:1.12;letter-spacing:-.045em;margin-bottom:0}h2{font-size:clamp(2rem,3.8vw,3.6rem);line-height:1.18;letter-spacing:-.04em;margin-bottom:1.5rem}h3{font-size:1.65rem;line-height:1.25;letter-spacing:-.025em;margin-bottom:1rem}p:last-child{margin-bottom:0}.wrap{max-width:var(--max);margin-inline:auto;padding-inline:2rem}.section{padding-block:5rem}.section-tight{padding-top:1rem}.eyebrow{font-size:.875rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem}.skip{position:fixed;left:1rem;top:-5rem;z-index:100;padding:.75rem 1rem;background:#fff}.skip:focus{top:1rem}a:focus-visible,button:focus-visible{outline:3px solid #a76a00;outline-offset:5px}
header{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:2rem;background:white;padding:1rem max(2rem,calc((100vw - 1176px)/2))}.brand-image{position:relative;display:block;width:190px;height:94px;flex:0 0 190px;overflow:hidden}.brand-image img{position:absolute;width:263px;height:auto;max-width:none;left:-36px;top:-27px}nav{display:flex;align-items:center;gap:1.5rem}nav a{text-decoration:none;font-size:.9375rem;font-weight:650;white-space:nowrap}nav a:hover,nav a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--signal);text-decoration-thickness:3px;text-underline-offset:.6rem}nav .contact-link{padding:.7rem 1rem;border:1px solid var(--ink)}.menu{display:none;border:1px solid var(--ink);padding:.5rem .8rem;background:white}
.text-link{display:inline-flex;align-items:center;gap:.75rem;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor;margin-top:.75rem;padding-bottom:.15rem}.text-link:after{content:'↗';color:#926000}.showreel{padding-top:1.5rem}.film{margin:0 0 2.5rem}.video-frame{aspect-ratio:16/9;background:var(--ink);width:100%;position:relative}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.film figcaption{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.875rem;color:var(--muted);padding:.7rem 0}.film figcaption a{text-underline-offset:.2em}.hero{display:grid;grid-template-columns:1.4fr 1fr;gap:4rem;align-items:end;padding-block:2rem 4rem}.hero h1 .accent{text-decoration:underline;text-decoration-color:var(--signal);text-decoration-thickness:.055em;text-underline-offset:.15em}.hero-aside{max-width:480px;font-size:1.2rem;padding-bottom:.2rem}.hero-aside p{margin-bottom:1rem}.page-hero{padding-block:4.5rem 3.5rem}.page-hero h1{max-width:1050px}.lede{max-width:750px;font-size:1.2rem;margin-top:1.8rem;margin-bottom:0}.client-section{padding-block:2.5rem;border-block:1px solid var(--line)}.client-names{list-style:none;margin:1.75rem 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem}.client-names li{font-size:1.2rem;font-weight:750;line-height:1.4;align-self:center}.section-head{display:grid;grid-template-columns:1fr 2fr;gap:2rem;margin-bottom:2.5rem}.section-head h2{margin-bottom:0}.section-head .eyebrow{padding-top:.5rem}
.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem 1.5rem}.work-card{text-decoration:none;display:flex;flex-direction:column;min-width:0;background:white;border-bottom:1px solid var(--line)}.card-image,.card-cover{aspect-ratio:16/9;overflow:hidden;background:var(--ink)}.card-image img{height:100%;width:100%;object-fit:cover}.card-cover{display:flex;flex-direction:column;justify-content:space-between;padding:2rem;color:white}.card-cover span{font-size:.875rem;letter-spacing:.08em;text-transform:uppercase}.card-cover p{font-size:clamp(1.5rem,3vw,2.7rem);line-height:1.2;letter-spacing:-.04em;max-width:90%;margin:1rem 0 0}.text-card:nth-child(even) .card-cover{background:var(--signal);color:var(--ink)}.card-copy{padding:1.6rem}.card-copy .eyebrow{font-size:.875rem;margin-bottom:.6rem;color:var(--muted);letter-spacing:.06em}.card-copy h3{margin-bottom:.5rem}.card-copy>p:not(.eyebrow){color:var(--muted);margin-bottom:1rem}.card-action{font-weight:700;font-size:.9375rem}.card-action span{margin-left:.5rem}.work-card:hover h3{text-decoration:underline;text-underline-offset:.2em}.split{display:grid;grid-template-columns:1.2fr 1fr;gap:5rem}.split>div,.split>p{min-width:0}.split p{font-size:1.125rem}.statement{background:var(--ink);color:white;border-top:5px solid var(--signal);padding-block:4.5rem}.statement h2{margin-bottom:0}.statement .text-link:after{color:var(--signal)}.services-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:60px 1fr 1.2fr;gap:2rem;padding-block:2rem;border-bottom:1px solid var(--line)}.service-row p{color:var(--muted)}.service-row h3{font-size:1.5rem}.number{font-size:.875rem;font-weight:700}.service-row .text-link{font-size:.9375rem}.testimonial{background:#eeeef2;padding-block:4.5rem}.quote-wrap{max-width:970px}.testimonial blockquote{margin:1.5rem 0 2rem;font-size:clamp(1.5rem,3.3vw,2.7rem);line-height:1.4;letter-spacing:-.025em}.testimonial p{font-size:1rem}.mission-teaser{padding-block:4.5rem;display:grid;grid-template-columns:1.2fr 1fr;gap:5rem;align-items:center}.mission-teaser p{font-size:1.125rem}.mission-teaser .eyebrow{font-size:.875rem}
.project-body{max-width:1100px}.project-intro{display:grid;grid-template-columns:.7fr 1.5fr;gap:4rem;padding-block:1.5rem 3.5rem}.project-intro>div{min-width:0}.project-intro p{font-size:1.125rem}.project-intro .eyebrow{font-size:.875rem}.client-credit{font-weight:700}.credits{border-top:1px solid var(--line);padding-block:2.5rem}.credits h2{font-size:1.6rem}.credits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.credits-grid a{font-size:1.1rem;font-weight:750;text-underline-offset:.25em}.credits-grid p{font-size:1rem;margin:.5rem 0;color:var(--muted)}.credits-grid .credit-role{color:var(--ink);font-weight:600}.project-links{display:flex;gap:1rem 2rem;flex-wrap:wrap;padding-block:1rem 2rem}.project-links a{font-size:.9375rem}.back-link{padding-block:2.5rem 4rem}.series{border-top:1px solid var(--line);padding-top:3rem}.series-heading{margin-bottom:3rem}.series-item{display:grid;grid-template-columns:.9fr 1.2fr;gap:3rem;border-top:1px solid var(--line);padding-block:2rem}.series-item .film{margin-bottom:0}.series-item p{font-size:1.0625rem}.series-item .eyebrow{font-size:.875rem}.small-quote{margin:1rem 0 3rem;padding:2rem;border-left:4px solid var(--signal);background:#eeeef2;font-size:1.4rem;line-height:1.5}.small-quote cite{display:block;font-size:1rem;font-style:normal;margin-top:1rem}
.brand-family{padding-block:2rem 4rem;border-top:1px solid var(--line)}.brand-family>p:not(.eyebrow){max-width:720px;font-size:1.125rem}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:2rem}.two-column article{padding:2rem;background:#eeeef2}.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem 2rem}.person{background:white;min-width:0}.person-image{display:block;aspect-ratio:4/3;background:#e4e5eb;overflow:hidden}.person-image img{height:100%;width:100%;object-fit:cover;object-position:center 20%;filter:grayscale(1)}.person-copy{padding:1.6rem}.person-copy h2{font-size:1.75rem;margin-bottom:.35rem}.person-copy h2 a{text-decoration:none}.person-copy .role{font-weight:650;margin-bottom:1rem;color:var(--ink)}.person-copy>p{color:var(--muted)}.profile{display:grid;grid-template-columns:1fr 1.25fr;gap:4rem;padding-block:4rem}.profile h1{font-size:clamp(2.5rem,5vw,4.5rem)}.profile-image{background:#e4e5eb;align-self:start}.profile-image img{width:100%}.profile-lede{font-size:1.2rem;margin-top:2rem}.focus{font-size:.9375rem;border-top:1px solid var(--line);padding-top:1.2rem;margin-top:1.5rem}.mission-impact{background:var(--signal);padding-block:3.5rem}.impact-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;margin-top:2rem}.impact-grid strong{display:block;font-size:clamp(3.5rem,7vw,6rem);line-height:1.1;letter-spacing:-.04em;margin-bottom:1rem}.impact-grid p{max-width:430px;font-size:1.2rem}.impact-date{font-size:.875rem;margin-top:2rem}.mission-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem}.mission-pillars article{padding-top:1.5rem;border-top:1px solid var(--line)}.mission-example{padding-block:0 4rem}.mission-example>p:not(.eyebrow){max-width:800px;font-size:1.125rem}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.contact-grid>div{min-width:0}.contact-grid>div>p{font-size:1.125rem}.contact-card{padding:2rem;background:var(--ink);color:white}.contact-card>a,.contact-card p>a{font-size:1.25rem;color:var(--signal);overflow-wrap:anywhere}.contact-card .eyebrow{color:var(--signal)}.contact-card address{font-style:normal;margin-block:2rem}.contact-socials{margin-top:2rem}.contact-socials .text-link{margin-right:1.5rem}
footer{background:var(--ink);color:white;padding-block:4rem 2rem}.footer-lead{border-bottom:1px solid #53566a;padding-bottom:2.5rem}.footer-lead .eyebrow{color:var(--signal)}.footer-lead>a{text-decoration:none;font-size:clamp(3rem,7vw,6rem);line-height:1.15;font-weight:750;letter-spacing:-.04em}.footer-grid{display:grid;grid-template-columns:1.2fr 1.3fr 1.2fr .8fr;gap:2rem;padding-block:3rem}.footer-grid>div{min-width:0}.footer-grid p,.footer-grid a{color:#c5c8d2}.footer-grid a{overflow-wrap:anywhere;text-underline-offset:.25em}.footer-grid strong{font-size:1rem}.footer-links{display:flex;flex-direction:column;gap:.5rem}.footer-socials{display:flex;flex-wrap:wrap;gap:1rem 2rem;border-top:1px solid #53566a;padding-block:1.5rem}.footer-socials a{color:white;font-size:.9375rem;text-underline-offset:.25em}.copyright{font-size:.875rem;color:#c5c8d2;margin:0}
@media(max-width:1050px){header{gap:1rem;padding-inline:1.25rem}nav{gap:1rem}nav a{font-size:.875rem}.brand-image{width:168px;height:84px;flex-basis:168px}.brand-image img{width:232px;left:-32px;top:-24px}.hero{gap:2.5rem}.split,.mission-teaser{gap:3rem}.footer-grid{grid-template-columns:1fr 1fr}.profile{gap:2.5rem}.series-item{grid-template-columns:1fr;gap:1rem}}
@media(max-width:900px){.menu{display:block}nav{position:absolute;left:1rem;right:1rem;top:7rem;display:none;padding:1.5rem;flex-direction:column;align-items:stretch;gap:1.25rem;background:white;border:1px solid var(--line);box-shadow:0 12px 35px #24263e15}nav.open{display:flex}nav a{font-size:1rem}.hero{grid-template-columns:1fr;gap:2rem}.hero-aside{max-width:650px}.split,.mission-teaser,.project-intro,.profile,.contact-grid{grid-template-columns:1fr;gap:2rem}.profile-image{max-width:480px}.client-names{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head{grid-template-columns:1fr;gap:.5rem}.section-head .eyebrow{padding:0}.credits-grid,.mission-pillars{grid-template-columns:1fr;gap:1.5rem}.service-row{grid-template-columns:35px 1fr;gap:1rem}.service-row>div{grid-column:2}.service-row h3{margin-bottom:0}.service-row p{margin-top:0}.statement h2{margin-bottom:0}}
@media(max-width:600px){.wrap{padding-inline:1.25rem}.page-hero{padding-block:3rem 2.5rem}h1{font-size:clamp(2.5rem,10.5vw,3.6rem)}h2{font-size:2rem}.section{padding-block:3rem}.section-tight{padding-top:0}.showreel{padding-top:1rem}.hero{padding-block:1rem 3rem}.work-grid,.team-grid,.two-column,.impact-grid{grid-template-columns:1fr}.card-cover p{font-size:2rem}.card-cover{padding:1.5rem}.card-copy{padding:1.25rem}.client-names{gap:1.5rem 1rem}.client-names li{font-size:1rem}.eyebrow{font-size:.875rem;letter-spacing:.06em}.statement,.testimonial{padding-block:3rem}.mission-teaser{padding-block:3rem}.film{margin-bottom:1.5rem}.project-intro{padding-bottom:2.5rem}.person-copy{padding:1.25rem}.profile{padding-block:2rem 3rem}.profile-image{max-width:100%}.contact-card{padding:1.5rem}.two-column article{padding:1.5rem}.mission-impact{padding-block:3rem}.impact-grid{gap:2rem}.footer-grid{grid-template-columns:1fr;gap:1.5rem}footer{padding-top:3rem}.small-quote{padding:1.5rem;font-size:1.2rem}.project-links{flex-direction:column;align-items:flex-start}.text-link{max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* V5 client logo strip */
.client-banner{overflow:hidden;margin-top:1.5rem;background:#fff;padding-block:1rem}.client-scroll{display:flex;width:max-content;animation:client-travel var(--client-duration,33.6s) linear infinite}.client-track{display:flex;align-items:center;list-style:none;gap:3.5rem;padding:0 3.5rem 0 0;margin:0;flex-shrink:0}.client-track li{width:170px;height:112px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:1.15rem;font-weight:700;line-height:1.3}.client-track img{max-width:160px;max-height:100px;width:auto;height:auto;object-fit:contain}.client-scroll.paused,.client-banner:hover .client-scroll{animation-play-state:paused}.banner-toggle{display:block;margin:.75rem 0 0 auto;border:0;border-bottom:1px solid var(--muted);padding:.25rem 0;background:none;color:var(--muted);font-size:.875rem;cursor:pointer}.footer-lead>a{font-size:clamp(2.2rem,6vw,5rem);overflow-wrap:break-word}.profile .eyebrow{letter-spacing:.05em}.card-image img{transition:transform .3s}.work-card:hover .card-image img{transform:scale(1.025)}
@keyframes client-travel{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.client-scroll{animation:none}.client-banner{overflow-x:auto}.client-track[aria-hidden=true],.banner-toggle{display:none}.card-image img{transition:none}}

/* Live Version 2.0 refinements */
[hidden]{display:none!important}
.context-heading{font-size:1rem;line-height:1.5;margin:0 0 .55rem;letter-spacing:0}
.project-intro .context-heading:not(:first-child){margin-top:1.65rem}
.project-format{color:var(--muted);font-size:.9375rem!important}
.project-films{border-top:1px solid var(--line);padding-top:2.5rem}
.project-next{padding-block:3rem 4rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-end;gap:2rem}
.project-next h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:1rem}
.project-next>div{max-width:650px}
.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem}
.process-grid article{border-top:3px solid var(--signal);padding-top:1rem}
.process-grid article>span{font-size:.875rem;font-weight:700;color:var(--muted)}
.process-grid h3{margin:1rem 0 .75rem;font-size:1.4rem}
.process-grid p{color:var(--muted)}
.production-process>.text-link{margin-top:2rem}
.analytics-settings{padding-top:1rem}
.text-button{border:0;padding:0 0 .2rem;background:none;color:inherit;font-size:.875rem;border-bottom:1px solid currentColor;cursor:pointer}
.analytics-notice{position:fixed;inset:auto 1rem 1rem;z-index:100;max-width:1160px;margin-inline:auto;background:#fff;color:var(--ink);border:1px solid var(--line);border-top:4px solid var(--signal);box-shadow:0 6px 40px #24263e25;padding:1.5rem;display:flex;align-items:center;gap:2rem}
.analytics-notice strong{font-size:1rem}
.analytics-notice p{font-size:.9375rem;margin:.5rem 0 0;max-width:720px}
.analytics-actions{display:flex;flex-wrap:wrap;gap:.75rem;flex-shrink:0;max-width:280px}
.analytics-actions button{border:1px solid var(--ink);background:#fff;color:var(--ink);padding:.7rem 1rem;font-weight:600;font-size:.9375rem;cursor:pointer;width:100%}
.analytics-actions button:hover{background:var(--signal)}
#showreel,#our-process{scroll-margin-top:2rem}
.hero + .showreel{padding-top:0}
.contact-grid{align-items:start}
.contact-grid .contact-card{margin-top:2rem}
.enquiry-form{background:#fff;border-top:4px solid var(--signal);padding:2rem;min-width:0}
.enquiry-form h2{font-size:1.8rem;margin-bottom:.5rem}
.enquiry-form>p:not(.form-status){font-size:.875rem;color:var(--muted)}
.enquiry-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin-top:1.5rem}
.enquiry-fields>div{min-width:0}.enquiry-fields .field-wide{grid-column:1/-1}
.enquiry-form label{display:block;font-size:.9375rem;font-weight:650;margin-bottom:.4rem}
.enquiry-form label span{font-weight:400;color:var(--muted)}
.enquiry-form input:not([type=hidden]),.enquiry-form textarea{display:block;width:100%;min-width:0;border:1px solid #a9abb4;border-radius:0;background:var(--paper);color:var(--ink);font:inherit;padding:.7rem .8rem}
.enquiry-form input:focus-visible,.enquiry-form textarea:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-color:var(--ink)}
.enquiry-form textarea{resize:vertical;min-height:180px}
.enquiry-form .form-honey{display:none!important}
.enquiry-form .field-hint{font-size:.8125rem;color:var(--muted);margin:.5rem 0 0}
.form-privacy{margin:1.25rem 0}.form-privacy a,.form-alternative a{text-underline-offset:.2em}
.enquiry-submit{display:flex;align-items:center;justify-content:space-between;gap:2rem;border:1px solid var(--ink);background:var(--signal);color:var(--ink);padding:.85rem 1.2rem;font-weight:700;cursor:pointer;min-height:48px}
.enquiry-submit:hover{background:var(--ink);color:#fff}.enquiry-submit:disabled{opacity:.7;cursor:default}
.form-status{margin:1.25rem 0 0;padding:1rem;border-left:3px solid var(--signal);background:#f5f4ed;font-size:.9375rem;overflow-wrap:anywhere}
.form-status[data-state=error]{border-color:#9b352a;background:#fff4f1}.form-alternative{margin-top:1rem;overflow-wrap:anywhere}
@media(max-width:600px){.enquiry-form{padding:1.5rem 1.25rem}.enquiry-fields{grid-template-columns:1fr}.enquiry-submit{width:100%}}
@media(max-width:900px){html:not(.js) header{flex-wrap:wrap}html:not(.js) nav{display:flex;position:static;flex-basis:100%;box-shadow:none;border:0;padding:.75rem 0}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-notice{display:block;max-height:75vh;overflow:auto}.analytics-actions{margin-top:1rem;max-width:none}.analytics-actions button{width:auto}}
@media(max-width:600px){.project-next{align-items:flex-start;flex-direction:column}.process-grid{grid-template-columns:1fr;gap:1.5rem}.project-films{padding-top:1.5rem}.analytics-notice{inset:auto .5rem .5rem;padding:1rem}.analytics-actions{display:grid;grid-template-columns:1fr}}
@media print{.menu,.banner-toggle,.analytics-notice,.analytics-settings{display:none!important}.client-scroll{animation:none}}

/* Supplied client artwork retains its original colours and aspect ratio. */
.client-track .client-logo-dark{overflow:hidden;background:#231f1c}
.client-track .client-logo-dark img{width:170px;height:170px;max-width:none;max-height:none;flex-shrink:0;transform:translateY(-26px)}
.card-image-logo{display:flex;align-items:center;justify-content:center;background:#fff;border-bottom:1px solid var(--line);padding:2rem}
.card-image-logo img{height:auto;width:100%;max-height:100%;object-fit:contain}
.project-brand{margin:0 0 3rem;min-height:200px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);padding:clamp(2rem,6vw,5rem)}
.project-brand img{display:block;width:min(100%,640px);height:auto}

.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-bottom:3rem}
.project-gallery figure{margin:0;min-width:0}
.project-gallery img{display:block;width:100%;height:auto}
.project-gallery figcaption{margin-top:.75rem;color:var(--muted);font-size:.875rem}
@media(max-width:700px){.project-gallery{grid-template-columns:1fr}}

/* Native video examples for the First Derivative case study. */
.project-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 3rem;margin-bottom:3rem}
.project-services h2{font-size:1.35rem;margin-bottom:.8rem}
.project-services p{margin-bottom:0}
.video-frame video{display:block;width:100%;height:100%;object-fit:contain;background:var(--ink)}
.local-films-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}
.local-film figcaption{flex-wrap:nowrap;align-items:flex-start}
.local-film figcaption h3{font-size:1.1rem;color:var(--ink);margin:0 0 .45rem}
.local-film figcaption p{font-size:.9375rem;line-height:1.5;margin:0}
.film-duration{flex-shrink:0;font-variant-numeric:tabular-nums}
@media(max-width:700px){.project-services,.local-films-grid{grid-template-columns:1fr}.project-services{gap:1.5rem}.local-films-grid{gap:0}}

/* Documentary films sit beside their context, then stack in reading order. */
.service-links{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}
.service-links .text-link{align-items:baseline}
.service-links .text-link:after{flex-shrink:0}
.project-purpose{padding-bottom:3rem;gap:3rem}
.project-purpose h2{font-size:clamp(1.5rem,2.5vw,2rem)}
.film-story{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--line)}
.film-story:last-child{margin-bottom:0;border-bottom:0}
.film-story-player,.film-story-copy{min-width:0}
.film-story .film{margin:0}
.film-story-copy h2{font-size:clamp(1.4rem,2.6vw,2rem);line-height:1.25;margin-bottom:1rem}
.film-story-copy .eyebrow{line-height:1.5;letter-spacing:.045em;margin-bottom:.8rem}
.film-story-copy p:last-child{margin-bottom:0}
.related-projects{border-top:1px solid var(--line)}
.partnership{border-top:1px solid var(--line)}
@media(max-width:800px){.film-story,.project-purpose{grid-template-columns:1fr;gap:1.25rem}.film-story{margin-bottom:2rem;padding-bottom:2rem}.project-purpose{padding-bottom:2rem}}

/* Live Version 2.5: a more compact introduction and clearer project context. */
.hero{padding-block:1.6rem 3.2rem}
.hero h1{font-size:clamp(2.24rem,5.2vw,4.8rem)}
.series-item{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.series-item>div{min-width:0}
.series-description{padding-top:3.8rem}
.project-films+.project-purpose{padding-top:1rem}
.mission-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem 3rem}
.mission-project-grid article{border-top:3px solid var(--signal);padding-top:1.5rem;min-width:0}
.mission-project-grid h3{font-size:1.5rem}
.mission-project-grid .text-link{font-size:1rem}
@media(max-width:900px){.series-item{grid-template-columns:1fr;gap:1rem}.series-description{padding-top:0}.hero{gap:1.6rem}}
@media(max-width:600px){.hero{padding-block:.8rem 2.4rem}.mission-project-grid{grid-template-columns:1fr;gap:2rem}}

.project-client-logo{width:190px;height:auto;margin-top:1.5rem;border:1px solid var(--line)}
/* Give the expanded navigation room before switching to the existing mobile menu. */
@media(min-width:901px) and (max-width:1100px){.menu{display:block}nav{position:absolute;left:1rem;right:1rem;top:7rem;display:none;padding:1.5rem;flex-direction:column;align-items:stretch;gap:1.25rem;background:white;border:1px solid var(--line);box-shadow:0 12px 35px #24263e15}nav.open{display:flex}nav a{font-size:1rem}html:not(.js) header{flex-wrap:wrap}html:not(.js) nav{display:flex;position:static;flex-basis:100%;box-shadow:none;border:0;padding:.75rem 0}}

/* V3: compact capability summaries and practical commissioning information. */
.service-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 3rem;margin-bottom:2rem;border-top:1px solid var(--line)}
.service-overview article{padding:1.4rem 0;border-bottom:1px solid var(--line);min-width:0}
.service-overview h3{font-size:1.25rem;margin-bottom:.6rem}
.service-overview h3 a{text-decoration:none;text-underline-offset:.2em}
.service-overview h3 a:hover{text-decoration:underline}
.service-overview p{color:var(--muted);margin:0}
.agency-partners{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.production-questions details{border-top:1px solid var(--line);padding-block:1.2rem;max-width:900px}
.production-questions details:last-child{border-bottom:1px solid var(--line)}
.production-questions summary{font-size:1.125rem;font-weight:700;cursor:pointer;min-height:32px}
.production-questions details p{margin:1rem 0 0;max-width:760px}
.privacy-copy{max-width:850px;overflow-wrap:anywhere}
.privacy-copy h2{font-size:1.6rem;margin:2.5rem 0 1rem}
.service-row,.agency-partners,.production-questions{scroll-margin-top:7rem}
@media(max-width:700px){.service-overview{grid-template-columns:1fr;gap:0}.agency-partners{gap:1.5rem}.privacy-copy h2{font-size:1.4rem}}
