/* Final shared refinement of approved A. Roles are defined in brandbook §16. */
.studio-page .detail-masthead{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:var(--space-6)}
.studio-page .solution-art{padding:var(--card-inset)}
.studio-page .solution-art .preview-top{margin-bottom:var(--space-3)}
.studio-page .solution-art-intro{grid-template-columns:4rem minmax(0,1fr);gap:var(--space-4);margin-bottom:var(--space-3)}
.studio-page .solution-art-intro svg{width:4rem}
.studio-page .solution-art-intro h2{font-size:var(--text-title);line-height:1.35}
.studio-page .specimen-flow li{gap:var(--space-3);padding-block:var(--space-2)}
.studio-page .specimen-number{width:2rem;height:2rem;border:0;border-radius:6px;background:var(--tint);font-variant-numeric:tabular-nums}
.studio-page .specimen-flow li>div{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1fr);gap:var(--space-3);padding-bottom:var(--space-2);min-width:0}
.studio-page .specimen-flow li>div>span{margin:0}
.studio-page .solution-art .preview-output{margin-top:var(--space-3);padding:var(--space-4)}
.studio-page .solution-art>small{margin-top:var(--space-3)}
.studio-page .news-problem{padding-block:0 var(--space-6)}
.studio-page .news-value>.news-scale{background:transparent;border:0;border-radius:0;padding:0;margin-bottom:0}
.studio-page .news-stage-content{align-items:start}
.studio-page .news-scale>div{min-width:0}
.studio-page .news-scale strong{font-variant-numeric:tabular-nums}
.studio-page .news-scale span{font-size:var(--text-small);line-height:1.5}
.studio-page .article>section{scroll-margin-top:var(--space-6)}
.studio-page .article>section:not(:first-child){border-top:0}
.studio-page .local-nav a[data-scroll]{min-height:44px;display:flex;align-items:center}
main .text-link{min-height:44px;max-width:100%}
main .text-link:hover{text-decoration:underline;text-underline-offset:.2em}
main summary{min-height:44px;align-content:center}
main summary:hover{color:var(--accent)}
main a:active,main button:not(:disabled):active{transform:translateY(1px)}
.portfolio-shot:focus-visible,.example-open:focus-visible,.related-project:focus-visible{outline:3px solid var(--accent);outline-offset:-4px}
.portfolio-shot:hover img{opacity:1}
.portfolio-filters button:hover,.news-stage-buttons button:hover{border-color:var(--accent)}
.display-group button:hover{border-color:var(--accent)}
.studio-task-index a:focus-visible{outline-offset:4px}
.studio-task-index a:hover{border-color:var(--accent)}
.studio-work-copy h3 a:hover{text-decoration:underline;text-underline-offset:.15em}
.field :is(input,textarea,select):not([type=range]):hover{border-color:var(--muted)}
.field :is(input,textarea,select)[aria-invalid=true]:hover{border-color:var(--error)}
@media(max-width:900px){.studio-page .detail-masthead{grid-template-columns:1fr}.studio-page .process-preview{max-width:none}.studio-page .news-stage-content{grid-template-columns:1fr}}
@media(max-width:620px){.studio-page .solution-art-intro{grid-template-columns:4rem minmax(0,1fr)}.studio-page .specimen-flow li>div{grid-template-columns:1fr;gap:var(--space-1)}.studio-page .news-problem{gap:var(--space-4)}.studio-page .news-scale>div{grid-template-columns:1fr;gap:var(--space-2)}.studio-page .news-scale span{max-width:none}.studio-page .news-value-grid{gap:var(--space-6)}}
@media(prefers-reduced-motion:no-preference){.portfolio-filters button,.news-stage-buttons button,.display-group button,.studio-task-index a{transition:background-color .16s ease-out,border-color .16s ease-out,color .16s ease-out}main a,main button{transition:color .16s ease-out,background-color .16s ease-out,border-color .16s ease-out,transform .16s ease-out}}
@media(prefers-reduced-motion:reduce){main a,main button,.display-group button{transition:none}}
/* Grid children must shrink before a long Russian word can wrap at 320px/A++. */
.studio-masthead>div{min-width:0}
