/* Reading rhythm and case-study presentation, October 2026. */
.project-image video{width:100%;height:100%;object-fit:cover;pointer-events:none}
.case-hero-film video{width:100%;max-height:78svh;object-fit:contain}
.project-image:has([data-project-animation]){background:#fcfbf8!important}
.project-image [data-project-animation]{object-fit:contain}
.project-image video{transition:transform .6s}
.project-card:hover video{transform:scale(1.04)}
.studio-teaser{padding-block:90px;border-top:1px solid var(--line)}
.studio-teaser>p{font-size:16px;color:var(--muted);margin-bottom:30px}
.studio-teaser>a{position:relative;display:block}
.studio-teaser h2{font-size:clamp(44px,6.5vw,90px);line-height:1.08}
.studio-teaser h2 span{color:var(--red)}
.studio-teaser-mark{position:absolute;right:6%;top:50%;transform:translateY(-50%) rotate(-8deg);font-size:clamp(120px,19vw,250px);letter-spacing:-.14em;color:var(--red);font-weight:600;line-height:1;transition:transform .5s}
.studio-teaser>a:hover .studio-teaser-mark{transform:translateY(-50%) rotate(0deg)}
.studio-teaser .text-link{margin-top:30px}
@media(max-width:760px){.studio-teaser{padding-block:60px}.studio-teaser h2{font-size:clamp(38px,8.5vw,58px);max-width:80%}.studio-teaser-mark{right:0;font-size:100px;opacity:.2}.studio-teaser>p{font-size:14px;margin-bottom:22px}}
.idea-section{min-height:0;padding-block:110px 120px}
.idea-statement{font-family:'DM Sans',Arial,sans-serif;font-size:clamp(32px,4.2vw,62px);font-weight:400;line-height:1.3;letter-spacing:-.035em;max-width:1230px}
.idea-statement em{font-style:normal}
.idea-statement .reveal-word{color:#9d9690}
.idea-statement .reveal-word.lit{color:var(--ink)}
.idea-statement .accent-word.lit{color:var(--story-accent)}
.world-section{padding-bottom:20px}
.world-reels{padding-top:30px;padding-bottom:100px}
.world-reels-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px;gap:24px}
.world-reels-heading h3{font-size:clamp(26px,3vw,40px)}
.world-reels-heading p{font-size:16px;color:var(--muted)}
.reel-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.reel-media{position:relative;aspect-ratio:4/3;border-radius:14px;overflow:hidden;background:#f3f1ed}
.reel-media video{width:100%;height:100%;object-fit:cover}
.reel-card h4{font-size:21px;font-weight:500;letter-spacing:-.025em;margin:17px 0 3px}
.reel-card>a{display:flex;align-items:baseline;justify-content:space-between;gap:15px}
.reel-card>a:hover{color:var(--red)}
.reel-card p{color:var(--muted);font-size:14px;line-height:1.5}
.reel-card[data-slug=chatclaim] video{object-fit:contain;background:#f4f6ff;padding:20%}
.films-section{padding-top:75px;background:#f7f6f3}
.films-section .section-intro{grid-template-columns:1.35fr .65fr;align-items:end;margin-bottom:45px}
.films-section .section-intro>div>p:first-child{font-size:16px;margin-bottom:20px;color:var(--red)}
.films-section .section-intro h2{font-size:clamp(42px,4.8vw,70px)}
.films-section .section-intro>p{max-width:390px;justify-self:end}
.film-tabs{gap:clamp(20px,3vw,46px);margin-bottom:30px}
.film-tabs button{font-size:17px}
.client-story-grid{display:flex;flex-direction:column;gap:0;background:#fff;border-radius:20px;overflow:hidden;border:1px solid #e5e3df}
.film-stage{width:100%;aspect-ratio:16/8.8;border-radius:0;background:#eeede9}
.film-stage video{object-fit:contain;background:#eeede9;cursor:pointer}
.film-story{width:100%;padding:38px 42px 40px;display:grid;grid-template-columns:.85fr 1.15fr;gap:16px 70px;align-items:start}
.film-story .film-heading{grid-column:1;grid-row:1/4}
.film-story .film-heading>p{font-size:15px;line-height:1.5;color:var(--muted);margin-bottom:12px}
.film-story h3{font-family:'DM Sans',sans-serif;font-size:clamp(30px,3.3vw,48px);letter-spacing:-.045em}
.film-story .film-heading .text-link{font-size:16px;margin-top:25px}
.film-story>#film-description{font-size:18px;line-height:1.6;min-height:0;color:var(--ink)}
.film-story>#film-decision{font-size:17px;line-height:1.6;color:var(--muted)}
.film-story>#film-credit{font-size:15px;max-width:none;margin:5px 0 0;line-height:1.6;grid-column:2}
.film-play{opacity:0;pointer-events:none;top:auto;right:22px;bottom:22px}
.film-play:focus-visible,.film-stage[data-paused=true] .film-play{opacity:1;pointer-events:auto}
.film-stage[data-paused=true] .film-play{width:52px;height:52px}
.film-load-status{font-size:14px;bottom:20px;left:20px;max-width:calc(100% - 100px)}
video[data-ambient-video]{cursor:pointer}
video[data-ambient-video]:focus-visible{outline:3px solid var(--red);outline-offset:-5px}
.media-wrap{position:relative}
.media-wrap::after{content:'Ⅱ';position:absolute;right:20px;bottom:20px;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fffc;color:var(--ink);pointer-events:none;opacity:0;transition:opacity .2s}
.media-wrap[data-paused=true]::after{content:'▶';opacity:1}
.site-footer>div{margin-top:0}
#cash-stage .cash-gun{width:clamp(210px,23vw,300px);will-change:transform;transition:opacity .25s}
#cash-stage .cash-gun-art{transition:none}
#cash-stage h2{font-size:clamp(65px,8.5vw,125px)}
#cash-stage{min-height:630px}
.case-main{padding-top:36px}
.case-main>h1{font-size:clamp(52px,7vw,98px);margin-top:18px}
.case-main>.credit{font-size:16px}
.case-title{font-size:clamp(24px,3vw,36px);line-height:1.25;max-width:960px;margin-bottom:32px}
.case-hero{margin:40px 0 0;border-radius:18px;overflow:hidden;background:var(--case-color,#f5f5f2)}
.case-hero img{width:100%;height:auto;max-height:none;object-fit:contain}
.case-hero.is-wide{width:100vw;max-width:none;position:relative;left:50%;transform:translateX(-50%);border-radius:0;margin-top:45px}
.case-hero.is-wide img{width:100%;height:min(88svh,920px);object-fit:cover}
.case-story{padding:66px 0;grid-template-columns:.8fr 1.2fr;gap:80px}
.case-story h2{font-size:clamp(30px,3.3vw,47px);line-height:1.12;letter-spacing:-.04em}
.case-story p{font-size:18px;line-height:1.65;margin:0 0 18px}
.case-story p:last-child{margin-bottom:0}
.case-story .source-link{font-size:16px;line-height:1.5;color:var(--red);text-decoration:underline;text-underline-offset:4px;margin-top:22px;display:inline-block}
.case-media-block{margin:48px 0 20px}
.case-media-block h3{font-size:clamp(26px,3vw,38px);margin-bottom:16px;line-height:1.15}
.case-media-block>p{font-size:18px;line-height:1.6;color:var(--muted);max-width:720px;margin-bottom:28px}
.case-media-block figure{border-radius:16px;overflow:hidden;background:#f1f0ec}
.case-media-block video,.case-media-block img{width:100%;max-height:740px;object-fit:contain}
.case-media-block.case-media-paired{display:grid;grid-template-columns:.72fr 1.28fr;align-items:center;gap:60px}
.case-media-block.case-media-paired h3{margin-top:0}
.case-media-block.case-media-paired p{font-size:18px;line-height:1.65;color:var(--muted)}
.case-approach{gap:36px;padding:55px 0;border-bottom:1px solid var(--line)}
.case-approach h3{font-size:26px;line-height:1.2}
.case-approach p{font-size:17px;line-height:1.6;margin-top:14px}
.case-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin-top:30px}
.case-metrics strong{font-size:clamp(38px,4.6vw,64px);color:var(--red);line-height:1.1}
.case-metrics span{font-size:16px;line-height:1.5}
.case-meta{margin:0;padding:26px 0;grid-template-columns:1fr;border:0;border-bottom:1px solid var(--line)}
.case-meta dt{font-size:15px}
.case-meta dd{font-size:17px;max-width:960px}
.case-related{padding-top:75px}
.modal-project-head .credit{font-size:15px!important}
.modal-project-body h3,.modal-project-outcome h3{font-size:26px;line-height:1.2}
.modal-project-body p,.modal-project-outcome p{font-size:17px;line-height:1.6}
.modal-project-media{margin:25px 0 35px}
.modal-project-media video{max-height:58vh;width:100%;object-fit:contain;background:#f5f4f1}
.modal-project-footer .credit{font-size:15px}
.case-main figcaption{display:none}
@media(min-width:1700px){.film-stage{aspect-ratio:16/8}.idea-statement{max-width:1330px}}
@media(max-width:1000px){.reel-grid{grid-template-columns:1fr 1fr;gap:30px 22px}.film-story{gap:20px 35px;padding:30px}.case-story{gap:40px}.case-media-block.case-media-paired{gap:30px}}
@media(max-width:760px){
 .idea-section{padding-block:70px 80px}.idea-statement{font-size:clamp(30px,7.8vw,46px);line-height:1.34;letter-spacing:-.025em}
 .world-reels{padding-top:20px;padding-bottom:65px}.world-reels-heading{align-items:start;flex-direction:column;gap:10px}.world-reels-heading p{font-size:15px}.reel-grid{gap:25px 14px}.reel-media{aspect-ratio:1;border-radius:10px}.reel-card h4{font-size:19px;margin-top:13px}.reel-card p{font-size:14px}
 .films-section{padding-top:55px}.films-section .section-intro{grid-template-columns:1fr;gap:24px}.films-section .section-intro>p{justify-self:start}.films-section .section-intro>div>p:first-child{font-size:15px;margin-bottom:15px}
 .film-tabs{gap:24px;margin-bottom:22px}.film-tabs button{font-size:15px;min-height:44px}.client-story-grid{border-radius:14px}.film-stage{aspect-ratio:16/10}.film-stage video{object-fit:contain}.film-story{display:block;padding:25px 23px 28px}.film-story .film-heading>p{font-size:14px}.film-story h3{font-size:32px}.film-story .film-heading .text-link{margin:10px 0 17px;font-size:15px}.film-story>#film-description,.film-story>#film-decision{font-size:16px;margin-bottom:15px}.film-story>#film-credit{font-size:14px;margin-top:20px}.film-play{right:12px;bottom:12px}.film-stage[data-paused=true] .film-play{width:42px;height:42px}
 #cash-stage{min-height:560px;padding-top:85px}#cash-stage .cash-gun{width:210px}#cash-stage h2{font-size:clamp(52px,12vw,82px)}
 .case-main{padding-top:25px}.case-title{font-size:26px;margin-bottom:25px}.case-main>.credit{font-size:15px}.case-hero{margin-top:25px;border-radius:12px}.case-hero.is-wide{margin-top:25px}.case-hero.is-wide img{height:auto;min-height:0;object-fit:contain}
 .case-story{grid-template-columns:1fr;gap:22px;padding:44px 0}.case-story h2{font-size:32px}.case-story p{font-size:17px}.case-meta dd{font-size:16px}.case-approach{grid-template-columns:1fr;padding:35px 0;gap:30px}.case-approach p{font-size:16px}
 .case-media-block{margin:35px 0 5px}.case-media-block>p{font-size:17px}.case-media-block.case-media-paired{grid-template-columns:1fr;gap:22px}.case-media-block.case-media-paired p{font-size:17px}.case-media-block figure{border-radius:10px}
 .case-metrics{gap:27px 20px}.case-metrics strong{font-size:43px}.case-metrics span{font-size:15px}
}
@media(prefers-reduced-motion:reduce){.media-wrap::after{transition:none}}
