/* Version17: continuous photography, project purpose and agency collaboration. */
.video-opening{display:flex;align-items:center;min-height:590px;height:auto;max-height:none;aspect-ratio:2.18;background:#171819}
.video-opening .scene-photo{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto}
.video-opening .scene-photo img{object-fit:cover;object-position:center;transform:translate3d(var(--pointer-x,0px),calc(var(--image-offset,0px) + var(--pointer-y,0px)),0) scale(1.025)}
.service-page .video-opening .scene-photo .pointer-background{transform:translate3d(var(--pointer-x,0px),calc(var(--image-offset,0px) + var(--pointer-y,0px)),0) scale(1.025)}
.video-opening .video-opening-shade{display:block;background:linear-gradient(90deg,rgba(8,10,12,.8),rgba(8,10,12,.52) 31%,rgba(8,10,12,.12) 47%,transparent 65%)}
.video-opening .service-opening-copy{max-width:35%;padding-top:44px;padding-bottom:44px}
.video-opening h1{font-size:clamp(44px,4.7vw,72px);max-width:8em;line-height:1.03;letter-spacing:-.035em}
.video-opening .service-intro{font-size:16px;line-height:1.65;max-width:26em;margin-top:22px}.video-opening .coverage{font-size:11px;margin-top:26px}.video-opening .actions{flex-wrap:wrap;gap:18px;margin-top:24px}.video-opening .actions .text-link{font-size:14px}.video-opening .eyebrow{letter-spacing:.13em}
.process-environment{width:100%;max-width:none;margin:0;min-height:820px;padding:75px 0;display:flex;align-items:center}
/* Percentage padding used the full scene width, even after the inner container
   reached 1240px. Cap those offsets at the approved 1440px composition so the
   same readable text area survives wider monitors. Mobile resets stay below. */
.process-content{display:block;position:relative}.process-content>h2{font-size:clamp(38px,4vw,60px);max-width:11em;line-height:1.06;margin:20px 0 32px}
.process-home .process-content{padding-left:min(57vw,820.8px);padding-right:min(6vw,86.4px)}.process-video .process-content{padding-left:min(59vw,849.6px);padding-right:min(5vw,72px)}
.process-environment .scene-photo img{object-fit:cover;object-position:40% 60%;transform:translate3d(0,var(--image-offset,0px),0) scale(1.06)}
.process-video .scene-photo img{object-position:35% 55%}
.process-environment-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent 10%,rgba(10,12,14,.13) 39%,rgba(10,12,14,.8) 67%,rgba(10,12,14,.9))}
.process-steps .step-grid li{list-style:none}.process-steps .step-grid h3{font-size:23px}.process-steps .step-grid p{font-size:16px;line-height:1.65;color:#e0e3e6}
.finished-work-led{display:grid;grid-template-columns:1fr 1fr;gap:50px 35px}.finished-work-led .project-feature:first-child{grid-column:1/-1;display:grid;grid-template-columns:1.45fr 1fr;gap:45px;align-items:center}.finished-work-led .project-feature:first-child .project-feature-copy{padding:0}.finished-work-led .project-feature h3{font-size:clamp(28px,3vw,42px);line-height:1.1;max-width:18em}.finished-work-led .project-image{display:block;width:100%}.finished-work-led .project-poster{display:block;aspect-ratio:16/9;object-fit:cover;width:100%;height:auto}.finished-work-led .project-feature-copy{padding-top:24px}.finished-work-led .project-feature-copy p{font-size:17px;line-height:1.65}.finished-work-led .project-feature{background:transparent;border:0}
.agency-teaser{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;padding-top:90px;padding-bottom:90px}.agency-teaser h2{font-size:clamp(38px,4.4vw,64px);line-height:1.07;max-width:12em}.agency-teaser p{max-width:34em;font-size:17px;line-height:1.7}.agency-teaser .actions{flex-wrap:wrap;gap:24px}.agency-teaser-work{margin:0}.agency-teaser-work img{display:block;width:100%;height:auto}.agency-teaser figcaption{font-size:13px;line-height:1.6;color:#bfc5cb;margin-top:18px}
.agency-connection{padding-top:60px;padding-bottom:70px;display:grid;grid-template-columns:1.1fr 1fr;gap:60px;border-top:1px solid #303740}.agency-connection h2{font-size:clamp(34px,4vw,52px);line-height:1.1;max-width:12em}.agency-connection p{font-size:17px;line-height:1.75;max-width:36em}.agency-connection p .text-link{display:block;margin-top:18px}
.agency-opening{padding-top:80px;padding-bottom:85px}.agency-opening h1{font-size:clamp(46px,6.7vw,94px);max-width:13.2em;line-height:1.02;letter-spacing:-.035em;margin:25px 0 42px}.agency-opening-detail{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;align-items:start}.agency-opening-detail p{font-size:18px;line-height:1.7;max-width:37em}.agency-opening-detail .coverage{font-size:12px;line-height:1.7;margin-top:25px}.agency-opening-detail>div{padding-top:10px}
.agency-evidence{padding:60px 0 70px;background:#14191d}.agency-evidence h2{font-size:clamp(36px,4.3vw,60px);max-width:14em;line-height:1.08}.agency-evidence-copy{max-width:800px;font-size:17px;line-height:1.7;margin-bottom:30px}.agency-evidence .vimeo-sample{width:calc(100% - 48px);max-width:1700px;margin:auto auto 28px}.agency-capabilities,.agency-work{padding-top:85px;padding-bottom:85px}.agency-capabilities h2,.agency-work h2,.agency-sound h2{font-size:clamp(36px,4.4vw,60px);line-height:1.08;max-width:13em}.agency-capabilities .offering-grid{grid-template-columns:1fr 1fr;gap:25px 50px;margin:40px 0}.agency-capabilities article{padding:25px 0;border-top:1px solid #47515a}.agency-capabilities h3{font-size:27px}.agency-capabilities p{font-size:17px;line-height:1.7}.agency-plan{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;padding-top:65px;padding-bottom:65px;border-top:1px solid #303740;border-bottom:1px solid #303740}.agency-plan h2{font-size:clamp(36px,4.4vw,60px);line-height:1.08;max-width:11em}.agency-plan .step-grid{display:grid;grid-template-columns:1fr;gap:26px;margin:0}.agency-plan .step-grid li{padding:0;border:0}.agency-sound{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding-top:50px;padding-bottom:80px}.agency-sound p{font-size:17px;line-height:1.7}.agency-sound blockquote{margin:0;padding:30px 0;border-top:1px solid #47515a}.agency-sound blockquote p{font-size:30px;line-height:1.25}.agency-sound cite{display:block;font-size:14px;line-height:1.65}.agency-closing{padding-top:65px;padding-bottom:80px;border-top:1px solid #303740}.project-scope{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding-top:70px;padding-bottom:70px}.project-scope h2{font-size:34px;line-height:1.15;max-width:15em}.project-scope p{font-size:17px;line-height:1.75}.agency-details,.contact-page fieldset{min-width:0}#agency-details{margin:24px 0;padding:25px;border:1px solid #465360}#agency-details[hidden]{display:none}#agency-details legend{font-size:18px}#agency-details .field-help{margin-top:0}
@media(min-width:701px) and (max-width:1050px){.video-opening{aspect-ratio:auto;min-height:610px}.video-opening .scene-photo{position:absolute;aspect-ratio:auto}.video-opening .scene-photo img{object-position:52% center}.video-opening .service-opening-copy{max-width:37%;padding-top:42px;padding-bottom:42px}.video-opening h1{font-size:clamp(42px,5.5vw,57px)}.video-opening .service-intro{font-size:15px}.process-home .process-content,.process-video .process-content{padding-left:min(53vw,763.2px);padding-right:min(5vw,72px)}.agency-opening-detail{gap:40px}.agency-teaser,.agency-connection{gap:35px}.finished-work-led .project-feature:first-child{grid-template-columns:1.1fr 1fr;gap:30px}.agency-plan,.agency-sound{gap:40px}}
@media(max-width:700px){.video-opening{display:flex;min-height:780px;aspect-ratio:auto;align-items:flex-end}.video-opening .scene-photo{position:absolute;inset:0;aspect-ratio:auto;height:100%}.video-opening .scene-photo img{object-fit:cover;object-position:58% center}.video-opening .video-opening-shade{display:block;background:linear-gradient(0deg,rgba(8,10,12,.95),rgba(8,10,12,.78) 32%,rgba(8,10,12,.15) 62%,transparent 80%)}.video-opening .service-opening-copy{max-width:none;padding-top:390px;padding-bottom:36px}.video-opening h1{font-size:42px;max-width:8em;margin-top:20px}.video-opening .service-intro{font-size:15px;line-height:1.65;max-width:30em}.video-opening .coverage{margin-top:24px}.video-opening .actions{gap:18px}.process-environment{min-height:0;padding:0}.process-home .process-content,.process-video .process-content{padding:370px 24px 55px}.process-content>h2{font-size:39px;max-width:10em}.process-environment .scene-photo img{object-position:32% top}.process-video .scene-photo img{object-position:25% top}.process-environment-shade{background:linear-gradient(0deg,rgba(10,12,14,.95),rgba(10,12,14,.86) 58%,rgba(10,12,14,.05) 90%)}.process-steps .step-grid p{font-size:16px}.finished-work-led,.finished-work-led .project-feature:first-child{display:grid;grid-template-columns:1fr;gap:35px}.finished-work-led .project-feature:first-child{gap:24px}.finished-work-led .project-feature-copy{padding-top:20px}.finished-work-led .project-feature h3{font-size:31px}.agency-teaser,.agency-connection,.agency-opening-detail,.agency-plan,.agency-sound,.project-scope{grid-template-columns:1fr;gap:30px}.agency-teaser{padding-top:55px;padding-bottom:55px}.agency-teaser h2{font-size:40px}.agency-connection{padding-top:45px;padding-bottom:45px}.agency-opening{padding-top:45px;padding-bottom:50px}.agency-opening h1{font-size:46px;max-width:12em;margin-bottom:28px}.agency-opening h1 br{display:none}.agency-opening-detail p{font-size:17px}.agency-opening-detail>div{padding:0}.agency-evidence{padding:40px 0}.agency-evidence .vimeo-sample{width:100%}.agency-capabilities,.agency-work{padding-top:50px;padding-bottom:50px}.agency-capabilities .offering-grid{grid-template-columns:1fr;gap:10px}.agency-capabilities h2,.agency-work h2,.agency-plan h2,.agency-sound h2{font-size:39px}.agency-plan{padding-top:50px;padding-bottom:50px}.agency-sound{padding-top:20px;padding-bottom:50px}.agency-sound blockquote p{font-size:28px}.agency-closing{padding-top:45px;padding-bottom:55px}.project-scope{padding-top:45px;padding-bottom:45px}.project-scope h2{font-size:30px}#agency-details{padding:18px}.video-opening .scene-photo .pointer-background{transform:translate3d(0,var(--image-offset,0px),0) scale(1.025)}}
.reduce-motion .video-opening .scene-photo img,.reduce-motion .process-environment .scene-photo img{transform:scale(1.025)}
@media(prefers-reduced-motion:reduce){.video-opening .scene-photo img,.service-page .video-opening .scene-photo .pointer-background,.process-environment .scene-photo img{transform:scale(1.025)}}

@media(min-width:701px){.video-opening .scene-photo img,.service-page .video-opening .scene-photo .pointer-background{transform:translate3d(var(--pointer-x,0px),calc(var(--image-offset,0px) + var(--pointer-y,0px)),0) scale(1.08)}}
.process-environment .scene-photo img{transform:translate3d(0,var(--image-offset,0px),0) scale(1.10)}
.reduce-motion .video-opening .scene-photo img,.reduce-motion .process-environment .scene-photo img{transform:scale(1.025)}
@media(prefers-reduced-motion:reduce){.video-opening .scene-photo img,.service-page .video-opening .scene-photo .pointer-background,.process-environment .scene-photo img{transform:scale(1.025)}}

@media(min-width:1051px){.process-home .process-content,.process-video .process-content{padding-left:min(52vw,748.8px);padding-right:min(5vw,72px)}.process-content>h2{font-size:50px;max-width:12em}.process-environment{padding-block:65px}}
@media(max-width:700px){.process-environment .scene-photo img{height:650px;object-position:35% center}.process-environment-shade{background:linear-gradient(0deg,#0a0c0e 0%,#0a0c0e 35%,rgba(10,12,14,.84) 56%,rgba(10,12,14,.05) 87%)}.process-environment .scene-photo{background:#0a0c0e}}
@media(min-width:701px) and (max-width:1050px){.video-opening .scene-photo img{object-position:20% center}}
.video-opening{width:100%;min-width:0}

/* Numbered reading markers: observed on CIVIMETRA's live question grid.
   Stable grid rules connect the content; orange markers hand off and retract
   with reading position instead of filling one section-height divider. */
[data-goal-lines] article::before{display:none}
[data-goal-lines] article{border-top:1px solid rgba(134,151,160,.38);padding-top:22px;padding-bottom:22px;padding-left:42px}
[data-goal-lines] .index{position:absolute;left:0;top:25px;color:var(--accent);font-size:11px;letter-spacing:.1em}
.process-steps::before,.process-steps::after{display:none}
.process-steps{padding-left:0}
[data-process-line] .step-grid::before{display:none!important}
[data-process-line] .step-grid{position:relative;gap:0!important;margin-bottom:26px}
[data-process-line] .step-grid>li{position:relative!important;margin:0!important;padding:24px 0 24px 42px!important;border-top:1px solid rgba(134,151,160,.38)!important}
[data-process-line] .step-number{position:absolute;left:0;top:27px;margin:0;color:var(--accent);font-size:11px;letter-spacing:.1em;line-height:1.4}
[data-process-line] .step-grid h3{margin-top:0}
[data-goal-lines] .index::after,[data-process-line] .step-number::after{content:"";display:block;width:2px;height:24px;margin:10px 0 0 1px;background:var(--accent);transform-origin:center top;transform:scaleY(1)}
.motion-ready [data-reading-group] .index::after,.motion-ready [data-reading-group] .step-number::after{transform:scaleY(0);transition:transform .24s cubic-bezier(.22,1,.36,1)}
.motion-ready [data-reading-active="true"] .index::after,.motion-ready [data-reading-active="true"] .step-number::after{transform:scaleY(1)}
[data-process-line] .step-grid::after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--accent);pointer-events:none}
.reduce-motion [data-reading-group] .index::after,.reduce-motion [data-reading-group] .step-number::after{transform:scaleY(1);transition:none}
@media(prefers-reduced-motion:reduce){[data-reading-group] .index::after,[data-reading-group] .step-number::after{transform:scaleY(1)!important;transition:none!important}}
@media(min-width:701px){.plan[data-process-line] .step-grid{column-gap:28px!important}}

/* Version19: original camera kept clear on the right; scoped campaign benefits. */
.process-video{min-height:clamp(820px,66vw,1080px);padding-block:60px}
.process-video .process-content{padding-left:0;padding-right:min(58vw,835.2px);width:min(1240px,calc(100% - 96px))}
.process-video .process-content>h2{font-size:clamp(38px,3.9vw,56px);max-width:11em;margin-block:18px 26px}
.process-video .process-environment-shade{background:linear-gradient(90deg,rgba(8,11,14,.90),rgba(8,11,14,.83) 27%,rgba(8,11,14,.50) 41%,rgba(8,11,14,.08) 51%,transparent 59%)}
.process-video .scene-photo img{object-position:57% 58%;filter:contrast(1.10);transform:translate3d(0,var(--image-offset,0px),0) scale(1.08)}
.process-video .step-grid h3{font-size:23px;line-height:1.2}
.process-video .step-grid p{font-size:16px;line-height:1.6;margin-top:10px;color:#f0f1f2}
.process-video .step-grid{margin-bottom:24px}
.process-video .button{gap:18px}
.campaign-planning,.ongoing-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center}
.campaign-planning{padding-block:75px 80px;border-top:1px solid #3b454e}
.campaign-planning h2,.ongoing-layout h2,.agency-continuity h2{font-size:clamp(36px,4.1vw,60px);line-height:1.08;max-width:13em;margin-block:20px 25px}
.campaign-planning p,.ongoing-layout p,.agency-continuity p{font-size:17px;line-height:1.7}
.deliverable-options{padding-left:20px;margin-block:23px;line-height:1.8}
.deliverable-options li::marker{color:var(--accent)}
.campaign-work{margin:0}.campaign-work img{width:100%;height:auto}.campaign-work figcaption{font-size:14px;line-height:1.65;margin-top:17px;color:#d0d8de}
.campaign-work .text-link{font-size:14px;padding-top:8px}.campaign-planning .scope-note,.campaign-work .scope-note{font-size:14px;color:#c8d1d8;line-height:1.7;margin-top:14px}
.ongoing-collaboration{background:#182630;border-block:1px solid #465764;padding-block:70px}
.ongoing-layout{grid-template-columns:1fr 1.15fr}.ongoing-layout .button{margin-top:25px}
.agency-continuity{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding-block:20px 70px}
.agency-continuity>div{border-top:1px solid #4b5966;padding-top:25px}
.agency-continuity h2{font-size:clamp(34px,3.7vw,52px)}
.agency-teaser h3{font-size:24px;line-height:1.2;margin-top:24px;margin-bottom:14px;max-width:18em}
@media(max-width:1100px) and (min-width:901px){.process-video .process-content{padding-right:min(56vw,806.4px);width:calc(100% - 64px)}.process-video .process-content>h2{font-size:40px}.process-video .step-grid h3{font-size:22px}.process-video .step-grid p{font-size:15px}}
@media(max-width:900px){.process-video{display:block;min-height:0;padding:0;background:#101820}.process-video .scene-photo{position:relative;inset:auto;height:clamp(400px,66vw,570px);background:#101820}.process-video .scene-photo img{height:100%;object-position:center 55%;transform:translate3d(0,var(--image-offset,0px),0) scale(1.08)}.process-video .process-environment-shade{display:none}.process-video .process-content{padding:34px 0 48px;width:calc(100% - 48px)}.process-video .process-content>h2{font-size:clamp(36px,6vw,48px);max-width:14em}.process-video .step-grid{max-width:640px}.campaign-planning,.ongoing-layout,.agency-continuity{gap:35px}}
@media(max-width:700px){.process-video .scene-photo{height:clamp(460px,118vw,650px)}.process-video .scene-photo img{height:100%;object-position:center;filter:contrast(1.10)}.process-video .process-content{padding:32px 0 45px}.process-video .process-content>h2{font-size:39px}.process-video .step-grid h3{font-size:23px}.process-video .step-grid p{font-size:16px}.campaign-planning,.ongoing-layout,.agency-continuity{grid-template-columns:1fr;gap:30px}.campaign-planning{padding-block:45px 50px}.campaign-planning h2,.ongoing-layout h2,.agency-continuity h2{font-size:39px;max-width:13em}.ongoing-collaboration{padding-block:45px}.agency-continuity{padding-block:15px 45px;gap:35px}.agency-teaser h3{font-size:25px}}
.reduce-motion .process-video .scene-photo img{transform:scale(1.025)}
@media(prefers-reduced-motion:reduce){.process-video .scene-photo img{transform:scale(1.025)}}
