/* Company identity first; one current product, no simulated product interface. */
.studio-home { display: block; padding-top: clamp(36px,5vw,64px); }
.studio-home .studio-opening { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(260px,.7fr); column-gap: 60px; max-width: none; margin: 0 0 44px; }
.studio-opening .eyebrow { grid-column: 1 / -1; margin-bottom: 20px; font-family: inherit; letter-spacing: .03em; }
.studio-home .studio-opening h1 { margin: 0; max-width: none; font-size: clamp(54px,7.6vw,104px); line-height: .98; letter-spacing: -.07em; }
.studio-introduction { align-self: end; }
.studio-introduction p { margin: 0; color: var(--ink-2); font-size: 16px; line-height: 1.7; }
.studio-introduction .home-work-link { display: inline-flex; gap: 16px; align-items: center; justify-content: flex-start; margin: 12px 0 0; min-height: 44px; color: var(--accent); }
.studio-project { border-top: 1px solid var(--line-lit); padding-top: 22px; }
.studio-project-heading { display: grid; grid-template-columns: minmax(0,.9fr) minmax(260px,1fr); gap: 60px; align-items: end; margin: 0 0 24px; }
.studio-project-heading .eyebrow { margin-bottom: 10px; font-family: inherit; letter-spacing: .025em; color: var(--ink-2); }
.studio-project-heading h2 { display: flex; align-items: center; gap: 14px; margin: 0; font-size: 48px; letter-spacing: -.04em; }
.project-mark { display: inline-grid; place-items: center; flex: none; width: 42px; height: 42px; background: #204f9e; color: #fff; font-size: 23px; border-radius: 5px; }
.studio-project-heading > p { margin: 0; color: var(--ink-2); font-size: 16px; line-height: 1.65; }
.studio-project-visual { margin: 0; }
.studio-project-visual a { display: block; }
.studio-project-visual img { display: block; width: 100%; height: clamp(220px,24vw,300px); object-fit: cover; object-position: center 55%; }
.studio-project-visual figcaption { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 24px; padding: 12px 0; color: var(--ink-2); font-size: 12px; line-height: 1.6; }
.studio-project-visual figcaption span:last-child { color: var(--ink-3); }
.studio-project-link { display: flex; align-items: center; justify-content: space-between; min-height: 52px; padding: 7px 0; color: var(--accent); text-decoration: none; border-bottom: 1px solid var(--line); font-size: 16px; }
.studio-project-link:hover { color: var(--accent-lit); }
.studio-exploration { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(260px,.7fr); gap: 60px; margin-top: 44px; }
.studio-exploration .eyebrow { margin-bottom: 12px; font-family: inherit; letter-spacing: .03em; }
.studio-exploration h2 { margin: 0; font-size: 26px; line-height: 1.35; letter-spacing: -.025em; }
.studio-exploration p { color: var(--ink-2); font-size: 14px; line-height: 1.7; }
.studio-exploration a { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; color: var(--accent); text-decoration: none; }
.studio-home a:focus-visible { outline: 3px solid var(--accent); outline-offset: 4px; }
@media(max-width:760px) {
 .studio-home .studio-opening, .studio-project-heading, .studio-exploration { grid-template-columns: minmax(0,1fr); gap: 20px; }
 .studio-home .studio-opening { margin-bottom: 30px; }
 .studio-opening .eyebrow { margin-bottom: 0; }
 .studio-home .studio-opening h1 { font-size: clamp(44px,10.5vw,76px); letter-spacing: -.06em; white-space: nowrap; }
 .studio-introduction { max-width: 50ch; }
 .studio-introduction p { font-size: 15px; }
 .studio-introduction .home-work-link { margin-top: 7px; }
 .studio-project { padding-top: 20px; }
 .studio-project-heading { gap: 14px; margin-bottom: 20px; }
 .studio-project-heading h2 { font-size: 36px; }
 .project-mark { width: 40px; height: 40px; font-size: 22px; }
 .studio-project-heading > p { max-width: 46ch; font-size: 14px; }
 .studio-project-visual img { height: 200px; object-position: 55% center; }
 .studio-exploration { margin-top: 32px; }
 .studio-exploration h2 { font-size: 24px; }
}
