/* Roland & Sons — Concept Studio. Same theme as the site: pure black, antique
   gold, emerald micro-accents, serif caps. Local system fonts only. */
.studio-layout{display:grid;gap:20px;margin-top:26px}
@media(min-width:960px){.studio-layout{grid-template-columns:1.25fr .85fr;gap:26px}}
.studio-stage{
  position:relative;border:1px solid var(--line);border-radius:18px;overflow:hidden;
  background:
    radial-gradient(560px 300px at 50% -6%,rgba(201,162,39,.16),transparent 62%),
    linear-gradient(180deg,#14130e,#070706);
  box-shadow:0 16px 36px rgba(0,0,0,.18);
  min-height:440px;
}
.studio-stage canvas{display:block;width:100%;height:100%;touch-action:none}
.studio-stage .view-hint{
  position:absolute;left:14px;bottom:12px;color:var(--muted);font-size:11.5px;font-weight:800;
  letter-spacing:.14em;text-transform:uppercase;pointer-events:none;
}
.studio-fallback{
  padding:34px 26px;text-align:center;color:var(--muted);line-height:1.7;font-size:15.5px;
}
.studio-fallback strong{color:var(--text)}
.studio-panel{display:flex;flex-direction:column;gap:18px}
.studio-group{
  background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line);
  border-radius:18px;padding:20px;box-shadow:0 16px 36px rgba(0,0,0,.18);
}
.studio-group h3{
  margin:0 0 12px;font-family:var(--serif);font-size:15px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--gold-2);
}
.studio-opts{display:flex;flex-wrap:wrap;gap:8px}
.studio-opt{
  padding:9px 14px;border-radius:999px;border:1px solid #3a382e;background:rgba(255,255,255,.045);
  color:var(--text);font-size:13.5px;font-weight:800;letter-spacing:.03em;cursor:pointer;
  transition:border-color .2s ease,background .2s ease;
}
.studio-opt:hover{border-color:var(--line-gold)}
.studio-opt[aria-pressed="true"]{
  background:linear-gradient(180deg,var(--gold-2),var(--gold));color:#171200;border-color:transparent;
}
.studio-opt:disabled{opacity:.4;cursor:not-allowed}
.studio-letters{display:grid;grid-template-columns:repeat(9,1fr);gap:5px}
.studio-letters .studio-opt{padding:7px 0;text-align:center;font-family:var(--serif);font-size:14px}
.studio-spec{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.studio-spec li{display:flex;justify-content:space-between;gap:14px;border-bottom:1px dashed var(--line);padding-bottom:8px;font-size:14.5px}
.studio-spec li:last-child{border-bottom:none;padding-bottom:0}
.studio-spec .k{color:var(--muted);font-size:11.5px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;padding-top:2px}
.studio-spec .v{color:var(--text);font-weight:700;text-align:right}
.studio-note{margin:12px 0 0;color:var(--muted);font-size:13.5px;line-height:1.65}
.studio-note strong{color:var(--gold-2)}
.studio-actions{display:flex;gap:10px;flex-wrap:wrap}
.studio-form{display:grid;gap:12px}
.studio-form label{display:block;font-size:11.5px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.studio-form input,.studio-form textarea{
  width:100%;background:#0b0b09;border:1px solid var(--line);border-radius:12px;color:var(--text);
  padding:11px 13px;font-size:15px;
}
.studio-form input:focus,.studio-form textarea:focus{border-color:var(--line-gold);outline:none}
.studio-sent{
  border-left:3px solid var(--emerald);background:rgba(14,157,99,.09);padding:16px 18px;
  color:var(--muted);line-height:1.65;font-size:14.5px;
}
.studio-sent strong{color:var(--text)}
@media(max-width:680px){
  .studio-stage{min-height:360px}
  .studio-letters{grid-template-columns:repeat(7,1fr)}
}
@media(prefers-reduced-motion:reduce){
  .studio-opt{transition:none}
}
