/* POSTT service system: editorial rhythm, shared process, connected expertise. */
.discipline-page{color:#203f34}.discipline-hero{position:relative;isolation:isolate;min-height:610px;overflow:hidden;background:#f7f6f2}.discipline-hero .service-header-art{inset:0;width:100%;height:100%;opacity:1;object-position:center;z-index:-2}.discipline-shade{position:absolute;inset:0;background:linear-gradient(90deg,#f7f6f2 2%,#f7f6f2ed 34%,#f7f6f26b 76%,#f7f6f226),linear-gradient(0deg,#f7f6f2,transparent 30%);z-index:-1}.discipline-hero-inner{padding-top:38px;padding-bottom:90px}.breadcrumbs{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:12px;font-size:12px;margin:0 0 70px;color:#485d50}.discipline-hero h1{font-size:clamp(47px,6.2vw,88px);line-height:1.06;letter-spacing:-3px;font-weight:400;max-width:1000px;margin:25px 0 38px;text-wrap:balance}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-actions .pill{background:#f7f6f2c9;border-color:#203f34;cursor:pointer}.hero-actions .pill:hover{background:#203f34;color:#f7f6f2}.discipline-lead{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;padding-top:55px;padding-bottom:45px}.lead-label{font-size:clamp(26px,3vw,40px);line-height:1.12;margin:22px 0}.discipline-lead .service-intro{max-width:720px;margin:0}.discipline-lead .service-intro p{font-size:19px;line-height:1.65;margin-top:0;color:#48574a}.service-jumps{display:flex;gap:28px;padding-bottom:40px;font-size:12px}.service-jumps a{border-bottom:1px solid #bdc7bd;padding-bottom:8px}.service-jumps a:hover{color:#a34d22}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:48px}.section-heading h2{margin:12px 0 0}.section-heading>p{max-width:330px;font-size:15px;color:#606b60}.capabilities-section{background:#e4ebe3}.capabilities-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 40px}.capabilities-grid .capability-item{position:relative;padding-top:22px;padding-bottom:15px;border-top:1px solid #afbdaf}.capability-no{font-size:11px;color:#8c471e;display:block;margin-bottom:28px}.capabilities-grid h3{font-size:24px;font-weight:400;line-height:1.2;letter-spacing:-.5px;margin:0 0 15px}.capabilities-grid p{font-size:15px;color:#48574a;margin:0}.discipline-page .service-copy-section .split{grid-template-columns:1fr 1.25fr;gap:70px}.discipline-page .service-copy-section .section{padding-top:80px;padding-bottom:80px}.discipline-page .service-copy-section h2{font-size:clamp(30px,3.5vw,47px);line-height:1.12}.discipline-page .service-prose p{font-size:17px}.working-together{background:#203f34;color:#f7f6f2}.working-together .serif{color:#c6d8c8}.working-together h2{margin-top:24px}.process-grid{list-style:none;padding:0;margin:60px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px}.process-grid li{border-top:1px solid #729181;padding-top:22px}.process-grid li>span{font-size:12px;color:#e6ad87}.process-grid h3{font-size:24px;font-weight:400;line-height:1.2;margin:32px 0 15px}.process-grid p{font-size:15px;line-height:1.6;color:#d4dfd4}.related-services{border-top:1px solid #bac7ba}.related-services>a{display:grid;grid-template-columns:50px 1fr 30px;align-items:center;gap:20px;padding:23px 0;border-bottom:1px solid #bac7ba}.related-services>a>span:first-child{font-size:11px;color:#a34d22}.related-services h3{font-weight:400;font-size:25px;margin:0}.related-services>a:hover{color:#4f7e69}.service-faq{display:grid;grid-template-columns:1fr 1.3fr;gap:70px;padding-top:0}.service-faq h2{font-size:clamp(32px,3.5vw,48px);margin-top:22px}.service-faq details{border-top:1px solid #bac7ba}.service-faq details:last-child{border-bottom:1px solid #bac7ba}.service-faq summary{cursor:pointer;list-style:none;position:relative;padding:23px 35px 23px 0;font-size:18px;line-height:1.4}.service-faq summary:after{content:'+';position:absolute;right:0;font-size:24px;color:#a34d22}.service-faq details[open] summary:after{content:'−'}.service-faq details p{font-size:16px;color:#48574a;margin:0 30px 25px 0}.film-page .discipline-hero{background:#203f34;min-height:720px;color:#f7f6f2}.film-page .discipline-shade{background:linear-gradient(90deg,#102b23ed,#102b23b3 45%,#102b2355),linear-gradient(0deg,#203f34,transparent 35%)}.film-page .breadcrumbs{color:#edf2e9}.film-page .discipline-hero h1{font-size:clamp(49px,7vw,100px);max-width:970px}.film-page .discipline-hero h1 .serif{color:#e9b897}.film-page .hero-actions .pill{border-color:#f7f6f2;color:#f7f6f2;background:transparent}.film-page .hero-actions .reel-trigger{background:#f7f6f2;color:#203f34}.film-introduction{padding-top:30px;padding-bottom:80px;display:grid;grid-template-columns:1fr 1.3fr;gap:15px 80px}.film-introduction .eyebrow{grid-column:1/-1}.film-introduction h2{font-size:clamp(33px,3.6vw,49px);margin:15px 0}.film-introduction p{font-size:18px;margin:15px 0;line-height:1.7;color:#48574a}.production-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:35px}.production-grid figure{margin:0}.production-grid figure:nth-child(even){padding-top:65px}.production-grid img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.production-grid figcaption{font-size:12px;color:#606b60;margin-top:10px}.film-gallery .section-heading p{font-size:12px}#showreel-dialog{border:0;padding:24px;max-width:1100px;width:90vw;background:#f7f6f2;color:#203f34;border-radius:8px}#showreel-dialog::backdrop{background:#06180fe8}#showreel-dialog video{width:100%;max-height:70vh;display:block;background:#102b23}.reel-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.reel-top h2{font:inherit;font-size:16px;margin:0}.reel-top button{border:1px solid #203f34;background:transparent;padding:8px 15px;border-radius:30px;cursor:pointer}#showreel-dialog>p{font-size:12px;margin:12px 0 0}.directory-hero{padding-top:85px;padding-bottom:80px}.directory-hero h1{font-size:clamp(48px,6vw,86px);font-weight:400;line-height:1.08;letter-spacing:-3px;max-width:1050px;margin:28px 0}.directory-hero p{max-width:610px;font-size:20px;color:#48574a;margin-left:auto}.directory-list{padding-bottom:100px}.directory-service{display:grid;grid-template-columns:70px 1fr 40px;gap:25px;padding:38px 0;border-top:1px solid #bac7ba}.directory-service:last-child{border-bottom:1px solid #bac7ba}.directory-number{color:#a34d22;font-size:12px;padding-top:10px}.directory-service h2{font-size:clamp(26px,3.2vw,43px);font-weight:400;line-height:1.2;margin:0 0 18px;letter-spacing:-1px}.directory-service p{font-size:16px;max-width:690px;color:#48574a}.directory-service ul{list-style:none;margin:25px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px;max-width:750px}.directory-service li{font-size:12px;color:#606b60}.directory-arrow{font-size:30px}.directory-service:hover h2{color:#4f7e69}.discipline-page :focus-visible,.services-directory :focus-visible{outline:2px solid #c66a37;outline-offset:5px}.service-faq details[open]{padding-bottom:1px}
@media(max-width:900px){.capabilities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.discipline-lead,.film-introduction,.service-faq,.discipline-page .service-copy-section .split{gap:30px}.discipline-hero h1{letter-spacing:-2px}.production-grid{gap:22px}}
@media(max-width:600px){.discipline-hero-inner{padding-top:25px;padding-bottom:60px}.breadcrumbs{margin-bottom:50px;font-size:11px;gap:8px}.discipline-hero{min-height:540px}.discipline-hero h1{font-size:45px;letter-spacing:-1.7px}.discipline-hero .eyebrow{font-size:10px;letter-spacing:1.5px}.discipline-shade{background:linear-gradient(90deg,#f7f6f2f5,#f7f6f2a8),linear-gradient(0deg,#f7f6f2,transparent 40%)}.discipline-lead,.film-introduction,.service-faq,.discipline-page .service-copy-section .split{grid-template-columns:1fr;gap:20px}.discipline-lead .service-intro p{font-size:17px}.discipline-lead{padding-top:35px}.service-jumps{gap:19px;font-size:11px}.capabilities-grid{grid-template-columns:1fr}.capability-no{margin-bottom:14px}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:22px}.process-grid{gap:20px}.process-grid h3{font-size:21px}.process-grid p{font-size:14px}.process-grid{margin-top:40px}.production-grid{grid-template-columns:1fr}.production-grid figure:nth-child(even){padding-top:0}.film-page .discipline-hero{min-height:650px}.film-page .discipline-hero h1{font-size:56px}.related-services h3{font-size:22px}.related-services>a{grid-template-columns:25px 1fr 20px;gap:12px}.directory-hero{padding-top:55px;padding-bottom:45px}.directory-hero h1{letter-spacing:-1.7px}.directory-hero p{font-size:18px}.directory-service{grid-template-columns:25px 1fr 20px;gap:10px}.directory-number{font-size:10px}.directory-service h2{font-size:28px}.directory-service p{font-size:15px}.reel-top h2{font-size:12px}.reel-top button{font-size:12px}#showreel-dialog{padding:15px;width:95vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* FAQ questions are single text blocks, not the homepage accordion grid. */
.service-faq summary{display:block;grid-template-columns:none;gap:0;width:100%;min-width:0}.service-faq>div{min-width:0}.service-faq summary::after{top:50%;transform:translateY(-50%)}

/* Compact production contact sheet. */
.production-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:start}
.production-grid figure,.production-grid figure:nth-child(even){padding:0;margin:0;min-width:0}
.production-grid img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}
.film-gallery .section-heading{margin-bottom:30px}
/* Isolate FAQ layout from the homepage service accordion. */
.service-faq{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:60px}
.service-faq summary{display:flex;grid-template-columns:none;gap:24px;align-items:flex-start;justify-content:space-between;padding:22px 0;width:100%;text-align:left}
.service-faq summary::after{content:none;display:none}
.service-faq .faq-question{display:block;flex:1;min-width:0;white-space:normal;overflow-wrap:normal;word-break:normal}
.service-faq .faq-toggle{flex:0 0 20px;line-height:1.4;color:#a34d22;text-align:center;font-size:21px;transition:transform .2s}
.service-faq details[open] .faq-toggle{transform:rotate(45deg)}
.service-faq details p{max-width:none;margin:0 44px 24px 0;line-height:1.65}
@media(max-width:1000px){.production-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-faq{gap:35px}}
@media(max-width:750px){.service-faq{grid-template-columns:minmax(0,1fr);gap:20px}.production-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.service-faq summary{font-size:17px}.service-faq details p{font-size:16px;margin-right:24px}}
@media(prefers-reduced-motion:reduce){.service-faq .faq-toggle{transition:none}}
