.film{position:relative;width:100%;height:100%;min-height:400px;background:#dce2eb}.film video{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.project-film{height:600px;max-height:75vh}.project-heading h1{max-width:1200px;font-size:clamp(44px,5.7vw,83px)}.project-description p{color:var(--muted);font-size:17px;line-height:1.8}.gallery-section{padding-bottom:90px}.timeline{max-width:1000px;margin-top:60px}.timeline article{display:grid;grid-template-columns:200px 1fr;gap:55px;padding:30px 0;border-top:2px solid var(--orange-deep)}.timeline article>span{font-size:23px;color:var(--blue)}.timeline article p{color:var(--muted);max-width:580px}.timeline h3{margin-bottom:15px}.lightbox-toolbar{display:flex;align-items:center;gap:15px;background:var(--blue);color:white;padding:10px}.lightbox-toolbar button{margin:0}.lightbox-toolbar [data-close]{margin-left:auto}.lightbox-toolbar #image-count{min-width:65px;text-align:center}.copy-enquiry{background:transparent;margin-left:20px;border:0;border-bottom:1px solid currentColor}.gallery button{overflow:hidden;cursor:zoom-in}.gallery img{transition:transform .3s}.gallery button:hover img{transform:scale(1.025)}.project-card h3{font-size:26px}.project-placeholder h3{font-size:clamp(24px,2.5vw,38px)}.project-placeholder{min-height:0}.form-status p{margin:0 0 15px}.nav a.contact-link{white-space:nowrap}@media(max-width:700px){.timeline article{grid-template-columns:1fr;gap:15px;padding:25px 0}.project-film{height:350px}.film{min-height:300px}.project-heading h1{font-size:43px}.project-card h3{font-size:24px}.gallery-section{padding-bottom:60px}.copy-enquiry{display:block;margin:20px 0 0}.lightbox-toolbar{gap:7px}.lightbox-toolbar button{padding:12px}.film .video-toggle{font-size:12px}}

.project-card .photo{position:relative}
.card-clip{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none;transition:opacity .45s ease,transform .5s}
.project-card.has-clip:hover .card-clip,.project-card.has-clip:focus-visible .card-clip{opacity:1;transform:scale(1.035)}
@media(hover:none),(prefers-reduced-motion:reduce){.card-clip{display:none}}

.project-grid .project-card.wide{grid-column:1/-1}
.project-grid .project-card.wide img,.project-grid .project-card.wide .card-clip{aspect-ratio:2.35}
.project-grid .project-card.wide h3{font-size:34px}
@media(max-width:700px){.project-grid .project-card.wide img,.project-grid .project-card.wide .card-clip{aspect-ratio:1.5}.project-grid .project-card.wide h3{font-size:24px}}
