.character-case-page{color-scheme:dark}.character-case-back{align-self:flex-start}.character-case-section{padding:clamp(2.25rem,4vw,3.5rem) 0}.character-case-output{display:grid;min-width:0;min-height:0;margin:0;grid-template-rows:minmax(0,1fr) auto}.character-case-output-card{min-height:0;overflow:hidden}.character-case-output-media{height:100%}.character-case-output-image{display:block;width:100%;height:100%;object-fit:cover;transition:transform var(--duration-slow) var(--ease-standard),filter var(--duration-slow) var(--ease-standard)}.character-case-output-image.is-contain{object-fit:contain;background:var(--color-background-muted)}.character-case-output-card:hover img{filter:contrast(1.05);transform:scale(1.04)}.character-case-output-card:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:var(--spacing-1)}.character-case-output figcaption{display:grid;gap:var(--spacing-1);padding:var(--spacing-3) var(--spacing-4);background:var(--color-background-muted)}.character-case-output figcaption p{margin:0}.character-case-output.is-front{grid-row:span 2;grid-column:span 2}.character-case-output.is-expression,.character-case-output.is-side{grid-column:span 1}.character-case-output.is-back{grid-column:span 2}.character-workflow-skeleton{display:grid;gap:var(--spacing-3);min-height:20rem}.character-case-showcase{padding-block:clamp(1.25rem,3vw,2.5rem)}.character-case-showcase-grid{display:grid;gap:clamp(1.25rem,2.5vw,2rem)}.character-case-showcase-copy{width:100%}.character-case-hero-tag{display:inline-flex;align-self:flex-start;width:fit-content}.character-case-headline-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-5);width:100%}.character-case-title{flex:1 1 auto;max-width:none;overflow-wrap:anywhere;white-space:nowrap}.character-case-headline-action{flex:none}.character-case-hero-copy{max-width:44rem;color:var(--color-text-secondary)}.character-case-showcase-result{min-width:0}.character-case-workflow-copy{display:grid;gap:var(--spacing-2);max-width:52rem}.character-case-workflow-icon{color:var(--color-icon-accent)}.character-case-workflow-copy>p{max-width:44rem;line-height:1.65;color:var(--color-text-secondary)}.character-case-bento{grid-auto-flow:dense;grid-template-rows:repeat(2,minmax(12rem,1fr))}@media (max-width:900px){.character-case-headline-row{align-items:flex-start;flex-direction:column;gap:var(--spacing-3)}}@media (max-width:760px){.character-case-bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none}.character-case-output,.character-case-output.is-back,.character-case-output.is-front{grid-column:span 1;grid-row:span 1}}@media (max-width:500px){.character-case-showcase{padding-block:var(--spacing-5)}.character-case-title{white-space:normal}.character-case-bento{grid-template-columns:1fr}.character-case-output,.character-case-output.is-back,.character-case-output.is-front{grid-column:auto}.character-case-output img{min-height:18rem}}@media (prefers-reduced-motion:reduce){.character-case-output img{transition:none}.character-case-output:hover img{transform:none}}.scene-case-page{color-scheme:dark}.scene-case-back{align-self:flex-start}.scene-case-section{padding:clamp(2.25rem,4vw,3.5rem) 0}.scene-case-showcase{padding-block:clamp(1.25rem,3vw,2.5rem)}.scene-case-showcase-copy{width:100%}.scene-case-hero-tag{display:inline-flex;align-self:flex-start;width:fit-content}.scene-case-headline-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-5);width:100%}.scene-case-title{flex:1 1 auto;max-width:none;overflow-wrap:anywhere;white-space:nowrap}.scene-case-headline-action{flex:none}.scene-case-hero-copy{max-width:44rem;color:var(--color-text-secondary)}.scene-case-workflow-copy{display:grid;gap:var(--spacing-2);max-width:52rem}.scene-case-workflow-icon{color:var(--color-icon-accent)}.scene-case-workflow-copy>p{max-width:44rem;line-height:1.65;color:var(--color-text-secondary)}.scene-case-workflow-skeleton{display:grid;gap:var(--spacing-3);min-height:20rem}@media (max-width:900px){.scene-case-headline-row{align-items:flex-start;flex-direction:column;gap:var(--spacing-3)}}@media (max-width:500px){.scene-case-showcase{padding-block:var(--spacing-5)}.scene-case-title{white-space:normal}}