.studio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}
.studio-card{overflow:hidden;background:#f8faf2;color:#173b24;border:1px solid #b9cdb5;border-radius:12px;box-shadow:0 5px 16px #0002}
.studio-card-body{padding:1.3rem}.studio-card h3 a{color:#214c30;text-decoration:none}.studio-card h3 a:hover{text-decoration:underline}
.studio-cover{display:block;width:100%;height:240px;object-fit:contain;background:#e9eee3;padding:.5rem}
.studio-date{font-size:.9rem;color:inherit;opacity:.8;margin-bottom:.65rem}
.studio-banner{display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center;background:#fff4cb;color:#3d3412;border:1px solid #c6aa4a;border-radius:10px;padding:1rem 1.3rem}
.studio-banner a{color:#204f30;font-weight:700}.studio-hero{margin:1.8rem 0}.studio-hero img{display:block;width:100%;max-height:680px;object-fit:contain;background:#152c20;border-radius:8px}
.studio-story{white-space:pre-wrap;overflow-wrap:anywhere;font-size:1.08rem;line-height:1.8;max-width:78ch}
.studio-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.studio-photo-grid img{width:100%;height:360px;object-fit:contain;background:#152c20;border-radius:8px}.studio-photo-grid figcaption{font-size:.9rem;margin-top:.5rem}
.studio-page h1,.studio-card h3,.studio-banner{overflow-wrap:anywhere}.studio-back{font-weight:600}
.studio-admin .form-control,.studio-admin .form-select{max-width:100%;background:#fff;color:#162d1d}.studio-admin .form-label{font-weight:600}.studio-admin .form-text{color:inherit;opacity:.8}.studio-admin textarea{width:100%}
.studio-admin-photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.studio-admin-photos img{width:100%;height:160px;object-fit:contain;background:#e9eee3}.studio-admin-photos fieldset{border:1px solid #829a80;padding:.8rem;border-radius:8px;min-width:0}.studio-admin .studio-status{display:inline-block;padding:.15rem .55rem;border-radius:12px;background:#e9eee3;color:#173b24;font-size:.85rem}
.studio-admin .table{background:#fff;color:#162d1d}.studio-admin .table td{vertical-align:middle}.studio-admin .studio-form-grid{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}
@media(max-width:991px){.studio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-admin .studio-form-grid{grid-template-columns:1fr}}
@media(max-width:600px){.studio-grid,.studio-photo-grid{grid-template-columns:1fr}.studio-cover{height:260px}.studio-photo-grid img{height:280px}}
