/* One public visual layer. No admin selectors, data rules, or theme mutations. */
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage,.casePage,.legalPage){
  --public-width:1220px;--public-gutter:clamp(20px,4vw,56px);--public-space:clamp(64px,7.5vw,108px);
  --public-text:var(--brand-text);--public-muted:var(--brand-stone);--public-line:#30302e;--public-surface:#0d0d0c;
  --accent:var(--site-accent,#f2f2ef);--acid:var(--site-accent,#f2f2ef);--public-accent:var(--site-accent,#f2f2ef);color:var(--public-text);background:#050505;
}
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage,.casePage,.legalPage) :is(a,button,input,textarea,select,summary):focus-visible{outline:2px solid var(--public-accent);outline-offset:5px}
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage) :is(h1,h2,h3){text-wrap:balance;overflow-wrap:break-word}
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage) :is(p,li,figcaption){overflow-wrap:break-word}
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage,.casePage,.legalPage) :is(a,button,summary){touch-action:manipulation}
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage) img{height:auto}
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage) :is(.storyLabel,.eyebrow){display:flex;align-items:center;gap:12px;color:var(--public-accent);font-size:11px;font-weight:700;line-height:1.5;letter-spacing:.16em;text-transform:uppercase;margin:0 0 24px}
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage) :is(.storyLabel,.eyebrow)::before{content:"";flex:none;width:24px;height:1px;background:currentColor}
:is(.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage) :is(.portfolioHero,.portfolioFilters,.publicMediaGrid,.portfolioEmpty,.portfolioPagination,.caseIndexHero,.caseIndexGrid,.caseFeatureMedia,.caseEditorial,.caseObjective,.caseDarkSplit,.caseApproach,.caseStrategy,.caseDeliverables,.caseResults,.caseTestimonials,.caseTakeaway,.caseFeaturedMedia,.caseExploreMore,.caseCredits,.caseExternalLinks,.caseStudyCta,.storySplit,.storyFeature,.storyExtensions,.relatedProjects,.serviceClose,.journalHero,.journalGrid,.secondaryPageCta),.clientPublicMedia{width:min(var(--public-width),calc(100% - var(--public-gutter)*2));margin-inline:auto}
.publicHome .shell{width:min(var(--public-width),calc(100% - var(--public-gutter)*2))}

/* Brand navigation: existing destinations, accessible compact mobile disclosure. */
.publicHome .nav,.secondaryNav{width:min(1220px,calc(100% - clamp(20px,4vw,56px)*2));min-height:88px;height:auto;display:flex;gap:24px;align-items:center;justify-content:space-between;padding-block:16px;border-color:#30302e}
.publicHome .logo,.secondaryNav .secondaryBrand img{display:block;width:190px;height:58px;object-fit:contain;object-position:left center}
.publicHome .links,.secondaryNav .secondaryLinks{gap:24px;font-size:11px;letter-spacing:.06em}
.secondaryNav .secondaryContext{margin-right:auto;color:#a09e98;font-size:10px;letter-spacing:.14em}
.publicHome .links>a,.secondaryNav .secondaryLinks>a{min-height:44px;display:inline-flex;align-items:center;border-bottom:1px solid transparent}
.publicHome .links>a:not(.navcta):hover,.secondaryNav .secondaryLinks>a:not(.secondaryCta):hover,.secondaryNav .secondaryLinks>a:not(.secondaryCta)[aria-current]{color:var(--public-accent,#f2f2ef);border-bottom-color:currentColor}
.publicHome .links>.navcta,.secondaryNav .secondaryCta{min-height:46px;border:1px solid #5c5c56;padding:0 18px;color:var(--brand-text);font-weight:700}
.publicMenu{display:none;position:relative;z-index:30;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.publicMenu>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;border:1px solid #ffffffb3;padding:0 14px;cursor:pointer;color:#080808;background:rgba(255,255,255,.78);backdrop-filter:blur(12px);font-size:11px;font-weight:800;letter-spacing:.1em}
.publicMenu>summary::-webkit-details-marker{display:none}.publicMenu>summary::after{content:none}.publicMenu .menuOpened{display:none}.publicMenu[open] .menuOpened{display:inline}.publicMenu[open] .menuClosed{display:none}
.publicMenu .menuIcon{position:relative;display:block;width:16px;height:12px;border-block:2px solid currentColor}.publicMenu .menuIcon:after{content:"";position:absolute;left:0;right:0;top:3px;border-top:2px solid currentColor}
.publicMenu[open] .menuIcon{border:0}.publicMenu[open] .menuIcon:before,.publicMenu[open] .menuIcon:after{content:"";position:absolute;left:0;right:0;top:5px;border-top:2px solid currentColor;transform:rotate(45deg)}.publicMenu[open] .menuIcon:after{transform:rotate(-45deg)}
.publicMenu>summary:hover,.publicMenu>summary:focus-visible{background:#fff}.publicMenu>summary:active{background:#d2d2cf}.publicMenu[open]>summary{background:#f2f2ef}
.publicMenu>div{position:absolute;right:0;top:calc(100% + 8px);width:230px;max-width:calc(100vw - 40px);max-height:calc(100dvh - 110px - env(safe-area-inset-bottom));overflow-y:auto;padding:8px;background:#10100f;border:1px solid #41413d;box-shadow:0 18px 40px #0008}
.publicMenu a{display:flex;align-items:center;min-height:48px;padding:12px 14px;color:#d9d7d0;border-bottom:1px solid #292927}
.publicMenu a:last-child{border-bottom:0}.publicMenu a:hover,.publicMenu a[aria-current]{color:var(--public-accent,#f2f2ef);background:#1b1b18}
.publicSkip{position:fixed;z-index:100;top:12px;left:20px;transform:translateY(-180%);padding:14px 20px;background:#f2efe8;color:#050505;font-size:14px}.publicSkip:focus{transform:none}

/* Shared page-title scale and comfortable editorial copy. */
:is(.portfolioPage,.caseIndex,.journalPage) :is(.portfolioHero,.caseIndexHero,.journalHero){padding-block:clamp(64px,7vw,108px) clamp(46px,5vw,72px)}
:is(.portfolioPage,.caseIndex,.journalPage) :is(.portfolioHero,.caseIndexHero,.journalHero) h1{max-width:1040px;font-size:clamp(46px,7.4vw,106px);font-weight:560;line-height:.98;letter-spacing:-.055em;margin:18px 0 28px}
:is(.portfolioPage,.caseIndex,.journalPage) :is(.portfolioHero>p:last-of-type,.caseIndexHero>span,.journalHero>span){display:block;max-width:760px;font-size:clamp(17px,1.45vw,19px);line-height:1.7;color:var(--public-muted)}

/* Homepage: keep the journey and controls, refine rhythm rather than add sections. */
.publicHome .hero{min-height:0;padding-block:clamp(48px,5vw,72px) clamp(52px,5vw,76px)}
.publicHome .hero h1{max-width:1100px;font-size:clamp(42px,6.5vw,88px);line-height:1.02;letter-spacing:-.05em;font-weight:600}
.publicHome .hero .intro{position:relative;max-width:670px;font-size:18px;line-height:1.7;color:var(--brand-stone);margin-top:30px}
.publicHome .hero .actions{position:relative;display:flex;gap:12px;align-items:center;margin-top:32px}
.publicHome .hero::after{right:12px;bottom:-35px;font-size:clamp(190px,26vw,360px);line-height:1}
.publicHome .section{padding-block:var(--public-space);border-color:var(--public-line)}
.publicHome .head{gap:clamp(28px,5vw,70px);margin-bottom:44px;align-items:start}
.publicHome :is(.head h2,.foundation h2,.lanes h2,.founderCopy h2,.quote h2,.contact h2){font-size:clamp(34px,4.8vw,66px);line-height:1.06;letter-spacing:-.045em;font-weight:500;max-width:800px}
.publicHome :is(.headCopy,.foundationText>p,.lanes>p,.founderCopy>p,.quoteIntro){color:var(--public-muted);font-size:17px;line-height:1.75;max-width:700px}
.publicHome .foundation,.publicHome .founder{gap:clamp(32px,5vw,76px)}
.publicHome .serviceCard{min-height:310px;padding:30px;transition:border-color .2s ease,background-color .2s ease}
.publicHome .serviceCard h3{font-size:clamp(27px,3vw,38px);line-height:1.1;margin-top:56px}
.publicHome .serviceCard p{color:var(--brand-stone);font-size:16px;line-height:1.65}
.publicHome .serviceCard:hover{background-color:#131310}.publicHome .serviceCard b{min-height:44px;display:inline-flex;align-items:center;color:var(--public-accent)}
.publicHome .laneGrid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:32px}
.publicHome .laneGrid span{min-height:196px;padding:23px;background:#0d0d0c}.publicHome .laneGrid small{font-size:12px;line-height:1.6;color:var(--brand-stone)}
.publicHome .photoNote{border-left-color:var(--public-accent);padding:24px 28px}.publicHome .photoNote p{color:var(--brand-stone)}
.publicHome .process{display:block;max-width:920px;margin-left:auto}.publicHome .step{display:grid;grid-template-columns:46px minmax(140px,.6fr) 1.4fr;gap:24px;align-items:baseline;padding:26px 0;border:0;border-bottom:1px solid #292929;background:none;box-shadow:none}.publicHome .step h3{font-size:25px;font-weight:500;margin:0}.publicHome .step p{font-size:16px;line-height:1.65;color:var(--brand-stone);margin:0}.publicHome .step>span{font-size:14px;color:var(--brand-stone)}.publicHome #process{padding-top:40px}.publicHome #process:before{display:none}
@media(max-width:600px){.publicHome .step{grid-template-columns:32px minmax(0,1fr);gap:8px 16px}.publicHome .step p{grid-column:2}.publicHome #process{padding-top:20px}}
/* Owner-supplied atmosphere, not a client deliverable or a claim about studio ownership. */
.publicHome .processLayout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,64px);align-items:start}
.publicHome .processAtmosphere{margin:26px 0 0;min-width:0;border-radius:14px;overflow:hidden;background:#151515;box-shadow:0 20px 40px -12px #000b}
.publicHome .processAtmosphere img{display:block;width:100%;height:auto;aspect-ratio:1280/731;object-fit:contain;opacity:1;filter:none}
.publicHome .processLayout .process{min-width:0;width:100%;max-width:none;margin:0}
.publicHome .processLayout .step{grid-template-columns:32px minmax(0,1fr);gap:8px 16px}
.publicHome .processLayout .step p{grid-column:2}
@media(max-width:900px){.publicHome .processLayout{grid-template-columns:1fr;gap:24px}.publicHome .processAtmosphere{margin:0}}

/* Finished-work cards respect orientation without unused grid columns. */
.portfolioPage .publicMediaGrid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;column-gap:30px;row-gap:48px;padding-bottom:var(--public-space)}
.portfolioPage .publicMediaCard,.portfolioPage .publicMediaCard.orientation-square,.portfolioPage .publicMediaCard.orientation-portrait{grid-column:auto;min-width:0}
.portfolioPage .publicMediaCard.orientation-portrait{width:min(350px,100%);justify-self:center}
:is(.portfolioPage,.servicePage) .publicMediaCard{background:#0b0b0a;border:1px solid #30302e;transition:border-color .2s ease}
:is(.portfolioPage,.servicePage) .publicMediaCard:hover{border-color:#68685f}
:is(.portfolioPage,.servicePage) .publicMediaInfo{padding:24px}
:is(.portfolioPage,.servicePage) .publicMediaInfo small{font-size:10px;line-height:1.7;letter-spacing:.1em;color:var(--brand-stone)}
:is(.portfolioPage,.servicePage) .publicMediaInfo :is(h2,h3){font-size:clamp(24px,2.5vw,34px);line-height:1.12;font-weight:500;letter-spacing:-.03em;margin:12px 0}
:is(.portfolioPage,.servicePage) .publicMediaInfo p{font-size:15px;line-height:1.65;color:var(--public-muted)}
:is(.portfolioPage,.servicePage) .publicMediaInfo a{display:inline-flex;align-items:center;min-height:44px;padding:8px 0 4px;margin-top:12px;border:0;border-bottom:1px solid #6a6a5e;color:var(--public-accent);font-size:11px}
:is(.portfolioPage,.servicePage) .publicMediaVisual :is(iframe,video){aspect-ratio:16/9}
:is(.portfolioPage,.servicePage) .orientation-portrait .publicMediaVisual :is(iframe,video){aspect-ratio:9/16}
:is(.portfolioPage,.servicePage) .orientation-square .publicMediaVisual :is(iframe,video){aspect-ratio:1}
:is(.portfolioPage,.servicePage) .type-photo .publicMediaVisual img{aspect-ratio:auto;height:auto;object-fit:contain;max-height:700px}
:is(.portfolioPage,.servicePage) .type-audio .publicMediaVisual{display:grid;grid-template-columns:120px minmax(0,1fr);gap:0;align-items:center}
:is(.portfolioPage,.servicePage) .type-audio .publicMediaVisual:has(>audio:only-child){grid-template-columns:1fr}
:is(.portfolioPage,.servicePage) .type-audio .publicMediaVisual img{aspect-ratio:1;object-fit:contain}
.portfolioPage .portfolioFilters{gap:8px;padding-block:26px 34px;flex-wrap:wrap;overflow:visible}
.portfolioPage .portfolioFilters a{min-height:44px;display:flex;align-items:center;padding:10px 17px;font-size:11px;border-color:#464640;transition:border-color .2s ease,color .2s ease}
.portfolioPage .portfolioFilters a:hover{border-color:var(--public-accent)}
.portfolioPage .portfolioFilters a[aria-current]{background:color-mix(in srgb,var(--public-accent) 8%,#080808);color:var(--public-accent);border-color:color-mix(in srgb,var(--public-accent) 55%,#333)}
.portfolioPage .portfolioEmpty{padding-block:50px var(--public-space)}.portfolioPage .portfolioEmpty h2{max-width:720px;font-size:clamp(28px,4vw,48px);line-height:1.12}
.portfolioPage .portfolioPagination a{min-height:44px;display:inline-flex;align-items:center}
.publicHome .homepageFeaturedGrid{gap:38px 28px;align-items:start}
.publicHome .homepageFeaturedGrid .projectCard.orientation-portrait{width:min(285px,100%)}
.publicHome .homepageFeaturedGrid .projectMedia{aspect-ratio:16/9;border:1px solid #30302e}
.publicHome .homepageFeaturedGrid .orientation-portrait .projectMedia{aspect-ratio:9/16}.publicHome .homepageFeaturedGrid .orientation-square .projectMedia{aspect-ratio:1}
.publicHome .homepageFeaturedGrid .type-photo .projectMedia{aspect-ratio:auto;min-height:0}.publicHome .homepageFeaturedGrid .type-photo img{object-fit:contain;max-height:560px}
.publicHome .homepageFeaturedGrid .projectCard h3{font-size:clamp(24px,2.3vw,30px);line-height:1.14;margin-block:12px}
.publicHome .homepageFeaturedGrid .projectCard small{font-size:10px;line-height:1.6;color:var(--brand-stone)}.publicHome .homepageFeaturedGrid .projectCard p{font-size:15px;line-height:1.65;color:var(--public-muted)}
.publicHome .projectAction{min-height:44px;display:inline-flex;align-items:center;padding:7px 0}

/* Case Study layout remains the Version 62 system, with restrained shared spacing. */
.caseStudyPage :is(.caseEditorial,.caseObjective,.caseDarkSplit,.caseApproach,.caseStrategy,.caseDeliverables,.caseResults,.caseTestimonials,.caseTakeaway,.caseFeaturedMedia){padding-block:var(--public-space);border-color:var(--public-line)}
.caseStudyPage .caseStudyHero{min-height:0;background-position:center 62%}
.caseStudyPage .caseStudyHero>div{width:min(var(--public-width),calc(100% - var(--public-gutter)*2));padding-block:clamp(90px,11vw,160px) 68px}
.caseStudyPage .caseStudyHero h1{font-size:clamp(48px,7.8vw,112px);line-height:.98;letter-spacing:-.055em;max-width:1080px}
.caseStudyPage .caseStudyHero h2{font-size:clamp(20px,2.4vw,30px);line-height:1.35;max-width:760px;margin-bottom:38px}
.caseStudyPage .caseFacts{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:24px}.caseStudyPage .caseFacts b{color:#c2bfb5;font-size:11px}.caseStudyPage .caseFacts span{color:#dedad1}
.caseStudyPage .caseServiceTags span{font-size:11px;line-height:1.45;border-color:#4c4b44}
.caseStudyPage .caseFeatureMedia{padding:0 0 var(--public-space);border:0}.caseStudyPage .caseFeatureMedia img{aspect-ratio:auto;height:auto;max-height:720px;object-fit:contain;background:#0b0b0a}
.caseStudyPage :is(.caseEditorial,.caseDarkSplit,.caseObjective,.caseDeliverables,.caseResults,.caseTakeaway){gap:clamp(32px,5vw,72px)}
.caseStudyPage :is(.caseEditorial div>p,.caseDarkSplit>p:last-child,.caseStrategy>p:not(.storyLabel),.caseResultsCopy>p:last-child){font-size:18px;line-height:1.8;max-width:74ch;color:var(--public-muted)}
.caseStudyPage .caseObjectiveLead h2{font-size:clamp(26px,2.7vw,38px);line-height:1.25}
.caseStudyPage .caseApproach article{padding:28px 24px;border-color:#30302e}.caseStudyPage .caseApproach article:first-child{padding-left:0}.caseStudyPage .caseApproach article:last-child{border-right:0;padding-right:0}
.caseStudyPage .caseApproach h3{font-size:25px;font-weight:500;margin-top:24px}.caseStudyPage .caseApproach article p{font-size:16px;line-height:1.75;color:var(--public-muted)}
.caseStudyPage .caseStrategy blockquote{font-size:clamp(28px,3.5vw,48px);line-height:1.2;max-width:920px}
.caseStudyPage .caseMetrics article{padding:26px;background:#10100e;border-color:#414138}.caseStudyPage .caseMetrics span{font-size:12px;line-height:1.6;margin:0 0 16px}.caseStudyPage .caseMetrics strong{font-size:clamp(32px,3.4vw,48px);line-height:1.08}
.caseStudyPage .caseTakeaway>p{font-size:clamp(18px,1.65vw,22px);line-height:1.7;max-width:70ch}.caseStudyPage .caseTakeaway{background:linear-gradient(90deg,color-mix(in srgb,var(--site-accent,#f2f2ef) 3%,transparent),transparent 70%)}
.caseStudyPage .caseFeaturedMedia figcaption{color:#bab7ae;font-size:13px;line-height:1.65}
.caseStudyPage .caseFeaturedFilm.hero.orientation-portrait{max-width:440px;margin-inline:auto}.caseStudyPage .caseFeaturedFilm.hero.orientation-portrait :is(iframe,video,.caseVideoPoster){aspect-ratio:9/16}
.caseStudyPage .caseFeaturedFilm.hero.orientation-square{max-width:760px;margin-inline:auto}.caseStudyPage .caseFeaturedFilm.hero.orientation-square :is(iframe,video,.caseVideoPoster){aspect-ratio:1}
.caseStudyPage .caseAudioGrid article:not(:has(>img)){grid-template-columns:1fr}
.caseStudyPage .caseExploreMore{padding-block:64px;gap:28px}.caseStudyPage .caseExploreMore h2{font-size:clamp(30px,3.2vw,46px);line-height:1.1}
.caseIndex .caseIndexGrid{gap:28px;padding-bottom:var(--public-space)}
.caseIndex .caseIndexCard{border-color:#343430}.caseIndex .caseIndexContent{min-height:310px;padding:28px}
.caseIndex .caseIndexImage{aspect-ratio:16/10}.caseIndex .caseIndexImage img{object-fit:cover;object-position:var(--case-image-position,center 62%);filter:none;background:#0b0b0a;transform:none}
.caseIndex .caseIndexCard:hover .caseIndexImage img{transform:none;filter:brightness(1.06)}
.caseIndex .caseIndexCard:hover,.caseIndex .caseIndexCard:focus-visible{border-color:#777865}
.caseIndex .caseIndexContent h2{font-size:clamp(28px,3.1vw,42px);line-height:1.1;margin:16px 0}.caseIndex .caseIndexContent small{font-size:10px;line-height:1.7;letter-spacing:.1em}
.caseIndex .caseIndexContent p{font-size:16px;color:var(--public-muted)}.caseIndex .caseIndexContent em{font-size:12px;color:var(--brand-stone)}.caseIndex .caseIndexContent b{padding-top:26px}

/* Services retain their content and distinctive existing imagery. */
.servicePage .serviceHero{min-height:0}.servicePage .serviceHero>div{width:min(var(--public-width),calc(100% - var(--public-gutter)*2));padding-block:clamp(80px,8vw,120px)}
.servicePage .serviceHero h1{font-size:clamp(46px,6.8vw,96px);line-height:1.02;letter-spacing:-.05em;max-width:1040px}
.servicePage .serviceHero span{font-size:18px;line-height:1.75;color:#cac7bd;max-width:720px}
.servicePage :is(.storySplit,.storyFeature,.storyExtensions,.relatedProjects,.serviceClose){padding-block:var(--public-space);border-color:var(--public-line)}
.servicePage :is(.storySplit,.storyFeature){gap:clamp(32px,5vw,72px)}
.servicePage :is(.storySplit,.storyFeature,.storyExtensions,.relatedProjects,.serviceClose) h2{font-size:clamp(34px,4.2vw,60px);line-height:1.08;letter-spacing:-.04em;max-width:900px}
.servicePage .storySplit div p,.servicePage .storyExtensions>p{font-size:18px;line-height:1.75;color:var(--public-muted)}
.servicePage .storyFeature li{font-size:18px;line-height:1.55}.servicePage .storyFeature li span{padding-top:4px}
.servicePage .storyExtensions>div span{border-color:#414139;color:#d4d1c8;line-height:1.5}
.servicePage .serviceRelatedWork>div{gap:24px;align-items:start}.servicePage .serviceRelatedWork .publicMediaCard{grid-column:auto;min-width:0}
.servicePage .serviceRelatedWork .orientation-portrait{max-width:285px;justify-self:center;width:100%}
.servicePage .serviceRelatedWork .publicMediaInfo :is(h2,h3){font-size:25px;line-height:1.15}.servicePage .serviceRelatedWork .publicMediaInfo{padding:20px}
.servicePage .serviceRelatedWork>a.relatedWorkAll{display:inline-flex;min-height:48px;padding:12px 0;margin-top:30px;border:0;border-bottom:1px solid #6a6a5e;color:var(--public-accent)}

/* Client voices and marks: no forced relationships or cropped logos. */
.publicHome .clientGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;border:0}
.publicHome .clientGrid a,.publicHome .clientGrid div{min-height:180px;padding:24px;border:1px solid #33332f;background:#0d0d0c}
.publicHome .clientGrid img{width:100%;height:120px;max-width:210px;object-fit:contain;filter:none;transform:none}
.publicHome .clientGrid a:hover img{filter:none;transform:none}.publicHome .clientGrid a:hover{border-color:#74746a;background:#121210}
.publicHome .clientGrid .featuredClientCard{display:flex;min-width:0;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:10px;text-decoration:none}.publicHome .featuredClientLogo{width:100%;min-height:82px;display:grid;place-items:center;margin-bottom:7px;padding:8px;background:transparent}.publicHome .featuredClientLogo[data-logo-background="dark"]{background:#080808}.publicHome .featuredClientLogo[data-logo-background="light"]{background:#f3f1ec}.publicHome .featuredClientLogo img{height:82px}.publicHome .featuredClientLogo i{font-size:34px;color:var(--brand-text);font-style:normal;font-weight:800}.publicHome .featuredClientCard>strong{font-size:19px;color:var(--brand-text)}.publicHome .featuredClientCard>small{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--brand-stone);line-height:1.45}.publicHome .featuredClientCard>b{margin-top:auto;padding-top:7px;color:var(--public-accent);font-size:10px;letter-spacing:.09em;text-transform:uppercase}
.publicHome .testimonials{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:36px}
.publicHome .testimonial{padding:28px 0;border-color:#56564b}.publicHome .testimonial blockquote{font-size:clamp(19px,2.1vw,26px);line-height:1.55;max-width:36ch}
.publicHome .testimonial cite{font-size:13px;line-height:1.7;color:#c5c1b6;margin-top:22px}.publicHome .testimonial .testimonialImage{width:60px;height:60px;object-fit:contain;margin:0 0 20px}
.publicHome .testimonial a{display:inline-flex;align-items:center;min-height:44px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid #6a6a5e;margin:16px 18px 0 0;color:var(--public-accent)}
.caseStudyPage .caseTestimonials blockquote{padding:clamp(24px,4vw,52px);border-color:#41413b;background:#0d0d0c}.caseStudyPage .caseTestimonials blockquote p{font-size:clamp(21px,2.7vw,34px);line-height:1.5;max-width:52ch}.caseStudyPage .caseTestimonials cite{font-size:12px;line-height:1.7}

/* Journal reading system; empty and draft visibility stays unchanged. */
.journalPage .journalGrid{gap:30px;padding-bottom:var(--public-space)}.journalPage .journalCard img{object-fit:contain;background:#0c0c0b}
.journalPage .journalCard h2{font-size:28px;line-height:1.15}.journalPage .journalCard p{font-size:16px;line-height:1.7;color:var(--public-muted)}
.journalPage .journalEmpty{padding:clamp(28px,4vw,52px);background:#0d0d0c;border-color:#3b3b36}.journalPage .journalEmpty h2{font-size:clamp(30px,4vw,52px);line-height:1.1}
.articlePage article{width:min(820px,calc(100% - var(--public-gutter)*2));padding-block:var(--public-space)}.articlePage h1{font-size:clamp(40px,6vw,78px);line-height:1.06}
.articlePage .articleExcerpt{font-size:20px;line-height:1.65}.articlePage .articleHeroImage{height:auto;max-height:680px;object-fit:contain}.articlePage .articleBody{font-size:18px;line-height:1.85;max-width:72ch}

/* Clear conversion hierarchy and readable, unchanged inquiry fields. */
.publicHome .quote{padding:var(--public-space) max(var(--public-gutter),calc((100vw - var(--public-width))/2));gap:clamp(32px,6vw,86px);background:#edece6;color:#121210}
.publicHome .quote .quoteIntro{color:#575750}.publicHome .quote form{gap:25px}.publicHome .field label{font-size:12px;font-weight:700;line-height:1.6;letter-spacing:.04em;color:#373732}
.publicHome .field :is(input,textarea,select){font-size:16px;line-height:1.6;padding:13px 0;color:#121210;border-color:#99998f;min-height:48px}.publicHome .field textarea{min-height:128px}
.publicHome .field :is(input,textarea,select):focus-visible{outline:2px solid #30302b;outline-offset:5px;border-color:#121210}
.publicHome .quote button:focus-visible{outline-color:#121210}.publicHome .quote button:disabled{opacity:.65;cursor:wait}
.publicHome .formError{font-size:15px;line-height:1.6;color:#86291e}.publicHome .formSuccess{padding:28px;border-color:#31312b;background:#fff7}.publicHome .formSuccess h3{font-size:30px;line-height:1.15}.publicHome .formSuccess p{font-size:17px;line-height:1.65}.publicHome .formSuccess small{font-size:13px;line-height:1.65;color:#54544c}
:is(.publicHome,.servicePage,.caseStudyPage,.journalPage,.articlePage) :is(.button,.serviceClose>a,.caseStudyCta>a,.secondaryPageCta>a,.articleCta){min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:15px 22px;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;line-height:1.5;transition:background-color .2s ease,border-color .2s ease}
:is(.servicePage,.caseStudyPage,.journalPage) :is(.serviceClose,.caseStudyCta,.secondaryPageCta){padding-block:var(--public-space);border-top:1px solid var(--public-line);text-align:center}
:is(.caseStudyPage,.journalPage) :is(.caseStudyCta h2,.secondaryPageCta h2){font-size:clamp(34px,4.5vw,64px);line-height:1.08;max-width:850px;margin-inline:auto}
.journalPage .secondaryPageCta>a{margin-top:28px;background:#f2efe8;color:#050505}
.publicHome .contact{padding-block:var(--public-space)}.publicHome .socialButton{border-radius:0;min-height:46px;display:inline-flex;align-items:center;border-color:#51514a}.publicHome .socialButton:hover{border-color:var(--public-accent)}
.publicHome .footer,.secondaryFooter{width:min(1220px,calc(100% - clamp(20px,4vw,56px)*2));padding-block:52px 32px;border-color:#30302e;color:#b7b3a9;font-size:12px;line-height:1.7}
.publicHome .footer{display:grid;grid-template-columns:170px minmax(200px,1fr) auto;gap:30px;align-items:center}.publicHome .footer img,.secondaryFooter img{width:145px;max-height:56px;object-fit:contain}
.publicHome .footer>span:last-child{max-width:280px;font-size:11px;color:#a8a499}.secondaryFooter p{font-size:14px;color:#b7b3a9}.secondaryFooter small{font-size:11px;color:#a8a499}
.secondaryFooter>div:nth-child(2){flex-wrap:wrap}.secondaryFooter a{display:inline-flex;min-height:44px;align-items:center}

@media(max-width:1050px){
  .secondaryNav .secondaryContext{display:none}
  .publicHome .homepageFeaturedGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .servicePage .serviceRelatedWork>div{grid-template-columns:repeat(2,minmax(0,1fr))}
  .publicHome .clientGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .caseStudyPage .caseExploreMore{grid-template-columns:1fr}.caseStudyPage .caseExploreMore a{justify-self:start;min-height:44px;display:flex;align-items:center}
}
@media(max-width:800px){
  .publicHome .nav,.secondaryNav{gap:12px;flex-wrap:wrap;min-height:78px;padding-block:12px}
  .publicHome .logo,.secondaryNav .secondaryBrand img{width:140px;height:44px}
  .publicHome .links,.secondaryNav .secondaryLinks{margin-left:auto}
  .publicHome .links>a:not(.navcta),.secondaryNav .secondaryLinks>a:not(.secondaryCta){display:none}
  .publicHome .links>.navcta,.secondaryNav .secondaryCta{padding-inline:12px;font-size:10px}
  .publicMenu{display:block;margin-left:auto;order:3;width:auto;flex:0 0 auto}.publicMenu>summary{min-height:46px}.publicHome .nav,.secondaryNav{padding-top:max(12px,env(safe-area-inset-top))}
  .publicHome .hero .actions{align-items:stretch;flex-direction:row;flex-wrap:wrap}
  .publicHome .head,.publicHome .foundation,.publicHome .founder,.publicHome .quote{grid-template-columns:1fr;gap:28px}
  .publicHome .head{margin-bottom:32px}.publicHome .serviceGrid{grid-template-columns:1fr}.publicHome .serviceCard:last-child{grid-column:auto}
  .publicHome .serviceCard{min-height:280px;padding:26px}.publicHome .serviceCard h3{margin-top:40px}
  .portfolioPage .publicMediaGrid{gap:32px 22px}.portfolioPage .publicMediaCard.orientation-portrait{width:min(310px,100%)}
  .caseStudyPage .caseApproach article{padding:26px 0!important;border-right:0}.caseStudyPage .caseFacts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .publicHome .footer{grid-template-columns:1fr;gap:20px}.secondaryFooter{gap:24px}
}
@media(max-width:620px){
  :is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage){--public-gutter:20px;--public-space:64px}
  .publicHome .hero h1{font-size:clamp(40px,11vw,60px);line-height:1.04;letter-spacing:-.045em}.publicHome .hero .intro{font-size:17px}.publicHome .hero .actions{flex-direction:column}
  .publicHome .homepageFeaturedGrid,.portfolioPage .publicMediaGrid,.servicePage .serviceRelatedWork>div{grid-template-columns:1fr;row-gap:34px}
  .publicHome .homepageFeaturedGrid .projectCard.orientation-portrait,.portfolioPage .publicMediaCard.orientation-portrait,.servicePage .serviceRelatedWork .orientation-portrait{width:min(320px,100%)}
  .publicHome .laneGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.publicHome .laneGrid span{padding:18px;min-height:200px}.publicHome .laneGrid b{font-size:16px}
  .publicHome .clientGrid{gap:10px}.publicHome .clientGrid a,.publicHome .clientGrid div{padding:15px;min-height:130px}.publicHome .clientGrid img{height:95px}
  .publicHome .process{grid-template-columns:1fr;gap:30px}.publicHome .step h3{margin-top:14px}
  .caseStudyPage .caseStudyHero>div{padding-block:76px 48px}.caseStudyPage .caseStudyHero h1{font-size:clamp(42px,11.5vw,65px);line-height:1.02}.caseStudyPage .caseStudyHero h2{font-size:20px;margin-bottom:28px}
  .caseStudyPage .caseFacts{grid-template-columns:1fr}.caseStudyPage .caseFeatureMedia img{max-height:580px}
  .caseIndex .caseIndexContent{min-height:0;padding:24px}.caseIndex .caseIndexContent h2{font-size:31px}
  .caseStudyPage .caseAudioGrid article{min-width:0}.caseStudyPage .caseAudioGrid audio{min-width:0}
  .publicHome .quote form{grid-template-columns:1fr}.publicHome .quote .field{grid-column:auto}
  :is(.portfolioPage,.servicePage) .type-audio .publicMediaVisual{grid-template-columns:90px minmax(0,1fr)}
}
@media(max-width:480px){.publicHome .nav>.links,.secondaryNav>.secondaryLinks{display:none}}
@media(prefers-reduced-motion:reduce){
  html:has(:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage)){scroll-behavior:auto}
  :is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage) *, :is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage) *::before, :is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage) *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* Pass 8: manually curated homepage lead media and public photography viewer. */
.homepageSpotlight{margin:0 0 clamp(30px,5vw,60px)}.homepageSpotlight[hidden]{display:none}.clientPublicMedia{padding-block:clamp(54px,7vw,100px)}.clientPublicMedia>h2{font-size:clamp(38px,6vw,78px);margin:0 0 34px}.clientPublicMedia>.publicMediaGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.clientPublicMedia .publicMediaInfo{padding:18px}.clientPublicMedia .publicMediaCard{border:1px solid #30302e;background:#0b0b0a}
.homepageSpotlightCard{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.65fr);border:1px solid #373734;background:#090909;overflow:hidden}.homepageSpotlightCard .projectMedia{min-height:clamp(340px,52vw,680px);background:#050505}.homepageSpotlightCard .projectMedia :is(img,iframe,video){width:100%;height:100%;object-fit:contain;border:0}.homepageSpotlightCard .spotlightCopy{display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(26px,4vw,52px)}.homepageSpotlightCard .spotlightCopy small{color:var(--public-accent);text-transform:uppercase;letter-spacing:.12em}.homepageSpotlightCard .spotlightCopy h3{font-size:clamp(30px,4vw,58px);line-height:1;letter-spacing:-.045em;margin:16px 0}.homepageSpotlightCard .spotlightCopy p{color:var(--public-muted);line-height:1.7}.homepageSpotlightCard .spotlightCopy a{margin-top:20px;color:var(--public-accent)}
.publicHome .founder.isCopyOnly{grid-template-columns:minmax(0,780px)}.publicHome .founderVideo iframe{display:block;width:100%;height:100%;border:0}.publicHome .photoNote a{display:inline-block;margin-top:14px;color:var(--public-accent);font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.publicHome .homepageFeaturedGrid .projectCard{width:100%!important;max-width:none!important}.publicHome .homepageFeaturedGrid .projectMedia,.publicHome .homepageFeaturedGrid .orientation-portrait .projectMedia,.publicHome .homepageFeaturedGrid .orientation-square .projectMedia,.publicHome .homepageFeaturedGrid .type-photo .projectMedia{aspect-ratio:16/10!important;min-height:0!important}.publicHome .homepageFeaturedGrid .projectMedia :is(img,video,iframe){width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important}.publicHome :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--public-accent);outline-offset:4px}
.publicPhotoButton{position:relative;display:block;width:100%;height:100%;padding:0;border:0;background:#050505;color:#fff;cursor:pointer;overflow:hidden}.publicPhotoButton>img{display:block;width:100%;height:auto;object-fit:contain}.photoExpandHint{position:absolute;left:12px;bottom:12px;padding:8px 10px;background:#080808cc;border:1px solid #ffffff38;color:#fff;font-size:10px;letter-spacing:.08em;text-transform:uppercase;opacity:0;transform:translateY(4px);transition:.2s}.publicPhotoButton:hover .photoExpandHint,.publicPhotoButton:focus-visible .photoExpandHint{opacity:1;transform:none}
.publicWatermark{position:absolute;inset:0;display:flex;padding:3%;pointer-events:none;align-items:flex-end;justify-content:flex-end}.publicWatermark.position-top-left{align-items:flex-start;justify-content:flex-start}.publicWatermark.position-top-right{align-items:flex-start;justify-content:flex-end}.publicWatermark.position-bottom-left{align-items:flex-end;justify-content:flex-start}.publicWatermark.position-center{align-items:center;justify-content:center}.publicWatermark img{height:auto!important;object-fit:contain!important;filter:drop-shadow(0 1px 5px #000a)}
body.lightboxOpen{overflow:hidden}.publicLightbox{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:max(72px,calc(env(safe-area-inset-top) + 62px)) clamp(22px,3vw,44px) max(24px,env(safe-area-inset-bottom));background:#030303f7;backdrop-filter:blur(12px);color:#fff}.publicLightbox[hidden]{display:none}.publicLightbox figure{grid-area:1/1;width:min(100%,1500px);height:100%;max-height:calc(100dvh - 104px);min-width:0;min-height:0;margin:auto;display:grid;grid-template-rows:minmax(0,1fr) auto auto;place-items:center;align-content:center;gap:10px;text-align:center}.lightboxImageFrame{position:relative;width:100%;height:100%;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center;overflow:visible}.lightboxImageFrame>img{display:block;width:auto!important;height:auto!important;max-width:100%!important;max-height:calc(100dvh - 154px)!important;object-fit:contain!important;margin:auto}.publicLightbox figcaption{max-width:72ch;color:#d3d1ca;font-size:13px}.publicLightbox small{color:#888}.publicLightbox button{position:absolute;z-index:2;min-width:48px;min-height:48px;border:1px solid #ffffff45;background:#111d;color:#fff;font-size:20px;cursor:pointer;backdrop-filter:blur(8px)}.publicLightbox .lightboxClose{right:max(18px,env(safe-area-inset-right));top:max(18px,env(safe-area-inset-top));padding:0 15px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.publicLightbox .lightboxPrevious{left:max(18px,env(safe-area-inset-left));top:50%;transform:translateY(-50%)}.publicLightbox .lightboxNext{right:max(18px,env(safe-area-inset-right));top:50%;transform:translateY(-50%)}
@media(max-width:760px){.homepageSpotlightCard{grid-template-columns:1fr}.homepageSpotlightCard .projectMedia{min-height:0;aspect-ratio:auto}.homepageSpotlightCard .spotlightCopy{padding:24px}.clientPublicMedia>.publicMediaGrid{grid-template-columns:1fr}.publicLightbox{padding:max(64px,calc(env(safe-area-inset-top) + 58px)) 12px max(68px,calc(env(safe-area-inset-bottom) + 58px))}.publicLightbox figure{width:100%;max-height:calc(100dvh - 132px)}.lightboxImageFrame>img{max-width:100%!important;max-height:calc(100dvh - 182px)!important}.publicLightbox button{min-width:44px;min-height:44px}.publicLightbox .lightboxPrevious{left:calc(50% - 52px);top:auto;bottom:max(10px,env(safe-area-inset-bottom));transform:none}.publicLightbox .lightboxNext{right:calc(50% - 52px);top:auto;bottom:max(10px,env(safe-area-inset-bottom));transform:none}.publicLightbox figcaption{font-size:12px;line-height:1.45}.photoExpandHint{opacity:1}}

/* Unified public-grid preview frames; hero/spotlight media remain intentionally native. */
:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid{align-items:stretch}
:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid .publicMediaCard,:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid .publicMediaCard.orientation-portrait,:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid .publicMediaCard.orientation-square{width:auto;max-width:none;justify-self:stretch}
:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid .publicMediaVisual{position:relative;display:grid;grid-template-columns:1fr;grid-template-rows:1fr;aspect-ratio:16/10;overflow:hidden;background:#080808}
:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid .publicMediaVisual>.publicPhotoButton{width:100%;height:100%;overflow:hidden}
:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid .publicMediaVisual>.publicPhotoButton>img,:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid .caseVideoPoster>img{width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;transform-origin:center}
:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid .caseVideoPoster{width:100%;height:100%;aspect-ratio:auto;border:0;overflow:hidden}
:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid .publicMediaVisual>video,:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid .publicMediaVisual>iframe{width:100%;height:100%;aspect-ratio:auto;object-fit:contain;background:#050505}
:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid .type-audio .publicMediaVisual{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;aspect-ratio:16/10}
:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid .audioArtworkFrame{position:relative;display:grid;place-items:center;min-width:0;min-height:0;overflow:hidden}
:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid .audioArtworkFrame>img{width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;transform-origin:center}
:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid .audioCardControls{padding:10px 12px;background:#111;border-top:1px solid #292929}
:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaGrid .audioCardControls audio{display:block;width:100%;margin:0;min-height:44px}
.projectHeroMedia .publicMediaVisual{aspect-ratio:auto!important}.projectHeroMedia .publicMediaVisual>.publicPhotoButton{height:auto;max-height:78vh}.projectHeroMedia .publicMediaVisual>.publicPhotoButton>img{height:auto;max-height:78vh;object-fit:contain;transform:none!important}
.publicLightbox{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important}.publicLightbox>figure{grid-column:1!important;grid-row:1!important}
@media(max-height:500px) and (orientation:landscape){.publicLightbox{padding:12px 76px}.publicLightbox figure{max-height:calc(100dvh - 24px)}.lightboxImageFrame>img{max-height:calc(100dvh - 40px)!important}.publicLightbox .lightboxClose{top:8px;right:8px}.publicLightbox .lightboxPrevious{left:10px;top:50%;bottom:auto;transform:translateY(-50%)}.publicLightbox .lightboxNext{right:10px;top:50%;bottom:auto;transform:translateY(-50%)}}

/* Vertical-thumbnail hotfix: repeatable cards always crop their preview edge-to-edge. */
:is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.casePhotoEditorial) .publicPhotoButton{position:relative;display:block;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;background:#080808}
:is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.casePhotoEditorial) .publicPhotoButton>img,.publicHome .homepageFeaturedGrid .projectMedia>img{position:absolute;inset:0;display:block;width:100%!important;height:100%!important;min-width:100%;min-height:100%;max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:50% 50%;transform-origin:center}

/* Client logos are uncropped brand assets, independent of media thumbnails. */
.publicHome .featuredClientLogo{box-sizing:border-box;height:112px;min-height:112px;padding:16px;display:grid;place-items:center;overflow:hidden}
.publicHome .featuredClientLogo>img{position:static!important;inset:auto!important;display:block!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;transform:none!important;filter:none!important}
@media(max-width:600px){.publicHome .featuredClientLogo{height:96px;min-height:96px;padding:12px}}
:is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia) .publicMediaVisual,.casePhotoEditorial .publicPhotoButton,.publicHome .homepageFeaturedGrid .projectMedia{aspect-ratio:16/10;overflow:hidden}
@media(max-width:800px){:is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia) .publicMediaCard,.publicHome .homepageFeaturedGrid .projectCard{width:100%!important;max-width:none!important;justify-self:stretch!important}}

/* Layered vertical presentation for the homepage's standardized six-card grid. */
.publicHome .homepageFeaturedGrid .projectCard.portrait-layered .projectMedia{position:relative;display:grid;place-items:center;isolation:isolate;background:#080808}
.publicHome .homepageFeaturedGrid .homepageLayeredBackground{position:absolute!important;inset:-4%!important;z-index:0!important;width:108%!important;height:108%!important;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;object-fit:cover!important;transform:scale(1.04)!important;filter:blur(15px) saturate(.72) brightness(.52);opacity:.55}
.publicHome .homepageFeaturedGrid .homepageLayeredForeground{position:relative!important;inset:auto!important;z-index:1!important;display:block!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important;filter:drop-shadow(0 12px 28px #0009)}
.publicHome .homepageFeaturedGrid .publicPhotoButton.isLayeredPortrait,.publicHome .homepageFeaturedGrid .homepageLayeredVideo{position:relative;z-index:1;width:100%;height:100%;padding:0;border:0;background:transparent;display:grid;place-items:center;overflow:hidden;cursor:pointer}
.publicHome .homepageFeaturedGrid .homepageLayeredVideo>img{grid-area:1/1}.publicHome .homepageFeaturedGrid .homepageLayeredVideo>span{grid-area:1/1;position:relative;z-index:2;padding:11px 14px;background:#f4f2ed;color:#090909;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}

/* Version 121: restrained dimensional layer; presentation only. */
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage,.casePage,.legalPage,.selectedClientsPage){--surface-raised:#11110f;--surface-hover:#171714;--edge-soft:rgba(255,255,255,.1);--edge-highlight:rgba(255,255,255,.17);--shadow-raised:0 16px 40px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.045);--shadow-hover:0 22px 52px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.075)}
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage) :is(.button,.navcta,.secondaryCta,.portfolioCaseCta,.projectAction,.relatedWorkAll,.caseExploreMore a,.secondaryPageCta a){border-radius:8px;box-shadow:0 8px 22px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.09);transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease,color .18s ease}
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage) :is(.button,.navcta,.secondaryCta,.portfolioCaseCta,.projectAction,.relatedWorkAll,.caseExploreMore a,.secondaryPageCta a):hover{box-shadow:0 13px 30px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.14);border-color:#8a8981;transform:translateY(-1px)}
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage) :is(.button,.navcta,.secondaryCta,.portfolioCaseCta,.projectAction,.relatedWorkAll,.caseExploreMore a,.secondaryPageCta a):active{transform:translateY(0);box-shadow:0 4px 12px rgba(0,0,0,.3),inset 0 1px 2px rgba(0,0,0,.25)}
.publicHome .serviceGrid{border:1px solid var(--edge-soft);border-radius:14px;overflow:visible;background:#080807;box-shadow:var(--shadow-raised)}
.publicHome .serviceCard{border-color:var(--edge-soft);background-color:var(--surface-raised);box-shadow:inset 0 1px 0 rgba(255,255,255,.035);transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.publicHome .serviceCard:first-child{border-top-left-radius:13px}.publicHome .serviceCard:nth-child(2){border-top-right-radius:13px}.publicHome .serviceCard:last-child{border-radius:0 0 13px 13px}
.publicHome .serviceCard:hover,.publicHome .serviceCard:focus-visible{background-color:var(--surface-hover);border-color:var(--edge-highlight);box-shadow:var(--shadow-hover);z-index:2;transform:translateY(-2px)}
.publicHome .lanes{padding:clamp(28px,4vw,48px);border:1px solid var(--edge-soft);border-radius:16px;background:linear-gradient(145deg,#0e0e0c,#090908);box-shadow:var(--shadow-raised)}
.publicHome .laneGrid{border:0;gap:10px}.publicHome .laneGrid span{border:1px solid var(--edge-soft);border-radius:12px;background:linear-gradient(145deg,#151512,#0c0c0b);box-shadow:0 10px 25px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.04)}
.publicHome .photoNote{border:1px solid var(--edge-soft);border-left:2px solid var(--public-accent);border-radius:10px;background:#141411;box-shadow:0 10px 28px rgba(0,0,0,.24)}
.publicHome .clientGrid{border:0;gap:14px}.publicHome .clientGrid .featuredClientCard,.publicHome .clientGrid>a,.publicHome .clientGrid>div{border:1px solid var(--edge-soft);border-radius:14px;background:linear-gradient(145deg,#141412,#0c0c0b);box-shadow:var(--shadow-raised);transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease;overflow:hidden}
.publicHome .clientGrid .featuredClientCard:hover,.publicHome .clientGrid .featuredClientCard:focus-visible,.publicHome .clientGrid>a:hover,.publicHome .clientGrid>a:focus-visible{background:#171714;border-color:var(--edge-highlight);box-shadow:var(--shadow-hover);transform:translateY(-2px)}
:is(.selectedClientGrid>a,.clientProjectLink,.clientWorkCard,.caseIndexCard,.relatedProjectCard,.publicMediaCard){border-radius:14px!important;border-color:var(--edge-soft)!important;background:linear-gradient(145deg,#11110f,#0a0a09)!important;box-shadow:var(--shadow-raised);transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease,transform .2s ease}
:is(.selectedClientGrid>a,.clientProjectLink,.clientWorkCard,.caseIndexCard,.relatedProjectCard,.publicMediaCard):is(:hover,:focus-within){border-color:var(--edge-highlight)!important;box-shadow:var(--shadow-hover)}
.selectedClientVisual,.clientPublicHero>img{border-radius:10px;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.servicePage :is(.storyFeature,.storyExtensions,.serviceRelatedWork,.serviceClose),.portfolioCaseStudyEnd{border-radius:14px;border:1px solid var(--edge-soft);background:linear-gradient(145deg,#10100e,#090908);box-shadow:var(--shadow-raised)}
.servicePage :is(.storyFeature,.storyExtensions,.serviceRelatedWork,.serviceClose){padding-inline:clamp(22px,4vw,48px)}.portfolioCaseStudyEnd{padding:clamp(28px,5vw,58px)}
@media(max-width:800px){.publicHome .serviceCard:first-child{border-radius:13px 13px 0 0}.publicHome .serviceCard:nth-child(2){border-radius:0}.publicHome .serviceCard:hover,.publicHome .serviceCard:focus-visible{transform:none}.publicHome .lanes{padding:22px 16px}.publicHome .laneGrid{gap:8px}}
@media(prefers-reduced-motion:reduce){:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage) *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.publicHome .serviceCard:hover,.publicHome .clientGrid a:hover{transform:none}}

/* Scoped surface refinement: elevation belongs to wrappers, never the artwork. */
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.selectedClientsPage){--surface-raised:#151719;--surface-hover:#1d2023;--edge-soft:rgba(255,255,255,.025);--edge-highlight:rgba(255,255,255,.12);--shadow-raised:0 14px 32px -8px rgba(0,0,0,.65),0 0 30px rgba(170,178,184,.025);--shadow-hover:0 19px 38px -8px rgba(0,0,0,.72),0 0 36px rgba(170,178,184,.035)}
.publicHome .serviceGrid{gap:12px;border:0;background:transparent;box-shadow:none}
.publicHome .serviceCard,.publicHome .serviceCard:first-child,.publicHome .serviceCard:nth-child(2),.publicHome .serviceCard:last-child{border:1px solid var(--edge-soft);border-radius:14px;background-color:var(--surface-raised);box-shadow:var(--shadow-raised);isolation:isolate;overflow:hidden}
.publicHome .serviceCard{background-clip:padding-box;display:flex;flex-direction:column}.publicHome .serviceCard b{margin-top:auto;padding-top:18px;align-self:flex-start}
/* A source-only visual override: retain the saved service record and its original image. */
.publicHome .serviceCard[href="/services/podcast-production-post"]{background-image:url('/cinematic-concepts-20260908/podcast.jpg')!important;background-position:center}
.publicHome .serviceCard[href="/services/event-coverage"]{background-image:url('/cinematic-concepts-20260908/event-owner-replacement-20260909.png')!important}
.publicHome .serviceCard[href="/services/brand-storytelling"]{background-image:url('/cinematic-concepts-20260908/brand.jpg')!important}
.publicHome .serviceCard[href="/services/social-media-content"]{background-image:url('/cinematic-concepts-20260908/social.jpg')!important}
.publicHome .serviceCard[href="/services/commercial-production"]{background-image:url('/cinematic-concepts-20260908/commercial.jpg')!important}
.servicePage[data-service="podcast-production-post"] .serviceHero{background-image:linear-gradient(90deg,#080b0df5,#080b0dc9 48%,#080b0d33),url('/cinematic-concepts-20260908/on-air.jpg')!important;background-position:center;background-size:cover}
/* Bleed the contrast layer through the border box; the card alone clips its silhouette. */
.publicHome .serviceCard:before{inset:-1px;border-radius:0;pointer-events:none;background:linear-gradient(115deg,rgba(21,23,25,.94),rgba(21,23,25,.7));transition:background .2s ease}
.publicHome .serviceCard:is(:hover,:focus-visible):before{background:linear-gradient(115deg,rgba(29,32,35,.91),rgba(29,32,35,.63))}
.publicHome .serviceCard:is(:hover,:focus-visible){background-color:var(--surface-hover);border-color:var(--edge-highlight);box-shadow:var(--shadow-hover)}
.publicHome .serviceCard small{color:#c0c2c3;font-size:12px}
.publicHome .lanes{background:#101214;border-color:transparent;box-shadow:var(--shadow-raised)}
.publicHome .laneGrid span{background:transparent;border:0;border-top:1px solid #303235;border-radius:0;box-shadow:none;cursor:default;min-height:0;padding:20px 12px 20px 0}.publicHome .laneGrid small{font-size:14px}.publicHome .laneGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
@media(max-width:480px){.publicHome .laneGrid{grid-template-columns:1fr}}
.publicHome .photoNote{border-color:transparent;border-left-color:#777d80;background:#191c1e}
.publicHome .clientGrid .featuredClientCard,.publicHome .clientGrid>a,.publicHome .clientGrid>div{background:var(--surface-raised);border-color:var(--edge-soft)}
.publicHome .clientGrid .featuredClientCard:is(:hover,:focus-visible),.publicHome .clientGrid>a:is(:hover,:focus-visible){background:var(--surface-hover)}
:is(.selectedClientGrid>a,.clientProjectLink,.clientWorkCard,.caseIndexCard,.relatedProjectCard,.publicMediaCard){background:var(--surface-raised)!important;border-color:var(--edge-soft)!important}
:is(.selectedClientGrid>a,.clientProjectLink,.clientWorkCard,.caseIndexCard,.relatedProjectCard):is(:hover,:focus-visible),.publicMediaCard:focus-within{background:var(--surface-hover)!important;border-color:var(--edge-highlight)!important;box-shadow:var(--shadow-hover)}
.selectedClientGrid>a{display:flex;flex-direction:column;min-width:0}
.selectedClientGrid>a>.selectedClientVisual{flex-shrink:0;border-color:transparent;box-shadow:none}
.selectedClientGrid>a>b{margin-top:auto;padding-top:22px;align-self:flex-start}
.caseIndex .caseIndexContent{background:inherit;border-radius:0 0 13px 13px}
.caseIndex .caseIndexImage{border-radius:13px 13px 0 0}
.caseIndex .caseIndexCard:is(:hover,:focus-visible) .caseIndexImage img{filter:none;transform:none}
:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaInfo{background:inherit;border-radius:0 0 13px 13px}
:is(.portfolioPage,.servicePage,.selectedClientsPage) .publicMediaVisual{border-radius:13px 13px 0 0}
.servicePage :is(.storyFeature,.storyExtensions,.serviceRelatedWork,.serviceClose),.portfolioCaseStudyEnd{border-color:transparent;background:#141618}
.publicHome :is(.button.secondary,.navcta),.secondaryNav .secondaryCta{border-color:#34383b;box-shadow:0 7px 20px -6px #0009}
:is(.selectedClientGrid>a,.clientProjectLink,.clientWorkCard,.caseIndexCard,.relatedProjectCard,.publicHome .serviceCard):focus-visible{outline:2px solid var(--public-accent,#f2f2ef);outline-offset:4px}
@media(hover:hover) and (prefers-reduced-motion:no-preference){:is(.selectedClientGrid>a,.clientProjectLink,.clientWorkCard,.caseIndexCard,.relatedProjectCard):hover{transform:translateY(-2px)}}
:is(.selectedClientGrid>a,.clientProjectLink,.clientWorkCard,.caseIndexCard,.relatedProjectCard,.publicHome .serviceCard):active{transform:none;box-shadow:0 6px 18px -6px #000a}
@media(max-width:800px){.publicHome .serviceGrid{gap:10px}}
@media(prefers-reduced-motion:reduce){:is(.selectedClientGrid>a,.clientProjectLink,.clientWorkCard,.caseIndexCard,.relatedProjectCard,.publicHome .serviceCard){transform:none!important;transition:none!important}.publicHome .serviceCard:before{transition:none!important}}
/* Partner identity stays uncropped; a separate tonal panel grounds the copy. */
.selectedClientGrid>a{padding:0;overflow:hidden}
.selectedClientGrid>a>.selectedClientVisual{margin:24px 24px 0;padding:32px;border-radius:10px}
.selectedClientGrid .partnerCardCopy,.publicHome .featuredClientCard .partnerCardCopy{display:flex;flex:1;flex-direction:column;align-items:flex-start;align-self:stretch;padding:24px;background:linear-gradient(135deg,#41464a 0%,#303539 48%,#25292d 100%);box-shadow:inset 0 1px 0 #ffffff08;border-radius:0 0 13px 13px}
.selectedClientGrid .partnerCardCopy p,.publicHome .featuredClientCard .partnerCardCopy small{color:#d1d2d0}
.selectedClientGrid .partnerCardCopy b,.publicHome .featuredClientCard .partnerCardCopy b{margin-top:auto;padding-top:22px;align-self:flex-start}
.publicHome .clientGrid .featuredClientCard{padding:0;gap:0}
.publicHome .featuredClientCard .featuredClientLogo{height:120px;min-height:120px;margin:0;padding:14px}
.publicHome .featuredClientCard .partnerCardCopy{padding:20px;gap:10px}
.publicHome .featuredClientCard .partnerCardCopy strong{font-size:19px;line-height:1.3}
.publicHome .featuredClientCard .partnerCardCopy small{margin:0;line-height:1.5}
.publicHome .featuredClientCard .partnerCardCopy b{font-size:11px;letter-spacing:.09em;text-transform:uppercase}
/* Complete Featured Media silhouettes, separate from the unchanged player/crop layers. */
.publicHome .homepageFeaturedGrid{align-items:stretch;gap:28px}
.publicHome .homepageFeaturedGrid .projectCard{display:flex;flex-direction:column;padding:0;border:1px solid #292e32;border-radius:16px;background:#181b1e;box-shadow:0 18px 38px -8px #000c,0 2px 4px #0008;overflow:hidden;min-width:0}
.publicHome .homepageFeaturedGrid .projectMedia{flex:none;border:0;border-radius:15px 15px 0 0}
.publicHome .homepageFeaturedGrid .homepageMediaCopy{display:flex;flex:1;flex-direction:column;align-items:flex-start;min-width:0;padding:24px;background:linear-gradient(140deg,#2c3136,#1a1e22 75%);border-radius:0 0 15px 15px}
.publicHome .homepageFeaturedGrid .homepageMediaCopy>small{margin-top:0}
.publicHome .homepageFeaturedGrid .homepageMediaCopy>p{color:#c5c7c8}
.publicHome .homepageFeaturedGrid .projectActions{margin-top:auto;padding-top:22px;width:100%;gap:12px}
.publicHome .homepageSpotlightCard{padding:0;border:1px solid #30363b;border-radius:18px;background:#1b1f23;box-shadow:0 24px 48px -12px #000e,0 2px 5px #0008}
.publicHome .homepageSpotlightCard .spotlightCopy{background:linear-gradient(135deg,#333a40,#20252a)}
.publicHome .homepageFeaturedGrid .projectAction.case,.publicHome .homepageSpotlightCard .spotlightCopy>a{display:inline-flex;align-items:center;justify-content:flex-start;align-self:flex-start;flex:0 1 auto;width:auto;max-width:100%;height:auto;min-height:44px;padding:8px 0;border:0;border-bottom:1px solid currentColor;border-radius:0;background:transparent;color:var(--work-link-gold,var(--brand-accent));font-size:12px;font-weight:600;line-height:1.45;letter-spacing:.06em;white-space:normal;overflow-wrap:anywhere;text-align:left;text-transform:uppercase;text-decoration:none;box-shadow:none}
.publicHome .homepageFeaturedGrid .projectAction.case:is(:hover,:focus-visible),.publicHome .homepageSpotlightCard .spotlightCopy>a:is(:hover,:focus-visible){background:transparent;color:var(--work-link-gold,var(--brand-accent));text-decoration:underline;text-underline-offset:4px;box-shadow:none}
/* A broad, low-profile beveled divider replaces the old hairline, only on the homepage. */
.publicHome main>.section{position:relative;border-top:0}
.publicHome main>.section:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;border-radius:999px;background:linear-gradient(90deg,transparent,#33393d 15%,#596166 50%,#33393d 85%,transparent);box-shadow:0 2px 2px #000b,0 -1px 0 #ffffff05;pointer-events:none}
.publicHome .nav{border-bottom:0;box-shadow:0 3px 0 -1px #363c40,0 6px 9px -5px #000}
@media(max-width:800px){.selectedClientGrid>a>.selectedClientVisual{padding:16px}.publicHome .homepageFeaturedGrid .homepageMediaCopy{padding:20px}.selectedClientGrid .partnerCardCopy{padding:22px}}

/* Inquiry is the one warm accent; media actions and theme accents retain their hierarchy. */
:root{--inquiry-surface:var(--brand-button);--inquiry-hover:var(--brand-button-hover);--inquiry-pressed:var(--brand-button-pressed);--inquiry-ink:var(--brand-button-ink)}
.publicHome :is(.button[href="#inquiry"],.navcta),.secondaryNav .secondaryCta,.publicMenu a[href$="#inquiry"],.servicePage .serviceClose>a,.caseStudyPage .caseStudyCta>a{background:var(--inquiry-surface);color:var(--inquiry-ink);border:1px solid transparent;font-weight:750;text-shadow:none}
.publicHome :is(.button[href="#inquiry"],.navcta):is(:hover,:focus-visible),.secondaryNav .secondaryCta:is(:hover,:focus-visible),.publicMenu a[href$="#inquiry"]:is(:hover,:focus-visible),.servicePage .serviceClose>a:is(:hover,:focus-visible),.caseStudyPage .caseStudyCta>a:is(:hover,:focus-visible){background:var(--inquiry-hover);color:var(--inquiry-ink)}
.publicHome :is(.button[href="#inquiry"],.navcta):active,.secondaryNav .secondaryCta:active,.publicMenu a[href$="#inquiry"]:active{background:var(--inquiry-pressed)}
.publicMenu a[href$="#inquiry"]:after{color:inherit}.secondaryNav .secondaryCta{border-radius:8px}
.publicHome .hero .secondary{background:#202020;color:var(--brand-text);border-color:#353535}
.publicHome .hero .secondary:hover{background:#2a2a2a}
.publicHome .quote .eyebrow{text-shadow:none}.publicHome .quote .eyebrow:before{background:#62625b;box-shadow:none}
.publicHome #work>.head{margin-bottom:32px}.publicHome #work{padding-top:48px}
.publicHome :is(.eyebrow,.storyLabel),.caseIndex .storyLabel,.portfolioPage .storyLabel{font-size:12px}
.publicHome #work>.head .eyebrow:before{background:var(--inquiry-surface);box-shadow:0 2px 4px #0008}
.caseIndex .caseIndexContent{display:flex;flex:1;flex-direction:column;align-items:flex-start}.caseIndex .caseIndexContent>b{margin-top:auto;padding-top:24px}.caseIndex .caseIndexCard{display:flex;flex-direction:column}
/* Clip decorative spill without creating a scroll container that defeats sticky navigation. */
.secondaryPage{overflow:clip}
.servicePage :is(.storyFeature,.storyExtensions){border-radius:0;border:0;background:transparent;box-shadow:none;padding-inline:0}.servicePage .storyExtensions>div span{border:0;border-left:2px solid #454545;border-radius:0;background:transparent}
.publicHome .relatedWorkAll,.servicePage .relatedWorkAll,.caseStudyPage .caseExploreMore a{box-shadow:none!important;border-radius:0;transform:none!important}
/* One small step in elevation, without brighter outlines or darker artwork. */
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.selectedClientsPage){--shadow-raised:0 17px 35px -8px #000b,0 3px 3px -2px #0009,0 0 32px #aab2b807;--shadow-hover:0 21px 41px -8px #000c,0 3px 4px -2px #0009,0 0 36px #aab2b809}
.publicHome .homepageFeaturedGrid .projectCard{box-shadow:0 21px 40px -8px #000c,0 3px 5px #0008}
.publicHome .homepageSpotlightCard{box-shadow:0 27px 51px -12px #000e,0 3px 6px #0008}
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage,.selectedClientsPage) :is(.button,.navcta,.secondaryCta,.portfolioCaseCta,.projectAction,.relatedWorkAll,.caseExploreMore a,.secondaryPageCta a),.publicHome .homepageSpotlightCard .spotlightCopy>a{box-shadow:0 10px 24px -5px #0008,0 3px 0 -1px #0009,inset 0 1px 0 #ffffff12}
.publicHome .photoNote{box-shadow:0 12px 25px -8px #0009,0 2px 3px #0005}
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage,.selectedClientsPage) :is(.eyebrow,.storyLabel){text-shadow:0 2px 2px #000b;filter:none}
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.journalPage,.articlePage,.selectedClientsPage) :is(.eyebrow,.storyLabel)::before{height:4px;border-radius:3px;background:linear-gradient(#b6bdc1,#697278);box-shadow:0 3px 4px #000a,inset 0 1px 0 #ffffff30}
.publicHome .logo,.secondaryNav .secondaryBrand img{filter:drop-shadow(0 3px 2px #000b) drop-shadow(0 1px 0 #ffffff12)}
/* Keep the existing destinations within a stable, app-like public navigation. */
.publicHome .nav,.secondaryNav{position:sticky;top:0;z-index:80;background:#0c0e10f7;backdrop-filter:blur(16px);border-radius:0 0 12px 12px;box-shadow:0 8px 20px -10px #000e,0 2px 0 -1px #42484b;isolation:isolate}
.publicHome main [id],#public-content{scroll-margin-top:120px}
.publicHome .links,.secondaryNav .secondaryLinks{gap:8px}
.publicHome .links>a:not(.navcta),.secondaryNav .secondaryLinks>a:not(.secondaryCta){padding-inline:10px;border:0;border-radius:7px;transition:background .18s ease,box-shadow .18s ease}
.publicHome .links>a:not(.navcta):is(:hover,:focus-visible,[aria-current]),.secondaryNav .secondaryLinks>a:not(.secondaryCta):is(:hover,:focus-visible,[aria-current]){background:#252a2e;box-shadow:0 4px 10px #0005,inset 0 1px 0 #ffffff0b}
.publicMenu>summary{border:1px solid #ffffff12;border-radius:10px;background:linear-gradient(#f3f4f5,#d3d7db);box-shadow:0 10px 22px -5px #000a,0 3px 0 -1px #555b61,inset 0 1px 0 #fff8}
.publicMenu[open]>summary{background:linear-gradient(#e6e9ec,#c8cdd2)}
.publicMenu>div{width:320px;padding:10px;gap:7px;border:1px solid #343b40;border-radius:14px;background:linear-gradient(145deg,#20262b,#111619);box-shadow:0 22px 50px #000b}
.publicMenu[open]>div{display:grid}
.publicMenu a{min-height:52px;gap:16px;padding:14px 16px;border:1px solid #ffffff06;border-radius:9px;background:linear-gradient(140deg,#2c3339,#21272c);box-shadow:0 4px 9px #0005;color:var(--brand-text);font-size:13px;letter-spacing:.035em;text-transform:none}
.publicMenu a::after{content:'›';margin-left:auto;color:#b8c3cc;font-size:20px;line-height:1}
.publicMenu a:is(:hover,:focus-visible,[aria-current]){background:linear-gradient(140deg,#3a444c,#2c353c);color:#fff;border-color:#677681}
.publicMenu a[aria-current]{box-shadow:inset 3px 0 #becbd5,0 4px 9px #0005}
.publicMenu a:active{background:#1a2229;box-shadow:inset 0 2px 5px #0008}
.publicMenu>summary:focus-visible,.publicMenu a:focus-visible{outline:2px solid #f2f2ef;outline-offset:3px}
.publicHome .homepageSpotlightCard .spotlightPoster{position:relative;display:block;width:100%;height:100%;min-height:inherit;padding:0;border:0;border-radius:inherit;overflow:hidden;background:#080a0c;cursor:pointer}
.publicHome .homepageSpotlightCard .spotlightPoster img{display:block;width:100%;height:100%;object-fit:contain}
.spotlightPoster>span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:10px;padding:13px 22px;max-width:90%;font-size:13px;font-weight:750;white-space:nowrap}
@media(max-width:1000px){.secondaryNav .secondaryContext{display:none}.publicHome .links,.secondaryNav .secondaryLinks{gap:2px}.publicHome .links>a:not(.navcta),.secondaryNav .secondaryLinks>a:not(.secondaryCta){padding-inline:6px}}
@media(max-width:800px){.publicHome .nav,.secondaryNav{flex-wrap:nowrap;gap:10px;padding-inline:12px;width:calc(100% - 24px)}.publicHome .links,.secondaryNav .secondaryLinks{display:none}.publicMenu{position:static}.publicMenu>div{position:absolute;top:calc(100% + 8px);right:0;width:min(360px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 112px - env(safe-area-inset-bottom));overscroll-behavior:contain}.publicHome .homepageSpotlightCard .spotlightPoster{aspect-ratio:16/9;min-height:0}.publicHome main [id],#public-content{scroll-margin-top:105px}}
@media(prefers-reduced-motion:reduce){.publicMenu a,.publicMenu>summary,.publicHome .links>a,.secondaryNav .secondaryLinks>a{transition:none!important}}

/* Pale gold inquiry actions with a restrained satin finish. No animated shine. */
.publicHome :is(.button[href="#inquiry"],.navcta),.secondaryNav .secondaryCta,.publicMenu a[href$="#inquiry"],.servicePage .serviceClose>a,.caseStudyPage .caseStudyCta>a{border-color:var(--brand-accent-edge);box-shadow:0 9px 22px -7px #000b,0 3px 0 #514d40,inset 0 1px 0 #eee0c64d,inset 0 -1px 0 #514d4066;transition:box-shadow .18s ease,transform .18s ease}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.publicHome :is(.button[href="#inquiry"],.navcta):hover,.secondaryNav .secondaryCta:hover,.publicMenu a[href$="#inquiry"]:hover,.servicePage .serviceClose>a:hover,.caseStudyPage .caseStudyCta>a:hover{transform:translateY(-1px);box-shadow:0 12px 26px -7px #000c,0 3px 0 #514d40,inset 0 1px 0 #eee0c666}}
.publicHome :is(.button[href="#inquiry"],.navcta):active,.secondaryNav .secondaryCta:active,.publicMenu a[href$="#inquiry"]:active,.servicePage .serviceClose>a:active,.caseStudyPage .caseStudyCta>a:active{background:var(--inquiry-pressed);transform:none;box-shadow:0 4px 12px -5px #000b,0 1px 0 #514d40,inset 0 2px 3px #514d4044}

/* Charcoal belongs only to public still previews. Homepage placements have owner-controlled strength.
   Never tint a player, partner logo, or opened lightbox. */
:is(.portfolioPage,.selectedClientsPage,.servicePage,.caseStudyPage) :is(.publicPhotoButton,.caseVideoPoster){isolation:isolate}
:is(.portfolioPage,.selectedClientsPage,.servicePage,.caseStudyPage) :is(.publicPhotoButton,.caseVideoPoster)::before,.caseIndex .caseIndexImage::before,.clientPublicPage .clientProjectVisual:has(>img)::before{content:"";position:absolute;inset:0;z-index:2;border-radius:inherit;pointer-events:none;background:#101416;opacity:.56;transition:opacity .2s ease}
:is(.portfolioPage,.selectedClientsPage,.servicePage,.caseStudyPage) :is(.publicPhotoButton,.caseVideoPoster):focus-visible::before,.caseIndex .caseIndexCard:focus-visible .caseIndexImage::before,.clientPublicPage .clientProjectLink:focus-visible .clientProjectVisual::before{opacity:0}
:is(.portfolioPage,.selectedClientsPage,.servicePage,.caseStudyPage) :is(.photoExpandHint,.publicWatermark,.caseVideoPoster>span),:is(.portfolioPage,.selectedClientsPage,.servicePage,.caseStudyPage) .caseVideoPoster::after{z-index:3}
/* Tone episode artwork, including a borrowed logo; never the player or partner-logo tiles. */
:is(.portfolioPage,.selectedClientsPage,.servicePage) .publicMediaCard .audioArtworkFrame{isolation:isolate}
:is(.portfolioPage,.selectedClientsPage,.servicePage) .publicMediaCard .audioArtworkFrame::before{content:"";position:absolute;inset:0;z-index:2;border-radius:inherit;pointer-events:none;background:#101416;opacity:.56;transition:opacity .2s ease}
:is(.portfolioPage,.selectedClientsPage,.servicePage) .publicMediaCard:focus-within .audioArtworkFrame::before{opacity:0}
@media(hover:hover){:is(.portfolioPage,.selectedClientsPage,.servicePage,.caseStudyPage) :is(.publicPhotoButton,.caseVideoPoster):hover::before,.caseIndex .caseIndexCard:hover .caseIndexImage::before,.clientPublicPage .clientProjectLink:hover .clientProjectVisual::before{opacity:0}:is(.portfolioPage,.selectedClientsPage,.servicePage) .publicMediaCard:hover .audioArtworkFrame::before{opacity:0}}
@media(hover:none){:is(.portfolioPage,.selectedClientsPage,.servicePage,.caseStudyPage) :is(.publicPhotoButton,.caseVideoPoster)::before,.caseIndex .caseIndexImage::before,.clientPublicPage .clientProjectVisual:has(>img)::before{opacity:.44}:is(.portfolioPage,.selectedClientsPage,.servicePage) .publicMediaCard .audioArtworkFrame::before{opacity:.44}}
@media(prefers-reduced-motion:reduce){:is(.portfolioPage,.selectedClientsPage,.servicePage,.caseStudyPage) :is(.publicPhotoButton,.caseVideoPoster,.audioArtworkFrame)::before,.caseIndex .caseIndexImage::before,.clientPublicPage .clientProjectVisual:has(>img)::before{transition:none}.publicHome :is(.button[href="#inquiry"],.navcta),.secondaryNav .secondaryCta,.publicMenu a[href$="#inquiry"],.servicePage .serviceClose>a,.caseStudyPage .caseStudyCta>a{transition:none;transform:none}}

.caseIndex .caseIndexImage,.clientPublicPage .clientProjectVisual{position:relative;isolation:isolate}

/* Cinematic reference review: editorial image-led public surfaces; no admin selectors. */
:root{--homepage-charcoal-gradient:linear-gradient(125deg,#030303 0%,#111111 34%,#292929 49%,#131313 65%,#030303 100%);--public-media-gradient:linear-gradient(125deg,#090909d4 0%,#131313b0 45%,#101010c2 70%,#050505d1 100%)}
.publicHome :is(.homepageFeaturedGrid,.homepageSpotlight) :is(.publicPhotoButton,.spotlightPoster,.homepageLayeredVideo,.homepageAudioArtwork){position:relative;isolation:isolate}
.publicHome :is(.homepageFeaturedGrid,.homepageSpotlight) :is(.publicPhotoButton,.spotlightPoster,.homepageLayeredVideo,.homepageAudioArtwork)::before{content:"";position:absolute;inset:0;z-index:2;border-radius:inherit;pointer-events:none;background:var(--homepage-charcoal-gradient);opacity:var(--homepage-gradient-strength,.45);transition:opacity .2s ease}
/* Podcast preview treatment depends on placement, not the artwork's source.
   Actual Creative Partner logos live outside these audio-only selectors. */
.publicHome :is(.homepageFeaturedGrid,.homepageSpotlight) :is(.photoExpandHint,.publicWatermark,.spotlightPoster>span,.homepageLayeredVideo>span){z-index:3}
.publicHome .homepageAudioArtwork{min-height:0;overflow:hidden;width:100%;height:100%}
.publicHome .homepageFeaturedGrid .spotlightPoster{width:100%;height:100%;padding:0;border:0;background:#080808;cursor:pointer}
.publicHome .homepageFeaturedGrid .spotlightPoster>span{position:absolute;left:50%;top:50%;bottom:auto;transform:translate(-50%,-50%);padding:12px 20px}
/* One satin-gray play treatment across public film/reel previews, above the image veil. */
.publicHome .spotlightPoster>span,.publicHome .homepageFeaturedGrid .homepageLayeredVideo>span,button.caseVideoPoster>span.publicVideoPlayLabel,button.caseVideoPoster:not(:has(>.publicVideoPlayLabel))::after{border:1px solid #ffffff30;border-radius:8px;background:linear-gradient(130deg,#222a3230,transparent 34%,#ffffff35 49%,transparent 65%,#11182045),linear-gradient(175deg,#e0e3e5,#b9c0c6);color:#141b21;box-shadow:0 8px 22px #0008,inset 0 1px 0 #ffffff75,inset 0 -1px 0 #4c555c55;line-height:1.25;white-space:nowrap;font-size:12px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}
.publicHome .spotlightPoster:is(:hover,:focus-visible)>span,.publicHome .homepageFeaturedGrid .homepageLayeredVideo:is(:hover,:focus-visible)>span,.caseVideoPoster:is(:hover,:focus-visible)>.publicVideoPlayLabel{background:linear-gradient(130deg,#222a3220,transparent 34%,#ffffff45 49%,transparent 65%,#11182035),linear-gradient(175deg,#eceeef,#c7cdd2);box-shadow:0 10px 26px #0009,inset 0 1px 0 #ffffff90}
.caseVideoPoster:has(>.publicVideoPlayLabel)::after{content:none;display:none}
button.caseVideoPoster>span.publicVideoPlayLabel,button.caseVideoPoster:not(:has(>.publicVideoPlayLabel))::after{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;display:flex;align-items:center;justify-content:center;width:max-content;height:auto;max-width:calc(100% - 24px);padding:13px 22px;pointer-events:none}
/* Older cached server markup keeps the same treatment until the candidate is published. */
.type-reel button.caseVideoPoster:not(:has(>.publicVideoPlayLabel))::after{content:"Play Reel"}
.publicHome :is(.spotlightPoster,.homepageLayeredVideo):focus-visible{outline:2px solid #f2efe8;outline-offset:-4px}
.publicHome .homepageFeaturedGrid .projectCard.type-audio{border-radius:10px}
.publicHome .homepageFeaturedGrid .type-audio .projectMedia{border-radius:10px 10px 0 0}
.publicHome .homepageFeaturedGrid .type-audio :is(.audioMedia,.homepageAudioArtwork,.homepageAudioArtwork img){border-radius:6px}
.publicHome .homepageFeaturedGrid .type-audio .homepageMediaCopy{border-radius:0 0 10px 10px}
.publicHome :is(.homepageFeaturedGrid,.homepageSpotlight) :is(.publicPhotoButton,.spotlightPoster,.homepageLayeredVideo):focus-visible::before,.publicHome :is(.homepageFeaturedGrid,.homepageSpotlight) .audioMedia:focus-within .homepageAudioArtwork::before{opacity:0}
@media(hover:hover){.publicHome :is(.homepageFeaturedGrid,.homepageSpotlight) :is(.publicPhotoButton,.spotlightPoster,.homepageLayeredVideo,.homepageAudioArtwork):hover::before{opacity:0}}
@media(prefers-reduced-motion:reduce){.publicHome :is(.homepageFeaturedGrid,.homepageSpotlight) :is(.publicPhotoButton,.spotlightPoster,.homepageLayeredVideo,.homepageAudioArtwork)::before{transition:none}}
:root{--inquiry-surface:var(--brand-button);--inquiry-hover:var(--brand-button-hover);--inquiry-pressed:var(--brand-button-pressed);--inquiry-ink:var(--brand-button-ink)}
.publicHome :is(.button[href="#inquiry"],.navcta),.secondaryNav .secondaryCta,.publicMenu a[href$="#inquiry"],.servicePage .serviceClose>a,.caseStudyPage .caseStudyCta>a{border-radius:10px;border-color:#dac6a455;min-height:44px;padding-inline:29px;box-shadow:0 7px 17px -6px #000b,0 2px 0 #514d40,inset 0 1px 0 #eee0c655;font-size:12px;letter-spacing:.035em;text-transform:none}
.publicHome .hero .secondary{border-radius:10px;border:1px solid #dac6a480;background:#101313c9;box-shadow:none;text-transform:none;font-size:12px;letter-spacing:.025em;min-height:44px;padding-inline:29px}
.publicHome .hero.cinematicHero{min-height:500px;padding:64px 42px;border-radius:0 0 10px 10px;display:flex;flex-direction:column;justify-content:center;background:#080b0d;box-shadow:0 18px 40px -25px #000}
.publicHome .cinematicHeroVisual{position:absolute;inset:0;margin:0;z-index:0;pointer-events:none}
/* At 70%, use the same fade and saturation as the Services cards. Zero is unfiltered. */
:is(.publicHome .cinematicHero,.homepageControlledPreview){--hero-service-mix:clamp(0,calc(var(--hero-gradient-strength,.72) / .7),1);--hero-blackout:clamp(0,calc((var(--hero-gradient-strength,.72) - .7) / .3),1);--hero-service-saturation:calc(1 - var(--hero-service-mix) * .6);--hero-service-fade:linear-gradient(180deg,#09090933 0%,#09090970 30%,#090909eb 62%,#090909 100%),linear-gradient(125deg,#0005,#0001 50%,#0004)}
.publicHome .cinematicHeroVisual img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:38% center;opacity:1;filter:saturate(var(--hero-service-saturation))}
.publicHome .cinematicHeroVisual::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:var(--hero-service-fade);opacity:var(--hero-service-mix)}
.publicHome .cinematicHeroVisual:after{content:"";position:absolute;inset:0;z-index:2;background:#090909;opacity:var(--hero-blackout);pointer-events:none}
.publicHome .cinematicHero :is(.heroOverlay,.heroMediaLayer){display:none!important}
.publicHome .cinematicHero:after,.publicHome .cinematicHero .heroArtworkLayer{display:none}
.publicHome .cinematicHero h1{max-width:610px;font-size:clamp(42px,4.6vw,66px);line-height:1.06;letter-spacing:-.025em;text-wrap:balance;color:var(--brand-text);text-transform:uppercase}
.publicHome .cinematicHero .intro{max-width:450px;font-size:16px;line-height:1.65;margin-top:25px;color:var(--brand-stone)}
.publicHome .cinematicHero .actions{margin-top:28px}
.publicHome .section{padding-block:68px}
.publicHome .head{grid-template-columns:1fr;gap:12px;margin-bottom:28px}
.publicHome .head .eyebrow{margin-bottom:0;color:var(--brand-accent)}
.publicHome .head h2{font-size:clamp(30px,3.4vw,46px);line-height:1.1;max-width:850px}
.publicHome .headCopy{font-size:16px;max-width:740px;margin-top:14px}
.publicHome #services{padding-top:16px;border-top:0;box-shadow:none;padding-bottom:32px}
.publicHome #services>.head{position:static;width:auto;height:auto;padding:0;margin:0 0 28px;overflow:visible;clip-path:none;white-space:normal;display:block}
.publicHome #services>.head .eyebrow{margin-bottom:12px}
.publicHome #services>.head h2{font-size:clamp(1.6rem,2.6vw,2rem);line-height:1.2;max-width:32ch;text-wrap:initial}
.publicHome #services>.head .headCopy{font-size:1rem;line-height:1.6;margin-top:12px}
/* One editorial transition, shared by desktop and mobile; no card or image treatment. */
.publicHome .storyTransition{padding-block:40px 44px;color:var(--public-text);scroll-margin-top:110px}
.publicHome .storyTransitionEyebrow{display:flex;align-items:center;gap:12px;margin:0 0 16px;font-size:.75rem;font-weight:500;letter-spacing:.16em;line-height:1.5;color:var(--public-muted)}
.publicHome .storyTransitionEyebrow::before{content:"";width:20px;height:2px;flex:none;background:var(--brand-accent)}
.publicHome .storyTransitionStatement{max-width:1120px;margin:0;font-size:1.375rem;font-weight:400;line-height:1.55;letter-spacing:0;overflow-wrap:break-word}
@media(max-width:760px){.publicHome .storyTransition{padding-block:36px 40px}.publicHome .storyTransitionEyebrow{margin-bottom:18px}.publicHome .storyTransitionStatement{font-size:1.25rem;line-height:1.6;max-width:36ch}}
.publicHome #services:before{display:none}
.publicHome .serviceGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border:0;background:transparent;box-shadow:none;overflow:visible}
.publicHome .serviceCard,.publicHome .serviceCard:first-child,.publicHome .serviceCard:nth-child(2),.publicHome .serviceCard:last-child{grid-column:auto;min-height:315px;padding:20px 18px;border-radius:8px;border-color:#dac6a418;background-position:center;box-shadow:0 12px 24px -12px #000d;overflow:hidden}
.publicHome .serviceCard:before{background:linear-gradient(180deg,#09090933 0%,#09090970 30%,#090909eb 62%,#090909 100%),linear-gradient(125deg,#0005,#0001 50%,#0004)}
.publicHome .serviceCard:is(:hover,:focus-visible):before{background:linear-gradient(180deg,#09090914 0%,#09090945 30%,#111111df 62%,#111111 100%),linear-gradient(125deg,#0003,transparent 50%,#0002)}
/* Review: reduce only decorative service-image saturation, never text, gold icons or real work. */
.publicHome .serviceCard::after{content:"";position:absolute;inset:0;z-index:0;border-radius:inherit;background-image:inherit;background-size:cover;background-position:inherit;filter:saturate(.4);pointer-events:none}
/* Decorative process image and service backgrounds only; never controls or logos. */
.publicHome .processAtmosphere{position:relative;isolation:isolate}
.publicHome .processAtmosphere::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(125deg,#08080850,#10101030 48%,#05050566)}
.servicePage .serviceHero{position:relative;isolation:isolate}
.servicePage .serviceHero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(125deg,#08080833,#10101024 48%,#0505054d)}
.publicHome .serviceCard::before{z-index:1}
.publicHome .serviceCard>*{position:relative;z-index:2}
.publicHome .serviceCard small{display:none}
.publicHome .serviceGlyph{display:block;width:28px;height:28px;margin-top:92px;margin-bottom:14px;color:var(--brand-accent)}.publicHome .serviceGlyph svg{display:block;width:100%;height:100%}
.publicHome .serviceCard h3{margin:0 0 10px;font-size:18px;line-height:1.2;letter-spacing:.02em;min-height:44px;text-transform:uppercase}
.publicHome .serviceCard p{font-size:14px;line-height:1.5;margin:0 0 15px;color:var(--brand-stone);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.publicHome .serviceCard b{font-size:11px;letter-spacing:.06em;color:var(--brand-accent);padding-top:10px;width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px}.publicHome .serviceCard b span{display:grid;place-items:center;width:26px;height:26px;border:1px solid #dac6a477;border-radius:50%;font-size:17px}
.publicHome .processLayout{display:block}.publicHome .process{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.publicHome .step span{color:var(--brand-accent);font-size:20px}.publicHome .step h3{margin-top:22px}
.publicHome .quote{background:linear-gradient(125deg,#171a1c,#0b0f11);color:var(--brand-text);border-top:1px solid #dac6a429}.publicHome .quote .quoteIntro{color:var(--brand-stone)}.publicHome .quote .eyebrow{color:var(--brand-accent)!important}.publicHome .quote .field label{color:var(--brand-stone)}.publicHome .quote .field :is(input,textarea,select){color:var(--brand-text);background:#080b0e;border:1px solid #454947;border-radius:8px;padding:12px}.publicHome .quote .field :is(input,textarea,select):focus-visible{outline:2px solid var(--brand-accent);outline-offset:3px}.publicHome .quote button{background:var(--inquiry-surface);color:var(--inquiry-ink);border-radius:10px;box-shadow:0 6px 14px #0006,inset 0 1px 0 #eee0c655}.publicHome .quote button:focus-visible{outline-color:var(--brand-accent)}.publicHome .quote .formError{color:#ffb8aa}.publicHome .quote .formSuccess{border-color:var(--brand-accent)}
.publicHome .clientGrid a{border-color:#ffffff08}.publicHome .clientGrid a:hover{border-color:#dac6a440}
.publicHome .homepageFeaturedGrid .homepageMediaCopy{background:linear-gradient(135deg,#191b1b,#0e1112);padding:24px}
:is(.portfolioPage,.selectedClientsPage,.caseIndex) :is(.publicMediaInfo,.caseIndexContent,.clientProjectCopy){background:linear-gradient(130deg,#1b1d1e,#101314);border-color:transparent}
.portfolioPage .portfolioHero,.caseIndex .caseIndexHero{padding-block:56px 38px}.portfolioPage .portfolioHero h1,.caseIndex .caseIndexHero h1{font-size:clamp(38px,5vw,66px)}
/* Subtle diagonal charcoal corners replace the previous uniform gray veil. */
:is(.portfolioPage,.selectedClientsPage,.servicePage,.caseStudyPage) :is(.publicPhotoButton,.caseVideoPoster)::before,.caseIndex .caseIndexImage::before,.clientPublicPage .clientProjectVisual:has(>img)::before,:is(.portfolioPage,.selectedClientsPage,.servicePage) .publicMediaCard .audioArtworkFrame::before{background:var(--public-media-gradient);opacity:1}
@media(hover:hover){:is(.portfolioPage,.selectedClientsPage,.servicePage,.caseStudyPage) :is(.publicPhotoButton,.caseVideoPoster):hover::before,.caseIndex .caseIndexCard:hover .caseIndexImage::before,.clientPublicPage .clientProjectLink:hover .clientProjectVisual::before,:is(.portfolioPage,.selectedClientsPage,.servicePage) .publicMediaCard:hover .audioArtworkFrame::before{opacity:.12}}
:is(.portfolioPage,.selectedClientsPage,.servicePage,.caseStudyPage) :is(.publicPhotoButton,.caseVideoPoster):focus-visible::before,.caseIndex .caseIndexCard:focus-visible .caseIndexImage::before,.clientPublicPage .clientProjectLink:focus-visible .clientProjectVisual::before,:is(.portfolioPage,.selectedClientsPage,.servicePage) .publicMediaCard:focus-within .audioArtworkFrame::before{opacity:0}
@media(max-width:1100px){.publicHome .serviceGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.publicHome .serviceCard h3{margin-top:0}.publicHome .hero.cinematicHero{padding-inline:28px}.publicHome .cinematicHero h1{max-width:580px}}
@media(max-width:760px){.publicHome .hero.cinematicHero{padding:40px 20px 0;min-height:0;overflow:hidden}.publicHome .cinematicHero h1{font-size:clamp(35px,7.4vw,52px);max-width:100%}.publicHome .cinematicHero .intro{font-size:16px;max-width:100%}.publicHome .cinematicHeroVisual{position:relative;inset:auto;order:5;height:250px;margin:30px -20px 0}.publicHome .cinematicHeroVisual img{object-position:center}.publicHome .cinematicHero .actions{flex-direction:row;flex-wrap:wrap}.publicHome .cinematicHero .actions>a{min-height:48px;flex:1;white-space:nowrap}.publicHome .serviceGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.publicHome .serviceCard{min-height:340px}.publicHome .process{grid-template-columns:1fr 1fr}.publicHome .section{padding-block:48px}.publicHome .serviceCard h3{margin-top:0}}
@media(max-width:440px){.publicHome .serviceGrid{grid-template-columns:1fr}.publicHome .serviceCard,.publicHome .serviceCard:last-child{min-height:300px;padding:22px}.publicHome .serviceCard h3{min-height:0;margin-top:0;font-size:22px}.publicHome .serviceCard p{-webkit-line-clamp:2;max-width:36ch}.publicHome .process{grid-template-columns:1fr}.publicHome .cinematicHero h1{font-size:clamp(30px,8vw,35px)}.publicHome .cinematicHeroVisual{height:220px}}
/* Phone-only inquiry pair: equal, centered touch targets; desktop remains unchanged. */
@media(max-width:600px){.publicHome .cinematicHero .actions{display:grid;grid-template-columns:minmax(0,1fr);width:min(100%,320px);margin-inline:auto;gap:12px;align-self:center}.publicHome .cinematicHero .actions>a{box-sizing:border-box;display:flex;justify-content:center;align-items:center;width:100%;min-width:0;min-height:54px;padding:14px 18px;align-self:stretch;font-size:14px;line-height:1.35;white-space:normal;text-align:center}}

/* Editorial actions: a single gold lead; a paired Case Study stays silver.
   Scope excludes navigation, media-player controls, and authenticated forms. */
:is(.publicHome,.selectedClientsPage,.clientPublicPage,.caseIndex,.portfolioPage,.servicePage){--work-link-gold:var(--brand-accent);--work-link-silver:var(--brand-text)}
.publicHome .featuredClientCard .partnerCardCopy b,.selectedClientsPage .selectedClientGrid .partnerCardCopy b,.caseIndex .caseIndexContent>b,.selectedClientsPage .clientProjectCopy>b,.clientPublicPage .clientProjectCopy>b{color:var(--work-link-gold);border-bottom-color:currentColor}
:is(.portfolioPage,.servicePage,.selectedClientsPage,.clientPublicPage) .publicMediaInfo>div>a:is([href^="/portfolio/projects/"],[href^="/case-studies/"]){color:var(--work-link-gold);border-bottom-color:currentColor}
:is(.portfolioPage,.servicePage,.selectedClientsPage,.clientPublicPage) .publicMediaInfo>div:has(>a[href^="/portfolio/projects/"])>a[href^="/case-studies/"]{color:var(--work-link-silver)}
.publicHome .featuredClientCard:is(:hover,:focus-visible) .partnerCardCopy b,.selectedClientsPage .selectedClientGrid>a:is(:hover,:focus-visible) .partnerCardCopy b,.caseIndex .caseIndexCard:is(:hover,:focus-visible) .caseIndexContent>b,:is(.selectedClientsPage,.clientPublicPage) .clientProjectLink:is(:hover,:focus-visible) .clientProjectCopy>b{color:var(--brand-accent-light)}
:is(.portfolioPage,.servicePage,.selectedClientsPage,.clientPublicPage) .publicMediaInfo>div>a:is([href^="/portfolio/projects/"],[href^="/case-studies/"]):is(:hover,:focus-visible){text-decoration:underline;text-underline-offset:4px}

/* Shared media-card footer: content may grow, actions stay on the bottom edge.
   Scoped away from the Project hero, whose information panel is intentionally hidden. */
:is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.clientPodcastMedia){align-items:stretch}
.servicePage .serviceRelatedWork>div{align-items:stretch}
:is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.clientPodcastMedia) .publicMediaCard{display:grid;grid-template-rows:auto 1fr;align-self:stretch;min-width:0}
:is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.clientPodcastMedia) .publicMediaInfo{display:flex;flex-direction:column;min-width:0}
:is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.clientPodcastMedia) .publicMediaInfo>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:auto;padding-top:20px}
:is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.clientPodcastMedia) .publicMediaInfo>div>a{display:inline-flex;align-items:center;justify-content:flex-start;flex:0 1 auto;min-height:44px;margin:0;padding:8px 0;font-size:12px;line-height:1.4;letter-spacing:.04em;white-space:nowrap}
@media(max-width:600px){
  .servicePage .serviceRelatedWork{padding-inline:0}
  .servicePage .serviceRelatedWork .publicMediaInfo{padding-inline:18px}
  :is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.clientPodcastMedia) .publicMediaInfo{padding-inline:18px}
  :is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.clientPodcastMedia) .publicMediaInfo>div{column-gap:8px}
  :is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.clientPodcastMedia) .publicMediaInfo>div>a{letter-spacing:0}
}
/* A 16:9 preferred width plus a tall minimum height must not enlarge a grid track. */
.publicHome .homepageSpotlightCard{grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr)}
.publicHome .homepageSpotlightCard>.projectMedia{position:relative;min-width:0;width:100%;max-width:100%;min-height:clamp(320px,32vw,480px);aspect-ratio:auto;align-self:stretch}
.publicHome .homepageSpotlightCard>.projectMedia>:is(.spotlightPoster,iframe,video,img){position:absolute;inset:0;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;object-fit:contain}
.publicHome .homepageSpotlightCard>.spotlightCopy{min-width:0;padding:clamp(24px,3vw,40px)}
.publicHome .homepageSpotlightCard .spotlightCopy h3{font-size:clamp(26px,2.8vw,42px);line-height:1.08}
.publicHome .homepageFeaturedGrid .projectAction.case,.publicHome .homepageSpotlightCard .spotlightCopy>a{box-shadow:none}
@media(max-width:800px){
  .publicHome .homepageSpotlightCard{grid-template-columns:minmax(0,1fr)}
  .publicHome .homepageSpotlightCard>.projectMedia{min-height:0;aspect-ratio:16/9}
}

/* Editorial foundation — review candidate, September 2026.
   Presentation only: retain all source content, public routes, media preferences,
   and controls. These rules never match the authenticated Control Center.
   Service photographs remain saved; this text-led presentation does not render them. */
:is(.publicHome,.portfolioPage,.servicePage,.caseStudyPage,.caseIndex,.selectedClientsPage,.clientPublicPage){
  --public-width:1440px;
  --public-gutter:clamp(22px,5vw,88px);
  --public-space:clamp(64px,8vw,128px);
  --public-text:var(--brand-text);
  --public-muted:var(--brand-stone);
  --public-line:#30312d;
  --public-accent:var(--site-accent,var(--brand-accent));
}
.publicHome .nav,.secondaryNav{
  box-sizing:border-box;width:100%;padding:18px var(--public-gutter,5vw);
  min-height:96px;border-radius:0;border:0;border-bottom:1px solid #ffffff12;
  background:#090a09;box-shadow:none;
}
.publicHome .links,.secondaryNav .secondaryLinks{gap:clamp(14px,1.8vw,28px);font-size:.875rem;letter-spacing:0}
.publicHome .links>a,.secondaryNav .secondaryLinks>a{white-space:nowrap}
.publicHome .logo,.secondaryNav .secondaryBrand img{width:158px;height:52px}
.secondaryNav .secondaryContext{display:none}
.publicHome .hero.cinematicHero{
  box-sizing:border-box;width:100%;min-height:clamp(580px,76svh,850px);
  padding:clamp(76px,9vw,152px) max(var(--public-gutter),calc((100% - var(--public-width))/2));
  border:0;border-radius:0;box-shadow:none;background:#090909;
}
.publicHome .cinematicHero h1{
  position:relative;max-width:12ch;margin:0;
  font-size:clamp(3rem,6.8vw,7rem);font-weight:550;
  line-height:1.02;letter-spacing:-.045em;text-wrap:initial;
}
.publicHome .cinematicHero .intro{max-width:39ch;margin-top:32px;font-size:1.125rem;line-height:1.65}
.publicHome .cinematicHero .actions{margin-top:36px;gap:16px}
.publicHome :is(.button[href="#inquiry"],.navcta),.secondaryNav .secondaryCta{
  font-size:.875rem;border-radius:5px;padding-inline:26px;min-height:48px;
  box-shadow:inset 0 1px 0 #eee0c644,0 2px 0 #514d4055;
}
.publicHome .hero .secondary{font-size:.875rem;border-radius:5px;min-height:48px;background:#09090980}
.publicHome .storyTransition{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,1.65fr);gap:32px;padding-block:clamp(48px,6vw,88px);align-items:start}
.publicHome .storyTransitionEyebrow{font-size:.875rem;line-height:1.7;letter-spacing:.13em;margin:4px 0 0}
.publicHome .storyTransitionStatement{font-size:clamp(1.25rem,1.85vw,1.75rem);line-height:1.6;max-width:56ch}
.publicHome #services{padding-block:24px var(--public-space)}
.publicHome #services>.head{margin-bottom:40px;max-width:860px}
.publicHome #services>.head h2{font-size:clamp(2rem,3.8vw,3.5rem);font-weight:500;line-height:1.13;max-width:24ch}
.publicHome #services>.head .eyebrow{font-size:.875rem;letter-spacing:.12em;color:var(--public-muted)}
.publicHome .serviceGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px;counter-reset:none}
.publicHome #services .serviceCard{
  display:flex;flex-direction:column;min-height:0;padding:28px 0 32px;
  border:0;border-top:1px solid var(--public-line);border-radius:0;
  background:transparent!important;box-shadow:none;transform:none;
  transition:border-color .18s ease;
}
.publicHome #services .serviceCard::before,.publicHome #services .serviceCard::after{content:none;display:none}
.publicHome #services .serviceCard .serviceGlyph{display:none}
.publicHome #services .serviceCard small{display:block;position:static;margin:0 0 22px;font-size:.875rem;font-weight:400;line-height:1.6;letter-spacing:.06em;color:#bcb8af}
.publicHome #services .serviceCard h3{min-height:0;margin:0 0 16px;font-size:clamp(1.5rem,2.1vw,2rem);line-height:1.18;font-weight:500;letter-spacing:-.025em;text-transform:none}
.publicHome #services .serviceCard p{display:block;overflow:visible;margin:0 0 20px;font-size:1rem;line-height:1.65;max-width:34ch;color:var(--public-muted)}
.publicHome #services .serviceCard b{margin-top:auto;padding-top:12px;min-height:44px;font-size:.875rem;line-height:1.5;font-weight:500;letter-spacing:.035em;color:var(--brand-accent)}
.publicHome #services .serviceCard b span{width:28px;height:28px;border:0;border-radius:0;font-size:1.5rem}
.publicHome #services .serviceCard:is(:hover,:focus-visible){border-top-color:var(--brand-accent)}
@media(max-width:1200px){
  .publicHome .nav .links,.secondaryNav .secondaryLinks{display:none}
  .publicHome .nav .publicMenu,.secondaryNav .publicMenu{display:block}
}
@media(max-width:900px){
  .publicHome .serviceGrid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
  .publicHome .storyTransition{grid-template-columns:1fr;gap:22px}
}
@media(max-width:760px){
  .publicHome .nav,.secondaryNav{min-height:80px;padding-block:12px}
  .publicHome .hero.cinematicHero{min-height:0;padding:48px var(--public-gutter) 0}
  .publicHome .cinematicHero h1{max-width:13ch;font-size:clamp(2.5rem,9vw,4rem)}
  .publicHome .cinematicHero .intro{font-size:1rem;margin-top:24px}
  .publicHome .cinematicHeroVisual{position:relative;inset:auto;order:5;height:auto;aspect-ratio:3/2;margin:36px calc(-1 * var(--public-gutter)) 0}
  .publicHome .storyTransition{padding-block:44px 52px}
  .publicHome .storyTransitionStatement{font-size:1.25rem;line-height:1.6}
}
@media(max-width:520px){
  .publicHome .serviceGrid{grid-template-columns:1fr}
  .publicHome #services .serviceCard{padding-block:24px}
  .publicHome #services .serviceCard small{margin-bottom:14px}
  .publicHome #services .serviceCard h3{font-size:1.625rem}
}

/* The work supplies the imagery. Captions and actions stay outside its frame. */
.publicHome .section{padding-block:var(--public-space)}
.publicHome .head{gap:20px;margin-bottom:44px}
.publicHome :is(.head h2,.foundation h2,.lanes h2,.founderCopy h2,.quote h2,.contact h2){font-size:clamp(2rem,4.5vw,4.25rem);font-weight:500;line-height:1.08;letter-spacing:-.04em}
.publicHome .headCopy{max-width:58ch;font-size:1.0625rem;line-height:1.75}
.publicHome .homepageFeaturedGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px 40px;align-items:stretch}
.publicHome :is(.homepageFeaturedGrid .projectCard,.homepageSpotlightCard){border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible;transform:none}
.publicHome .homepageFeaturedGrid .projectCard{display:flex;flex-direction:column}
.publicHome :is(.homepageFeaturedGrid .projectMedia,.homepageSpotlightCard>.projectMedia){border:0;border-radius:3px;overflow:hidden}
.publicHome .homepageFeaturedGrid .homepageMediaCopy{flex:1;display:flex;flex-direction:column;background:none;border:0;border-radius:0;padding:24px 0 0}
.publicHome .homepageFeaturedGrid .homepageMediaCopy .projectAction{align-self:flex-start;margin-top:auto}
.publicHome .homepageFeaturedGrid .projectCard h3{font-size:clamp(1.5rem,2.4vw,2.125rem);font-weight:500;line-height:1.18;margin-block:14px}
.publicHome .homepageFeaturedGrid .projectCard small,.publicHome .homepageSpotlightCard .spotlightCopy>small{font-size:.875rem;line-height:1.6;letter-spacing:.055em;color:var(--public-muted)}
.publicHome .homepageFeaturedGrid .projectCard p{font-size:1rem;line-height:1.7;margin-bottom:20px}
.publicHome .homepageSpotlightCard{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:40px;margin-bottom:56px}
.publicHome .homepageSpotlightCard>.spotlightCopy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:24px 0;background:none;border-radius:0}
.publicHome .homepageSpotlightCard .spotlightCopy h3{font-size:clamp(1.75rem,3.1vw,3rem);font-weight:500;line-height:1.13;margin-block:18px}
.publicHome .homepageSpotlightCard .spotlightCopy p{font-size:1rem;line-height:1.7;color:var(--public-muted)}
.publicHome .homepageFeaturedGrid .projectAction.case,.publicHome .homepageSpotlightCard .spotlightCopy>a,.publicHome .portfolioAll{
  width:fit-content;min-height:44px;padding:12px 0;margin-top:20px;border:0;border-bottom:1px solid #dac6a466;
  border-radius:0;background:none;color:var(--brand-accent);box-shadow:none;font-size:.875rem;font-weight:500;letter-spacing:.025em;text-transform:none;
}
.publicHome .homepageFeaturedGrid .projectAction.case:hover,.publicHome .homepageSpotlightCard .spotlightCopy>a:hover{background:none;box-shadow:none;transform:none;color:var(--brand-accent-light)}
:is(.portfolioPage,.caseIndex) :is(.portfolioHero,.caseIndexHero){padding-block:clamp(64px,8vw,124px) 48px}
:is(.portfolioPage,.caseIndex) :is(.portfolioHero,.caseIndexHero) h1{font-size:clamp(2.75rem,6.5vw,6.5rem);font-weight:500;line-height:1.04;max-width:16ch;margin-block:24px}
:is(.portfolioPage,.caseIndex,.selectedClientsPage,.servicePage) .storyLabel,.publicHome .eyebrow{font-size:.875rem;font-weight:500;letter-spacing:.12em;color:var(--public-muted)}
:is(.portfolioPage,.servicePage,.selectedClientsPage,.clientPublicPage) .publicMediaCard,.caseIndex .caseIndexCard{
  border:0!important;border-radius:0!important;background:transparent!important;
  box-shadow:none;transform:none;
}
:is(.portfolioPage,.servicePage,.selectedClientsPage,.clientPublicPage) .publicMediaCard:is(:hover,:focus-within),.caseIndex .caseIndexCard:is(:hover,:focus-visible){background:transparent!important;box-shadow:none;transform:none}
:is(.portfolioPage,.servicePage,.selectedClientsPage,.clientPublicPage) .publicMediaVisual,.caseIndex .caseIndexImage{border-radius:3px;overflow:hidden}
:is(.portfolioPage,.servicePage,.selectedClientsPage,.clientPublicPage) .publicMediaInfo,.caseIndex .caseIndexContent{background:none;border:0;border-radius:0;padding:24px 0 0}
:is(.portfolioPage,.servicePage,.selectedClientsPage,.clientPublicPage) .publicMediaInfo small,.caseIndex .caseIndexContent small{font-size:.875rem;line-height:1.6;letter-spacing:.055em}
:is(.portfolioPage,.servicePage,.selectedClientsPage,.clientPublicPage) .publicMediaInfo p{font-size:1rem;line-height:1.7}
.portfolioPage .publicMediaGrid,.caseIndex .caseIndexGrid{gap:64px 40px;padding-bottom:var(--public-space)}
.portfolioPage .portfolioFilters{gap:8px 24px;padding-block:24px 40px}
.portfolioPage .portfolioFilters a{padding:10px 0;min-height:44px;border:0;border-bottom:1px solid transparent;background:none;border-radius:0;font-size:.875rem;letter-spacing:.04em}
.portfolioPage .portfolioFilters a[aria-current],.portfolioPage .portfolioFilters a:hover{background:none;color:var(--brand-accent);border-bottom-color:var(--brand-accent)}
:is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.clientPodcastMedia) .publicMediaInfo>div{gap:10px 24px;padding-top:20px}
:is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.clientPodcastMedia) .publicMediaInfo>div>a{font-size:.875rem;letter-spacing:0;white-space:normal}
/* Collection pages use the existing photograph, caption and links in an editorial row.
   No source image, crop, focal point, lightbox or collection query is changed. */
.portfolioPage.photographyPage .publicMediaGrid{grid-template-columns:1fr;row-gap:72px}
.portfolioPage.photographyPage .publicMediaGrid .publicMediaCard{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);grid-template-rows:auto;gap:40px;padding-bottom:48px;border-bottom:1px solid var(--public-line)!important}
.portfolioPage.photographyPage .publicMediaInfo{padding:12px 0;justify-content:center}
.portfolioPage.photographyPage .publicMediaInfo>div{margin-top:0}

/* Open editorial sections instead of stacked raised containers. */
.publicHome :is(.foundation,.lanes,.photoNote){border:0;border-radius:0;box-shadow:none;background:transparent}
.publicHome .foundation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;padding:0 0 64px;border-bottom:1px solid var(--public-line)}
.publicHome .lanes{padding:64px 0 0;margin-top:0}
.publicHome .laneGrid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:48px}
.publicHome .laneGrid span{padding:24px 0;border-top-color:var(--public-line)}
.publicHome .laneGrid small{font-size:1rem;line-height:1.65}
.publicHome .photoNote{margin-top:32px;padding:28px 0;border-top:1px solid var(--public-line)}
.publicHome .photoNote a{font-size:.875rem;min-height:44px;line-height:1.6}
.publicHome .founder.isCopyOnly{grid-template-columns:1fr}
.publicHome .founderCopy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 64px}
.publicHome .founderCopy>.eyebrow{grid-column:1/-1;margin:0}
.publicHome .founderCopy h2{grid-column:1;grid-row:2/4;margin:0}
.publicHome .founderCopy>p:not(.eyebrow){grid-column:2;margin:0;font-size:1.0625rem;line-height:1.75}
.publicHome #process{padding-block:48px var(--public-space)}
.publicHome .processLayout .process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.publicHome .processLayout .step{display:block;padding:28px 0 0;border:0;border-top:1px solid var(--public-line)}
.publicHome .processLayout .step>span{font-size:.875rem;color:var(--brand-accent)}
.publicHome .processLayout .step h3{font-size:1.625rem;line-height:1.2;margin:22px 0 16px}
.publicHome .processLayout .step p{font-size:1rem;line-height:1.7}
.publicHome .quote{padding-block:var(--public-space);background:#0c0d0c;border-block:1px solid var(--public-line);box-shadow:none}
.publicHome .quote .field label{font-size:.875rem;letter-spacing:.02em;font-weight:500}
.publicHome .quote .field :is(input,textarea,select){border:0;border-bottom:1px solid #74756b;border-radius:0;background:#10110f;padding:14px 12px;font-size:1rem}
.publicHome .quote button{border-radius:5px;font-size:.875rem;letter-spacing:.025em;text-transform:none}
.publicHome .quote .formSuccess{background:#11130f;color:var(--brand-text)}
.publicHome .quote .formSuccess small{color:var(--brand-stone)}

/* Partner logos are untouched; only the space around their existing wrappers changes. */
.publicHome .clientGrid{gap:28px;grid-template-columns:repeat(4,minmax(0,1fr))}
.publicHome .clientGrid .featuredClientCard{border:0;border-radius:0;background:transparent;box-shadow:none;padding:16px 0;transform:none}
.publicHome .clientGrid .featuredClientCard:is(:hover,:focus-visible){background:transparent;box-shadow:none;transform:none}
.publicHome .partnerCardCopy{padding-top:20px}
.publicHome .partnerCardCopy b,.selectedClientsPage .partnerCardCopy b{font-size:.875rem;line-height:1.6}
.selectedClientsPage :is(.selectedClientsHero,.selectedClientGrid),.clientPublicPage :is(.clientPublicHero,.clientProjectGroups){width:min(var(--public-width),calc(100% - var(--public-gutter)*2));margin-inline:auto}
.selectedClientsPage .selectedClientGrid{gap:56px 40px}
.selectedClientsPage .selectedClientGrid>a{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none;padding:0 0 28px}
.selectedClientsPage .selectedClientGrid>a:is(:hover,:focus-visible){background:transparent!important;box-shadow:none}
.selectedClientsPage .partnerCardCopy{padding-top:20px}
.servicePage :is(.storyFeature,.storyExtensions,.serviceRelatedWork,.serviceClose){border:0;border-top:1px solid var(--public-line);border-radius:0;background:transparent;box-shadow:none;padding-inline:0}
.servicePage .serviceRelatedWork{width:min(var(--public-width),calc(100% - var(--public-gutter)*2));margin-inline:auto}
.publicHome .footer,.secondaryFooter{width:min(var(--public-width,1440px),calc(100% - var(--public-gutter,5vw)*2));font-size:.875rem}
.publicHome .footer>span:last-child,.secondaryFooter small{font-size:.8125rem}
@media(max-width:900px){
  .publicHome .homepageSpotlightCard{grid-template-columns:1fr;gap:0}
  .publicHome .homepageSpotlightCard>.projectMedia{min-height:0;aspect-ratio:16/9}
  .publicHome .homepageSpotlightCard>.spotlightCopy{padding-top:24px}
  .publicHome .homepageFeaturedGrid,.portfolioPage .publicMediaGrid,.caseIndex .caseIndexGrid{column-gap:24px;row-gap:44px}
  .publicHome .foundation,.publicHome .founderCopy{grid-template-columns:1fr;gap:28px}
  .publicHome .founderCopy h2,.publicHome .founderCopy>p:not(.eyebrow){grid-column:auto;grid-row:auto}
  .publicHome .processLayout .process{grid-template-columns:repeat(2,minmax(0,1fr))}
  .publicHome .clientGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .portfolioPage.photographyPage .publicMediaGrid .publicMediaCard{grid-template-columns:1fr;gap:12px;padding-bottom:32px}
}
@media(max-width:600px){
  .publicHome .homepageFeaturedGrid,.portfolioPage .publicMediaGrid,.caseIndex .caseIndexGrid{grid-template-columns:1fr}
  .publicHome .laneGrid,.publicHome .processLayout .process{grid-template-columns:1fr}
  .publicHome .cinematicHero .actions{width:min(100%,360px)}
  .publicHome .cinematicHero .actions>a{font-size:.875rem;min-height:52px}
  :is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.clientPodcastMedia) .publicMediaInfo>div{column-gap:16px}
  :is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.clientPodcastMedia) .publicMediaInfo>div>a{font-size:.8125rem}
  .publicHome .footer{grid-template-columns:1fr;gap:20px}
}

/* Monochrome browsing, original-color viewing.
   Only preview imagery is treated: never page heroes, opened lightboxes,
   playing videos, player controls, captions, watermarks or partner logos.
   Hover removes the existing darkness but deliberately retains monochrome. */
:is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.clientPodcastMedia) :is(.publicPhotoButton,.caseVideoPoster)>img,
.caseIndex .caseIndexCard .caseIndexImage>img,
:is(.selectedClientsPage,.clientPublicPage) .clientProjectLink .clientProjectVisual>img,
.publicHome .homepageFeaturedGrid .projectMedia :is(.publicPhotoButton,.homepageLayeredVideo)>img,
.publicHome .homepageFeaturedGrid .projectMedia>img,
.publicHome .homepageSpotlightCard :is(.publicPhotoButton,.spotlightPoster)>img,
:is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.clientPodcastMedia) .publicMediaCard.type-audio .audioArtworkFrame>img,
.publicHome :is(.homepageFeaturedGrid,.homepageSpotlightCard) .audioMedia .homepageAudioArtwork>img{filter:grayscale(1)!important}
/* Keep the portrait framing's blurred surround while removing its color. */
:is(.publicMediaGrid,.serviceRelatedWork,.clientPublicMedia,.clientPodcastMedia) .isLayeredPortrait>img.layeredPortraitBackground{filter:blur(15px) grayscale(1) brightness(.72)!important}
.publicHome .homepageFeaturedGrid .projectMedia img.homepageLayeredBackground{filter:blur(15px) grayscale(1) brightness(.52)!important}
/* Consistent media previews. Never target logos, hero photographs, players or lightboxes. */
.publicHome .homepageFeaturedGrid .spotlightPoster>img,
.caseStudyPage :is(.caseSupportingVideos .caseVideoPoster,.casePhotoEditorial .publicPhotoButton,.caseAudioArtwork)>img{filter:grayscale(1)!important}
:is(.portfolioPage,.selectedClientsPage,.servicePage) .publicMediaCard :is(.publicPhotoButton,.caseVideoPoster,.audioArtworkFrame)::before,
.caseStudyPage :is(.caseSupportingVideos .caseVideoPoster,.casePhotoEditorial .publicPhotoButton,.caseAudioArtwork)::before{background:var(--homepage-charcoal-gradient);opacity:var(--media-preview-strength,.45)}
.caseStudyPage .caseAudioArtwork{position:relative;isolation:isolate;overflow:hidden;width:110px;aspect-ratio:1}
.caseStudyPage .caseAudioArtwork img{width:100%;height:100%;object-fit:cover}
.caseStudyPage .caseAudioArtwork::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;transition:opacity .2s ease}
.caseStudyPage .caseAudioGrid article:has(>.caseAudioArtwork){grid-template-columns:110px minmax(0,1fr)}
@media(max-width:760px){.caseStudyPage .caseAudioArtwork{width:76px}.caseStudyPage .caseAudioGrid article:has(>.caseAudioArtwork){grid-template-columns:76px minmax(0,1fr)}}
@media(hover:hover){
  :is(.portfolioPage,.selectedClientsPage,.servicePage) .publicMediaCard:hover :is(.publicPhotoButton,.caseVideoPoster,.audioArtworkFrame)::before,
  .caseStudyPage :is(.caseSupportingVideos .caseVideoPoster,.casePhotoEditorial .publicPhotoButton):hover::before,
  .caseStudyPage .caseAudioGrid article:hover .caseAudioArtwork::before{opacity:0}
}
:is(.portfolioPage,.selectedClientsPage,.servicePage) .publicMediaCard:focus-within :is(.publicPhotoButton,.caseVideoPoster,.audioArtworkFrame)::before,
.caseStudyPage :is(.caseSupportingVideos .caseVideoPoster,.casePhotoEditorial .publicPhotoButton):focus-visible::before,
.caseStudyPage .caseAudioGrid article:focus-within .caseAudioArtwork::before{opacity:0}
/* Playing an episode reveals its original artwork as well as clear audio controls. */
:is(.portfolioPage,.selectedClientsPage,.servicePage) .publicMediaCard[data-media-open="true"] .audioArtworkFrame>img,
.publicHome :is(.homepageFeaturedGrid,.homepageSpotlightCard) [data-media-open="true"] .homepageAudioArtwork>img,
.publicHome .homepageSpotlightCard[data-media-open="true"] .homepageAudioArtwork>img,
.caseStudyPage .caseAudioGrid [data-media-open="true"] .caseAudioArtwork>img{filter:none!important}
:is(.portfolioPage,.selectedClientsPage,.servicePage) .publicMediaCard[data-media-open="true"] .audioArtworkFrame::before,
.publicHome :is(.homepageFeaturedGrid,.homepageSpotlightCard) [data-media-open="true"] .homepageAudioArtwork::before,
.publicHome .homepageSpotlightCard[data-media-open="true"] .homepageAudioArtwork::before,
.caseStudyPage .caseAudioGrid [data-media-open="true"] .caseAudioArtwork::before{opacity:0}
@media(prefers-reduced-motion:reduce){.caseStudyPage .caseAudioArtwork::before{transition:none}}
/* Three public service groups; detailed service records remain unchanged. */
.publicHome #serviceGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,4vw,60px);border:0}
.publicHome .serviceGroup{display:flex;flex-direction:column;min-width:0;border-top:1px solid #35332e;padding:22px 0 0;background:none}
.publicHome .serviceGroup h3{margin:0 0 18px;color:var(--brand-text);font-size:clamp(28px,3vw,42px);font-weight:400;line-height:1.08;letter-spacing:-.035em}
.publicHome .serviceGroupDescription{color:#b7b4ad;font-size:16px;line-height:1.65;margin:0 0 22px;max-width:35ch}
.portfolioPage .filmServiceLinks{width:min(var(--public-width),calc(100% - var(--public-gutter)*2));margin:0 auto 36px}
.portfolioPage .filmServicesLabel{font-size:14px;letter-spacing:.09em;text-transform:uppercase;color:#b7b4ad;margin:0 0 14px}
.portfolioPage .filmServiceLinks nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.portfolioPage .filmServiceLinks a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;padding:12px 0;color:var(--site-accent,var(--brand-accent));font-size:16px;line-height:1.5;border-block:1px solid #35332e}
.portfolioPage .filmServiceLinks a:hover{color:var(--brand-text)}
@media(max-width:900px){.portfolioPage .filmServiceLinks nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.portfolioPage .filmServiceLinks nav{grid-template-columns:1fr;gap:12px}}
.publicHome .serviceGroupAction{display:inline-flex;align-items:center;gap:16px;align-self:flex-start;width:fit-content;min-height:44px;margin-top:auto;color:var(--site-accent,var(--brand-accent));font-size:14px;line-height:1.4;text-transform:uppercase;letter-spacing:.09em;border-bottom:1px solid currentColor}
.publicHome .homepageCaseStudies{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:clamp(28px,6vw,90px)}
.publicHome .homepageCaseStudies h2{font-size:clamp(34px,4.5vw,64px);font-weight:400;line-height:1.06;letter-spacing:-.04em;margin:0}
.publicHome .homepageCaseStudies>div>p:not(.eyebrow){color:#b7b4ad;font-size:17px;line-height:1.7;margin:0 0 26px;max-width:45ch}
.publicHome .logo,.secondaryNav .secondaryBrand img{width:220px;height:36px;object-fit:contain}
.publicHome .footer{grid-template-columns:220px minmax(200px,1fr) auto}
.publicHome .footer img,.secondaryFooter img{width:220px;max-height:40px;object-fit:contain}
@media(max-width:900px){
 .publicHome #serviceGrid{grid-template-columns:1fr;gap:40px}
 .publicHome .serviceGroupDescription{max-width:55ch}
 .publicHome .homepageCaseStudies{grid-template-columns:1fr}
 .publicHome .logo,.secondaryNav .secondaryBrand img{width:180px;height:30px}
 .publicHome .footer{grid-template-columns:1fr}
}
@media(max-width:600px){
 .publicHome .logo,.secondaryNav .secondaryBrand img{width:150px;height:26px}
}
/* Short homepage: one work sample, shared production block, compact inquiry. */
.publicHome:not(.aboutPage) .section{padding-block:clamp(48px,6vw,80px)}
.publicHome:not(.aboutPage) .head{margin-bottom:30px}
.publicHome:not(.aboutPage) .homepageFeaturedGrid{grid-template-columns:1fr}
.publicHome .homepageExplore{display:flex;flex-wrap:wrap;align-items:center;gap:20px}
.publicHome .homepageExplore .serviceGroupAction{margin:0}
.publicHome:not(.aboutPage) .clientGrid a,.publicHome:not(.aboutPage) .clientGrid div{min-height:128px;padding:20px}
.publicHome:not(.aboutPage) .clientGrid img{height:88px}
.publicHome:not(.aboutPage) .foundation{gap:clamp(24px,5vw,60px)}
.publicHome:not(.aboutPage) .foundationList{margin:20px 0}
.publicHome:not(.aboutPage) .foundationList li{padding:10px 0}
.publicHome:not(.aboutPage) .lanes{margin-top:32px;padding-top:32px}
.publicHome:not(.aboutPage) .lanes h2{font-size:clamp(28px,3.5vw,44px)}
.publicHome .contentOptions summary{display:flex;justify-content:space-between;align-items:center;min-height:48px;color:var(--site-accent,var(--brand-accent));cursor:pointer;font-size:16px;border-block:1px solid #35332e}
.publicHome .contentOptions .laneGrid{margin-top:24px}
.publicHome .contentOptions .laneGrid span{min-height:0;padding:16px 0}
.publicHome .contentOptions .laneGrid i{display:none}
.publicHome .contentOptions .laneGrid small{display:block;font-size:14px;line-height:1.5;margin-top:10px}
.publicHome .contentOptions .photoNote{padding:20px 0;margin-top:16px}
.publicHome .aboutTeaser{margin-block:0 40px;font-size:16px;color:var(--brand-accent)}
.publicHome:not(.aboutPage) .quote{background:#171918;color:var(--brand-text);padding-block:clamp(40px,5vw,68px);gap:clamp(28px,4vw,60px)}
.publicHome:not(.aboutPage) .quote h2{font-size:clamp(32px,4vw,52px)}
.publicHome:not(.aboutPage) .quoteIntro{font-size:16px;color:#c2c2bc;line-height:1.6}
.publicHome:not(.aboutPage) .quote .eyebrow{color:var(--site-accent,var(--brand-accent))!important}
.publicHome:not(.aboutPage) .quote form{gap:16px}
.publicHome:not(.aboutPage) .quote .field textarea{min-height:74px}
.publicHome:not(.aboutPage) .quote .field input,.publicHome:not(.aboutPage) .quote .field textarea{color:var(--brand-text);background:#ffffff04;border-color:#666}
.publicHome .footer{grid-template-columns:auto 1fr auto;gap:20px;padding-block:32px}
.publicHome .footer>span:last-child{grid-column:1/-1;font-size:12px;line-height:1.7}
.footerSocial{display:flex;gap:10px;align-items:center}
.footerSocial a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:50%;color:#e9e7e1}
.footerSocial a:hover{background:#dac6a422;outline:1px solid var(--brand-accent)}
.footerSocial img{width:22px!important;height:22px!important;filter:invert(1);object-fit:contain}
.publicHome.aboutPage .founderCopy h1{font-size:clamp(42px,6vw,82px);line-height:1.05;font-weight:400;letter-spacing:-.04em;margin:0 0 24px}
.publicHome.aboutPage .founderCopy{display:block}
.publicHome.aboutPage .aboutProjectLink{padding-bottom:60px}
@media(max-width:700px){.publicHome .footer{grid-template-columns:1fr}.footerSocial{justify-content:flex-start}.publicHome .quote form{grid-template-columns:1fr}.publicHome .quote .field{grid-column:1/-1}}

/* Homepage accent hierarchy: pale-gold labels and actions, limestone headlines. */
.publicHome:not(.aboutPage) :is(#services,#work,#clients,#packages,#inquiry) .eyebrow,
.publicHome:not(.aboutPage) .storyTransitionEyebrow{color:var(--public-accent)!important;text-shadow:none}
.publicHome:not(.aboutPage) :is(#services,#work,#clients,#packages,#inquiry) .eyebrow::before,
.publicHome:not(.aboutPage) .storyTransitionEyebrow::before{width:24px;height:2px;border-radius:0;background:var(--public-accent);box-shadow:none}
.publicHome #serviceGrid .serviceGroupAction{color:var(--public-accent);border-bottom-color:currentColor}
.publicHome #serviceGrid .serviceGroupAction:hover{color:var(--public-text)}
.publicHome #serviceGrid .serviceGroupAction:focus-visible{color:var(--public-text);outline:2px solid var(--public-accent);outline-offset:5px}

/* Homepage partners: compact logo-only links, never crop or tint brand artwork. */
.publicHome #clients{padding-block:clamp(36px,5vw,60px)}
.publicHome #clients>.head{margin-bottom:24px}
.publicHome #clients .logoOnlyGrid{display:flex;flex-wrap:wrap;justify-content:center;gap:20px 28px;width:100%;max-width:960px;margin-inline:auto;border:0}
.publicHome #clients .logoOnlyGrid>a,
.publicHome #clients .logoOnlyGrid>div{display:flex;flex:0 0 calc((100% - 84px)/4);align-items:center;justify-content:center;min-width:0;min-height:0;height:132px;padding:8px;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible;transform:none}
.publicHome #clients .logoOnlyGrid>:is(a,div):is(:hover,:focus-visible){background:transparent;box-shadow:none;transform:none}
.publicHome #clients .logoOnlyGrid>a:focus-visible{outline:2px solid var(--public-accent);outline-offset:4px}
.publicHome #clients .partnerLogoMark{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:0;padding:4px;background:transparent}
.publicHome #clients .partnerLogoMark[data-logo-background="light"]{background:#f3f1ec}
.publicHome #clients .partnerLogoMark[data-logo-background="dark"]{background:#080808}
.publicHome #clients .logoOnlyGrid img{display:block;width:auto;height:auto;min-width:0;min-height:0;max-width:min(100%,180px);max-height:112px;object-fit:contain;object-position:center;filter:none;transform:none}
.publicHome #clients .partnerLogoFallback{color:var(--public-text);font-size:16px;text-align:center;overflow-wrap:anywhere}
.publicHome #clients #partnerBlock>.head{margin-top:36px!important;margin-bottom:24px}
@media(max-width:600px){.publicHome #clients .logoOnlyGrid{max-width:480px;gap:16px 20px}.publicHome #clients .logoOnlyGrid>a,.publicHome #clients .logoOnlyGrid>div{flex-basis:calc((100% - 20px)/2);height:116px;padding:4px}.publicHome #clients .logoOnlyGrid img{max-height:100px}}
