.studio-heading{display:grid;grid-template-columns:1.2fr 1fr;align-items:end;gap:50px;margin:24px 0 48px}.studio-heading h2{font-size:clamp(45px,6vw,82px);line-height:1;letter-spacing:-.065em;margin:0}.studio-heading h2 em{font-family:Georgia,serif;font-weight:400;font-style:italic}.studio-heading>p{max-width:355px;justify-self:end;font-size:15px;color:#bcb1b6;line-height:1.8}.studio-note{font:10px 'DM Mono',monospace;color:#bcb1b6}.concept-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px 24px}.concept-card--lead{grid-column:1/-1}.concept-open{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;font-family:inherit}.concept-image{position:relative;overflow:hidden;background:#2a1720;aspect-ratio:3/2}.concept-card--lead .concept-image{aspect-ratio:2/1}.concept-image img{width:100%;height:100%;object-fit:cover;display:block;transition:filter .6s;animation:concept-drift 18s ease-in-out infinite alternate;animation-play-state:paused}.art-in-view img{animation-play-state:running}.concept-open:hover img{filter:brightness(1.09)}.concept-index{position:absolute;top:22px;left:22px;padding:9px 12px;background:#110f11bc;border:1px solid #ffffff26;color:#f3efe7;font:10px 'DM Mono',monospace;backdrop-filter:blur(10px)}.concept-arrow{position:absolute;right:22px;bottom:22px;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--paper);color:var(--ink);font-size:24px;transition:transform .3s,background .3s}.concept-open:hover .concept-arrow{transform:rotate(45deg);background:var(--gold)}.concept-caption{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:21px 0;border-bottom:1px solid var(--line)}.concept-caption h3{font-size:25px;letter-spacing:-.045em;margin:0}.concept-caption>span{color:#bcb1b6;font-size:11px}.concept-disclosure{font-size:11px;line-height:1.8;color:#aaa0a5;max-width:590px;margin:27px 0 0}.studio-invitation{margin-top:40px;padding:24px 0;display:flex;justify-content:space-between;gap:20px;border-block:1px solid var(--line)}.studio-invitation>span{font-size:16px}.concept-dialog{padding:0;width:min(900px,calc(100% - 32px));max-height:90dvh;overflow:auto;border:1px solid #dfbd6570;background:#191317;color:var(--paper)}.concept-dialog::backdrop{background:#080608dd;backdrop-filter:blur(10px)}.concept-close{position:absolute;right:14px;top:14px;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#110f11e6;color:var(--paper);font-size:27px;cursor:pointer;z-index:1}.concept-dialog__image{width:100%;height:auto;max-height:48dvh;object-fit:cover;display:block}.concept-dialog__body{padding:30px 36px}.concept-dialog h2{font-size:40px;letter-spacing:-.05em;margin:0 0 15px}.concept-description{font-size:15px;line-height:1.8;color:#cbbfc5}.concept-applications{color:var(--gold);font:11px/1.8 'DM Mono',monospace;margin:22px 0}.service-concept-preview{width:100%;height:auto;max-height:250px;object-fit:cover;margin:15px 0 24px}.catalogue-card__meta small:after{content:' / Concept';opacity:.75}.service-hero__art:after{content:'AI-GENERATED STUDIO CONCEPT';position:absolute;right:12px;bottom:12px;background:#110f11d9;padding:8px 10px;font:8px 'DM Mono',monospace;color:var(--paper);z-index:3}.service-hero__art img{object-fit:cover}.catalogue-dialog{max-height:90dvh;overflow:auto}
@keyframes concept-drift{from{transform:scale(1)}to{transform:scale(1.045)}}
@media(max-width:760px){.studio-heading{grid-template-columns:1fr;gap:15px;margin:20px 0 30px}.studio-heading>p{justify-self:start;margin:0}.studio-note{font-size:8px;max-width:120px;text-align:right;line-height:1.6}.concept-grid{grid-template-columns:1fr;gap:25px}.concept-card--lead{grid-column:auto}.concept-card--lead .concept-image{aspect-ratio:3/2}.concept-index{top:12px;left:12px;font-size:8px}.concept-arrow{right:12px;bottom:12px;width:36px;height:36px}.concept-caption{align-items:start;flex-direction:column;gap:7px;padding:16px 0}.concept-caption h3{font-size:25px}.studio-invitation{flex-direction:column}.concept-dialog__body{padding:23px}.concept-dialog h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.concept-image img{animation:none}}

.concept-dialog__image{object-fit:contain;background:#110f11}.service-concept-preview{object-fit:contain;background:#110f11}
