/* Supporting Film pages: the same quiet typography, margins and cinema palette. */
.studio-page{--muted:#a6ada8;--line:#d5ddd321;position:relative;isolation:isolate}
.studio-page .studio-main{padding-top:24px;padding-bottom:28px;overflow:visible}
.studio-page section[id]{scroll-margin-top:30px}
.studio-page .secondary a[aria-current=page]{text-decoration:underline;text-underline-offset:7px;text-decoration-color:#a4ada566}
.studio-main h1,.studio-main h2,.studio-main h3{font-family:var(--narrow);font-weight:400;letter-spacing:.015em;text-wrap:balance}
.studio-main h1{font-size:clamp(34px,3.4vw,48px);line-height:1.13;margin:0}
.studio-main h2{font-size:clamp(26px,2.5vw,34px);line-height:1.18;margin:0}
.studio-main h3{font-size:23px;line-height:1.2;margin:0}
.studio-main figure{margin:0}
.studio-main .eyebrow{margin:0 0 17px;font:11px/1.6 var(--narrow);letter-spacing:.15em;color:#a6ada8}
.body-copy,.intro-copy>p:not(.project-role){max-width:560px;margin:0;color:#b1b9b3;font:14px/1.85 Arial,Helvetica,sans-serif;text-wrap:pretty}
.back-link,.quiet-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;width:fit-content;max-width:100%;font:11px/1.5 var(--narrow);letter-spacing:.13em}
.back-link{color:#a6ada8;margin-bottom:25px}
.quiet-link{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px;text-decoration-color:#b3bdb34d}
.quiet-link:hover{text-decoration-color:currentColor}
.page-intro{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start;padding:0 0 48px}
.intro-copy{padding-top:2px;max-width:580px}
.intro-copy .quiet-link{margin-top:19px}
.project-role{margin:22px 0 0;color:#929e95;font:11px/1.9 var(--narrow);letter-spacing:.15em}
.project-hero{position:relative;isolation:isolate}
.project-hero-image{overflow:hidden;aspect-ratio:2.4;background:#111512;box-shadow:0 15px 25px #0005}
.project-hero-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 72%}
.project-hero:before{content:'';position:absolute;z-index:-1;left:8%;right:8%;bottom:-42px;height:110px;background:url('/assets/pilfer.webp') center 80%/cover;filter:blur(30px) saturate(.55);opacity:.12;mask-image:linear-gradient(#000,transparent);pointer-events:none}
.project-hero figcaption{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:10px;font:11px/1.5 var(--narrow);letter-spacing:.12em;color:#a4ada6}
.project-hero figcaption a{display:inline-flex;align-items:center;gap:12px;min-height:44px;color:#d7ddd6}
.page-index{display:flex;flex-wrap:wrap;gap:12px 32px;margin-top:25px;padding:14px 0 0}
.page-index a{display:flex;align-items:center;min-height:44px;font:12px/1.5 var(--narrow);letter-spacing:.06em;color:#a6ada8}
.studio-section{padding:64px 0;border-top:1px solid var(--line);margin-top:34px}
.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start;margin-bottom:35px}
.section-heading>.body-copy{padding-top:2px}
.film-pair{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.film-embed{position:relative;aspect-ratio:16/9;background:#111512;box-shadow:0 12px 28px #0004}
.film-load{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;overflow:hidden}
.film-load img{display:block;width:100%;height:100%;object-fit:cover;filter:brightness(.73);transition:filter .25s}
.film-load:hover img,.film-load:focus-visible img{filter:brightness(.9)}
.film-play{position:absolute;left:24px;bottom:22px;display:flex;align-items:center;gap:12px;color:#fff;font:11px/1.4 var(--narrow);letter-spacing:.15em;text-shadow:0 2px 8px #000}
.film-play>span{display:grid;place-items:center;width:35px;height:35px;border:1px solid #fffc;border-radius:50%;font:11px/1 Arial;padding-left:2px;background:#0002}
.film-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.media-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:17px}
.media-heading .quiet-link{font-size:10px;letter-spacing:.11em}
.campaign-film>.body-copy{font-size:13px;line-height:1.7;margin-top:5px}
.product-section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:8%;align-items:center;margin-top:0}
.product-copy .body-copy{margin-top:23px}
.credit{display:flex;flex-direction:column;gap:8px;margin:28px 0 0;font:12px/1.6 var(--narrow);letter-spacing:.12em}
.credit span{font-size:10px;color:#929e95;letter-spacing:.16em}
.product-player video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#050606;box-shadow:0 12px 28px #0004}
.product-player>.quiet-link{font-size:10px;color:#a6ada8;margin-top:10px}
.development-section{margin-top:0;padding-bottom:35px}
.character-studies{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;padding:15px 0 32px}
.character-image{display:flex;align-items:flex-end;justify-content:center;height:220px;padding:12px;background:radial-gradient(ellipse at 50% 65%,#252823,#0d100e 75%)}
.character-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom}
.character-studies figcaption{padding:13px 0;color:#a6ada8;font:11px/1.5 var(--narrow);letter-spacing:.08em}
.storyboard-set{border-top:1px solid var(--line)}
.storyboard-set:last-child{border-bottom:1px solid var(--line)}
.storyboard-set summary{display:flex;align-items:center;gap:22px;padding:22px 0;min-height:76px;cursor:pointer;list-style:none;font:23px/1.3 var(--narrow);letter-spacing:.015em}
.storyboard-set summary::-webkit-details-marker{display:none}
.storyboard-count{font-size:11px;letter-spacing:.08em;color:#a6ada8;margin-left:auto}
.disclosure-symbol{font:20px/1 Arial;transition:transform .2s}
.storyboard-set[open] .disclosure-symbol{transform:rotate(45deg)}
.storyboard-set summary:focus-visible{outline:2px solid #c1ccc4;outline-offset:4px}
.storyboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;padding:8px 0 32px}
.board-link{display:block;cursor:zoom-in}
.board-link img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#e1dfd6}
.storyboard-grid figcaption{display:flex;gap:11px;padding:11px 0;font:11px/1.5 var(--narrow);letter-spacing:.035em;color:#b6bdb7}
.storyboard-grid figcaption span{color:#89968c;font-size:11px}
.page-return{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:10px 0 28px}
.board-viewer{inset:0;margin:auto;width:min(980px,calc(100% - 44px));height:fit-content;max-height:90dvh;padding:20px 24px 26px;background:#101310;color:#eeefec;box-shadow:0 20px 80px #0009}
.board-viewer[open]{display:flex;flex-direction:column;animation:none;gap:16px}
.board-viewer::backdrop{background:#030504dc;backdrop-filter:blur(6px)}
.board-viewer-top{display:flex;align-items:center;justify-content:space-between;gap:24px}
.board-viewer-top h2{margin:0;font:16px/1.4 var(--narrow);letter-spacing:.04em}
.board-viewer-top button{font:10px/1.4 var(--narrow);letter-spacing:.12em;display:flex;align-items:center;gap:14px;min-height:44px}
.board-viewer-top button span{font:20px/1 Arial}
.board-viewer>img{display:block;width:100%;max-height:70dvh;min-height:0;object-fit:contain}
.work-triptych{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;padding-bottom:24px}
.work-triptych>a{display:block;min-width:0}
.work-triptych img{display:block;width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;box-shadow:0 10px 24px #0004}
.work-triptych figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 0;font:15px/1.5 var(--narrow);letter-spacing:.03em}
.work-triptych figcaption>span+span{font-size:11px;color:#a6ada8}
.work-triptych figcaption>span+span span{margin-left:8px}
.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px 8%;padding-top:28px}
.approach-grid article{border-top:1px solid var(--line);padding-top:27px}
.approach-grid h3{margin:0 0 18px}
.capabilities-section{display:grid;grid-template-columns:1fr 1fr;gap:8%;margin-top:0}
.capabilities-list{display:grid;grid-template-columns:1fr 1fr;gap:0 26px;list-style:none;padding:0;margin:0}
.capabilities-list li{padding:16px 0;border-bottom:1px solid var(--line);font:20px/1.4 var(--narrow);letter-spacing:.025em}
.capabilities-list a{display:inline-block;text-decoration:underline;text-decoration-color:#b3bdb34d;text-underline-offset:5px}
.capabilities-list a span{font-size:16px;margin-left:6px}
.client-section{padding:25px 0 50px}
.client-section ul{display:flex;flex-wrap:wrap;gap:12px 34px;list-style:none;margin:19px 0 0;padding:0}
.client-section li{font:18px/1.5 var(--narrow);letter-spacing:.05em;color:#c2cac3}
.labs-invitation{display:flex;justify-content:space-between;gap:40px;align-items:center;border-top:1px solid var(--line);padding:45px 0 40px}
.labs-invitation .body-copy{margin-top:17px}
.labs-invitation>.quiet-link{flex-shrink:0}
.website-feature{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:6%;padding:5px 0 25px}
.website-feature-image{display:block}
.website-feature-image img{display:block;width:100%;height:auto;aspect-ratio:1.85;object-fit:cover;box-shadow:0 15px 25px #0005}
.website-feature-copy .body-copy{max-width:350px;margin-top:18px}
.website-feature-copy>.quiet-link{margin-top:18px}
.service-section{display:grid;grid-template-columns:1fr 1fr;gap:8%}
.service-section>div .body-copy{max-width:400px;margin-top:24px}
.service-list{margin:0}
.service-list>div{border-bottom:1px solid var(--line);padding:25px 0}
.service-list>div:first-child{padding-top:0}
.service-list dt{display:flex;gap:17px;align-items:baseline;font:23px/1.3 var(--narrow);letter-spacing:.015em}
.service-list dt span{font-size:11px;letter-spacing:.1em;color:#929e95}
.service-list dd{margin:13px 0 0 29px;color:#b1b9b3;font:14px/1.8 Arial,Helvetica,sans-serif}
.enquiry-note{max-width:650px;padding:0 0 45px}
.enquiry-note>p:not(.eyebrow){color:#b1b9b3;margin:0 0 18px;font-size:14px;line-height:1.8}
.studio-page .studio-footer{isolation:isolate}
.studio-page .studio-footer:after{content:'';position:absolute;z-index:-1;inset:-60px 0 0;pointer-events:none;background:url('/assets/cinema/concrete-fine.webp') center/cover;opacity:.025;mask-image:linear-gradient(transparent,#000);-webkit-mask-image:linear-gradient(transparent,#000)}
@media(min-width:1800px){.studio-main h1{font-size:48px}}
@media(max-width:1000px){.page-intro,.section-heading,.capabilities-section,.service-section{gap:5%}.studio-main h1{font-size:38px}.product-section{grid-template-columns:1fr 1.5fr;gap:5%}.character-studies{gap:14px}.character-image{height:180px}.storyboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.work-triptych{gap:17px}.work-triptych figcaption{align-items:start;flex-direction:column;gap:4px}.website-feature{gap:5%;grid-template-columns:1.2fr 1fr}}
@media(max-width:700px){.page-intro,.section-heading,.product-section,.capabilities-section,.service-section,.website-feature{grid-template-columns:1fr;gap:27px}.studio-page .studio-main{padding-top:13px}.back-link{margin-bottom:22px}.page-intro{padding-bottom:31px}.studio-main h1{font-size:36px}.studio-main h2{font-size:29px}.intro-copy{max-width:540px}.project-role{margin-top:18px}.project-hero-image{aspect-ratio:1.6}.project-hero-image img{object-position:center}.project-hero figcaption{font-size:10px;letter-spacing:.05em}.page-index{gap:2px 22px;margin-top:16px;padding-top:0}.page-index a{font-size:11px}.studio-section{padding:40px 0;margin-top:25px}.section-heading{margin-bottom:27px}.film-pair{gap:20px}.media-heading{align-items:start;flex-direction:column;gap:0}.media-heading h3{font-size:21px}.media-heading .quiet-link{min-height:36px}.film-play{left:14px;bottom:14px;font-size:10px;gap:9px}.film-play>span{width:28px;height:28px;font-size:9px}.product-section,.development-section{margin-top:0}.product-copy .body-copy{margin-top:20px}.credit{margin-top:22px}.character-studies{grid-template-columns:repeat(3,minmax(0,1fr));padding-top:0}.character-image{height:180px}.storyboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.storyboard-set summary{font-size:21px;gap:12px}.storyboard-count{font-size:10px}.approach-grid{gap:24px;padding-top:8px}.capabilities-section{margin-top:0}.work-triptych{gap:15px;padding-bottom:12px}.work-triptych figcaption{font-size:14px}.work-triptych figcaption>span+span{font-size:10px}.client-section{padding-top:15px;padding-bottom:35px}.client-section ul{gap:12px 23px}.labs-invitation{align-items:start;flex-direction:column;gap:17px;padding:35px 0 25px}.website-feature{padding-top:0}.website-feature-copy .body-copy{max-width:540px}.website-feature-copy>.quiet-link{margin-top:12px}.service-list>div:first-child{border-top:1px solid var(--line);padding-top:25px}.enquiry-note{padding-bottom:25px}.board-viewer{padding:15px 18px 20px}.board-viewer-top h2{font-size:14px}}
@media(max-width:480px){.studio-main h1{font-size:33px}.body-copy,.intro-copy>p:not(.project-role){font-size:14px;line-height:1.8}.film-pair{grid-template-columns:1fr;gap:31px}.media-heading{flex-direction:row;align-items:center;gap:12px}.film-play{font-size:10px}.film-play>span{width:32px;height:32px}.character-studies{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.character-image{height:180px}.storyboard-set summary{font-size:20px}.storyboard-count{max-width:75px;line-height:1.6}.storyboard-grid{gap:15px}.storyboard-grid figcaption{font-size:10px;gap:6px}.page-return{gap:15px}.page-return .quiet-link{font-size:10px;letter-spacing:.08em}.work-triptych{grid-template-columns:1fr;gap:24px}.work-triptych figcaption{flex-direction:row;align-items:center;font-size:16px}.work-triptych figcaption>span+span{font-size:11px}.work-triptych img{aspect-ratio:1.85}.approach-grid{grid-template-columns:1fr;gap:27px}.capabilities-list{gap:0 18px}.capabilities-list li{font-size:18px}.client-section li{font-size:17px}.service-list dt{font-size:22px}.service-list dd{margin-left:0;font-size:14px}.enquiry-note .quiet-link{font-size:11px;letter-spacing:.06em}}

/* Film covers are frames from the films themselves, with the edition mark and play action over a soft bottom gradient. */
.film-cover{isolation:isolate;background:#111512}
.film-load .cover-still{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.86);transition:filter .3s ease,transform .6s ease}
.film-load:hover .cover-still,.film-load:focus-visible .cover-still{filter:brightness(1);transform:scale(1.02)}
.film-cover:after{content:'';position:absolute;z-index:0;inset:55% 0 0;pointer-events:none;background:linear-gradient(transparent,#0a0b0a99)}
.cover-edition{position:absolute;left:24px;top:23px;z-index:2;font:11px/1.4 var(--narrow);letter-spacing:.19em;color:#f1efe8;text-shadow:0 1px 6px #000c}
.film-cover .film-play{z-index:2;left:24px;bottom:23px;gap:12px;font-size:11px;color:#fff;text-shadow:0 1px 6px #000c}
.film-cover .film-play>span{width:40px;height:40px;background:#0f100e80;border-color:#fffc}
@media(max-width:700px){.cover-edition{left:16px;top:16px;font-size:10px}.film-cover .film-play{left:16px;bottom:16px;font-size:10px;gap:9px}.film-cover .film-play>span{width:34px;height:34px}}
@media(prefers-reduced-motion:reduce){.film-load .cover-still{transition:none}.film-load:hover .cover-still,.film-load:focus-visible .cover-still{transform:none}}

/* Contact form: hairline fields, eyebrow labels, one unmistakable button. */
.contact-section{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:8%;padding:12px 0 54px}
.contact-form{min-width:0}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.field{display:flex;flex-direction:column;margin-bottom:26px}
.field label{font:11px/1.6 var(--narrow);letter-spacing:.15em;color:#a6ada8;margin-bottom:6px}
.field label span{margin-left:8px;color:#737b75;letter-spacing:.08em}
.field input,.field textarea{width:100%;background:transparent;border:0;border-bottom:1px solid #3a403c;border-radius:0;padding:10px 0 11px;color:#eeefec;font:16px/1.5 Arial,Helvetica,sans-serif;transition:border-color .2s}
.field textarea{resize:vertical;min-height:120px}
.field input::placeholder,.field textarea::placeholder{color:#5f6762}
.field input:focus,.field textarea:focus{outline:none;border-bottom-color:#c6ccc6}
.field input:focus-visible,.field textarea:focus-visible{box-shadow:0 1px 0 #c6ccc6}
.field input:user-invalid,.field textarea:user-invalid{border-bottom-color:#b56a5a}
.form-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:6px}
.send-button{display:inline-flex;align-items:center;gap:14px;min-height:46px;padding:0 22px;border:1px solid #c6ccc6;color:#eeefec;font:12px/1.2 var(--narrow);letter-spacing:.16em;transition:background .2s,color .2s,border-color .2s}
.send-button .arrow{width:10px;height:10px}
.send-button:hover,.send-button:focus-visible{background:#eeefec;color:#0a0c0c;border-color:#eeefec}
.send-button:disabled{opacity:.5;cursor:default;background:transparent;color:#eeefec}
.form-note{margin:0;max-width:360px;color:#8f9991;font:11px/1.6 var(--narrow);letter-spacing:.06em}
.form-status{margin:18px 0 0;min-height:1.6em;color:#b1b9b3;font:13px/1.6 Arial,Helvetica,sans-serif}
.form-status[data-kind=error]{color:#d9a497}
.form-sent h2{margin:0 0 16px}
.form-sent .body-copy a,.contact-aside .body-copy a,.contact-page .project-role a{color:#dfe4de;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;text-decoration-color:#b3bdb34d}
.contact-aside{display:flex;flex-direction:column;gap:30px;padding-top:4px;max-width:360px}
.contact-aside .body-copy{margin-top:14px;max-width:420px}
@media(max-width:1000px){.contact-section{gap:5%}}
@media(max-width:700px){.contact-section{grid-template-columns:1fr;gap:24px;padding-bottom:36px}.field-row{grid-template-columns:1fr;gap:0}.contact-aside{gap:24px;padding:28px 0 0;border-top:1px solid var(--line);max-width:none}}
@media(max-width:480px){.form-actions{gap:18px}.send-button{width:100%;justify-content:center}}
