/* Production services and film cases extend the existing midnight-blue system. */
.service-home{padding-block:85px;border-block:1px solid #aac7dc1c;background:#0a192680}
.service-home-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:40px}
.service-home-heading h2{font-size:clamp(30px,3.6vw,52px);font-weight:400;line-height:1.35;letter-spacing:-1.4px;max-width:800px}
.service-home-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.service-home-links>a{justify-content:space-between;gap:12px;padding-block:24px;border-top:1px solid #a4c3d542;font-size:20px;line-height:1.5}
.service-index-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:8vw;margin-bottom:90px;align-items:start}
.prose-copy{font-size:18px;line-height:1.9;color:#abc4d4;max-width:680px}
.service-feature{display:grid;grid-template-columns:1.08fr 1fr;gap:7vw;align-items:center;margin-top:95px}
.service-feature.is-reversed .service-feature-image{grid-column:2;grid-row:1}
.service-feature.is-reversed .service-feature-copy{grid-column:1;grid-row:1}
.service-feature-image{position:relative;display:block;overflow:hidden;min-height:480px;height:38vw;max-height:650px;background:#0a1c2a}
.service-feature-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transform:translateY(var(--photo-y,0)) scale(1.12);filter:saturate(.75);transition:filter .5s}
.service-feature-image:hover img{filter:saturate(1)}
.service-feature-image:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 65%,#07121dde)}
.service-feature-image>.eyebrow{position:absolute;bottom:28px;left:28px;z-index:1;color:#dce8ed;line-height:1.7}
.service-feature-copy>p{font-size:18px;line-height:1.95;color:#b0c8d7;margin:25px 0}
.service-compact-facts{display:grid;gap:22px;margin:30px 0 35px}
.service-compact-facts dt,.case-record dt{font-size:12px;letter-spacing:.04em;line-height:1.6;color:#86a8bd;margin-bottom:8px}
.service-compact-facts dd{font-size:16px;line-height:1.85;color:#c0d4e0;margin:0}
.service-introduction{display:grid;grid-template-columns:1fr 1fr;gap:8vw}
.service-introduction .prose>.text-link{margin-top:28px}
.service-scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:60px}
.service-scope-grid article{border-top:1px solid #a5c6d63b;padding-top:25px}
.service-scope-grid h3{margin-bottom:20px}
.service-scope-grid p,.service-process p,.case-notes p{font-size:17px;line-height:1.9;color:#abc4d4}
.service-process{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px;margin-top:55px;padding:0}
.service-process li{border-top:1px solid #9dbcd343;padding-top:28px;min-width:0}
.process-step{display:block;font-family:var(--serif,'Instrument Serif'),serif;font-style:italic;font-size:52px;line-height:1;color:#8db3cc;margin-bottom:30px}
.service-process h3{font-size:22px;margin-bottom:20px}
.service-photo-band{min-height:440px}
.service-photo-band .text-link{margin-top:28px}
.service-delivery-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:9vw}
.service-delivery-grid h3{margin-top:8px}
.brief-list{list-style:none;padding:0;margin:30px 0}
.brief-list li{font-size:17px;line-height:1.9;color:#b5ccda;padding:15px 0 15px 22px;border-bottom:1px solid #a6c7da1f;position:relative}
.brief-list li:before{content:'+';position:absolute;left:0;color:#83a9c0}
.service-work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:50px 35px;margin-top:45px}
.service-work-grid .film-card{grid-column:auto;grid-row:auto;min-width:0;margin:0;padding:0}
.service-work-grid .film-card .film-image{aspect-ratio:auto;height:290px}
.service-work-grid .film-info>span:first-child{min-width:0}
.service-work-grid .film-info strong{overflow-wrap:anywhere}
.service-work-grid .film-image{height:290px}
.service-work-grid .film-card.featured{grid-column:auto}
.service-faq-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:8vw}
.service-faq details{border-top:1px solid #acc9dc3b;padding:0}
.service-faq details:last-child{border-bottom:1px solid #acc9dc3b}
.service-faq summary{cursor:pointer;display:flex;align-items:start;justify-content:space-between;gap:25px;font-size:19px;line-height:1.7;padding:25px 0;list-style:none}
.service-faq summary::-webkit-details-marker{display:none}
.service-faq summary>span:last-child{color:#8db3cc;transition:transform .25s;flex-shrink:0}
.service-faq details[open] summary>span:last-child{transform:rotate(45deg)}
.service-faq details>p{font-size:17px;line-height:1.95;color:#abc4d4;padding:0 30px 28px 0}
.service-final{background:#0b2030;border-block:1px solid #b3d0e422;text-align:center}
.service-final>p{font-size:18px;line-height:1.9;color:#abc4d4;margin:25px auto 35px;max-width:700px}
.service-related-links{display:flex;flex-wrap:wrap;gap:20px 35px;margin-top:40px}
.service-related-links .text-link{font-size:16px;line-height:1.8}
.service-final .service-related-links{justify-content:center}
.case-narrative{margin-top:90px;padding-top:75px;border-top:1px solid #a9c9dd33}
.case-brief{display:grid;grid-template-columns:1.1fr 1fr;gap:7vw;margin-bottom:70px}
.case-brief .eyebrow{display:block;margin-bottom:25px}
.case-brief .prose{padding-top:42px}
.case-visual-layout{display:grid;grid-template-columns:1.3fr .85fr;gap:6vw;align-items:center}
.case-artwork{position:relative;overflow:hidden;height:490px;background:#0a1c2a}
.case-artwork>img{width:100%;height:100%;object-fit:cover;transform:translateY(var(--photo-y,0)) scale(1.12)}
.case-artwork>figcaption{position:absolute;inset:auto 0 0;padding:45px 25px 22px;background:linear-gradient(transparent,#06131ee8);font-size:12px;color:#bbd1df;line-height:1.8}
.case-visual-copy>h2{font-size:clamp(28px,2.7vw,43px);margin:25px 0}
.case-visual-copy>p{font-size:17px;line-height:1.95;color:#abc4d4}
.case-notes{display:grid;grid-template-columns:1fr 1fr;gap:7vw;margin:65px 0 85px}
.case-notes article{border-top:1px solid #acc7db33;padding-top:25px}
.case-notes h3{margin-bottom:20px}
.case-record{display:grid;grid-template-columns:.7fr 1.5fr;gap:6vw;border-top:1px solid #abc9dd33;padding-top:45px}
.case-record h2{margin-top:20px}
.case-record dl{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.case-record dd{margin:0;font-size:17px;line-height:1.8}
.case-record dd .text-link{font-size:16px;gap:12px}
.case-next{display:grid;grid-template-columns:1.2fr 1fr;gap:7vw;background:#102636;border:1px solid #a4c3d526;padding:45px;margin-top:80px}
.case-next h2{font-size:clamp(28px,2.6vw,40px)}
.case-next p{font-size:17px;line-height:1.9;color:#abc4d4;margin-top:20px}
.case-next .brief-list{margin-bottom:0}
.case-next>.brief-list li{font-size:16px}
.case-next .service-related-links{flex-direction:column;margin:25px 0 35px}
.inquiry-context{border-left:2px solid #77a8c9;padding:12px 18px;margin:22px 0;font-size:16px;line-height:1.8;color:#c2d8e6;background:#102637}
@media(min-width:951px) and (max-width:1250px){.header .desktop-nav{gap:15px}.header .desktop-nav a{font-size:15px}.header .brand-logo,.header.is-scrolled .brand-logo{width:184px}.header .header-actions{gap:17px}.header .header-contact{padding-inline:13px;gap:14px}.footer-sitemap nav{gap:19px}}
@media(max-width:1000px){.service-process{grid-template-columns:1fr 1fr}.service-feature{gap:5vw}.service-feature-image{min-height:410px}.service-feature-copy h2{font-size:34px}.case-artwork{height:400px}.case-visual-layout{grid-template-columns:1fr 1fr;gap:5vw}.case-next{padding:30px;gap:35px}}
@media(max-width:650px){.service-home{padding-block:60px}.service-home-heading{display:block;margin-bottom:30px}.service-home-heading h2{font-size:31px;margin-bottom:25px}.service-home-links{grid-template-columns:1fr;gap:0}.service-home-links>a{font-size:20px;padding-block:22px}.service-home .section-label>.micro{display:none}.service-index-intro,.service-introduction,.service-delivery-grid,.service-faq-layout{grid-template-columns:1fr;gap:35px}.service-index-intro{margin-bottom:45px}.service-feature,.service-feature.is-reversed{grid-template-columns:1fr;gap:30px;margin-top:55px}.service-feature.is-reversed .service-feature-image,.service-feature.is-reversed .service-feature-copy{grid-column:auto;grid-row:auto}.service-feature-image{height:310px;min-height:310px}.service-feature-image>.eyebrow{left:20px;bottom:20px;font-size:10px}.service-feature-copy>p,.prose-copy{font-size:17px;line-height:1.9}.service-feature-copy h2{font-size:30px}.service-scope-grid{grid-template-columns:1fr;gap:35px;margin-top:45px}.service-process{grid-template-columns:1fr;gap:25px;margin-top:35px}.service-process li{display:grid;grid-template-columns:40px 1fr;gap:20px;padding-top:23px}.process-step{font-size:38px;margin:0}.service-process h3{font-size:23px;margin-bottom:12px}.service-photo-band{min-height:400px}.service-delivery-grid{gap:45px}.service-work-grid{grid-template-columns:1fr;gap:40px}.service-work-grid .film-image{height:260px}.service-faq summary{font-size:18px}.service-faq details>p{padding-right:10px}.brief-list li{font-size:16px}.service-final .button{font-size:15px;padding-inline:24px;max-width:100%}.service-related-links{gap:15px}.service-related-links .text-link{font-size:15px}.case-narrative{margin-top:55px;padding-top:50px}.case-brief{grid-template-columns:1fr;gap:25px;margin-bottom:40px}.case-brief .prose{padding:0}.case-visual-layout{grid-template-columns:1fr;gap:30px}.case-artwork{height:300px}.case-artwork>figcaption{padding-inline:18px;font-size:11px}.case-visual-copy>h2{font-size:29px}.case-notes{grid-template-columns:1fr;gap:30px;margin:40px 0 50px}.case-record{grid-template-columns:1fr;gap:30px;padding-top:35px}.case-record dl{gap:25px 18px}.case-record dd{font-size:15px;overflow-wrap:anywhere}.case-record dd .text-link{font-size:14px;gap:8px}.case-next{grid-template-columns:1fr;padding:25px;gap:35px;margin-top:45px}.case-next h2{font-size:29px}.case-next .button{font-size:15px;max-width:100%;padding-inline:22px}}
@media(prefers-reduced-motion:reduce){.service-feature-image img,.service-faq summary>span:last-child{transition:none}.service-feature-image img,.case-artwork>img{transform:none}}
.inner-page[data-page=services] .page-section[id],.project-body [id]{scroll-margin-top:150px}
.service-index-intro h2,.service-home-heading h2,.case-brief h2,.case-next h2,.service-final h2,.service-faq-layout>h2{text-wrap:balance}
