/* Glow Arts: artwork-led composition within the existing cream-and-gold identity. */
::selection { background: #ded0b1; color: #2d2c2a; }
:root { --text-h1: clamp(2.9rem, 5.7vw, 5.8rem); }
html { scroll-padding-top: 110px; scrollbar-color: #8c7445 #f8f7f4; }
h1, h2 { letter-spacing: -.035em; }
h1 em, h2 em { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; letter-spacing: -.04em; }
.site-header { background: var(--color-bg); backdrop-filter: none; }
.studio-hero { padding-block: clamp(2.5rem, 5vw, 5rem); border-bottom: 1px solid var(--color-line); }
.studio-hero-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(2rem, 5vw, 5rem); align-items: center; }
.studio-hero h1 { margin-bottom: 1.6rem; }
.studio-hero h1 em { color: var(--color-gold); }
.studio-hero-description { max-width: 38ch; font-size: var(--text-lead); line-height: 1.65; margin-bottom: 2rem; }
.studio-hero-note { border-top: 1px solid var(--color-line); padding-top: 1.2rem; margin: 2rem 0 0; max-width: 40ch; font-size: .85rem; color: var(--color-ink-soft); }
.studio-feature { margin: 0; }
.studio-feature-frame { background: #353a32; padding: clamp(1rem, 2.3vw, 2rem); }
.studio-feature img { width: 100%; height: clamp(320px, 40vw, 530px); object-fit: contain; }
.studio-feature figcaption { display: flex; gap: .8rem; justify-content: space-between; align-items: center; padding-top: 1rem; font-size: .78rem; }
.studio-feature figcaption a { min-height: 44px; display: inline-flex; gap: .7rem; align-items: center; text-underline-offset: 5px; }
.studio-feature svg, .purpose-link svg { width: 15px; height: 15px; flex: none; }
.studio-purpose .head-row, .studio-medium .head-row { margin-bottom: 2.5rem; }
.purpose-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; }
.purpose-link { display: flex; flex-direction: column; border-top: 1px solid var(--color-gold); padding-block: 1.5rem; text-decoration: none; }
.purpose-link h3 { margin-bottom: 1rem; }
.purpose-link p { font-size: .95rem; }
.purpose-link > span { display: flex; justify-content: space-between; align-items: center; gap: 1rem; color: var(--color-ink); font-size: .85rem; margin-top: auto; padding-top: 1.5rem; }
.purpose-link:hover h3 { color: var(--color-gold); }
.medium-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; }
.medium-grid h3 { font-size: 1.8rem; margin-bottom: 1rem; }
.medium-grid p { max-width: 48ch; }
.studio-medium .head-row p, .studio-medium .link-arrow { color: var(--color-dark-text); }
.glow-invitation { display: flex; justify-content: space-between; align-items: center; gap: 2rem; margin-top: 3.5rem; padding-top: 2rem; border-top: 1px solid #ffffff40; }
.glow-invitation p { margin-bottom: 0; max-width: 54ch; }
.glow-invitation .btn { flex: none; color: var(--color-dark-text); border-color: var(--color-dark-muted); }
.glow-invitation .btn:hover { background: var(--color-dark-text); color: var(--color-dark); }
.artwork-note { margin: 2rem 0 0; }
.commission-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(2rem, 6vw, 6rem); align-items: start; }
.commission-layout > div > p { max-width: 43ch; }
.commission-form { padding: clamp(1rem, 2.6vw, 2.5rem); background: var(--color-bg); }
.form .glow-choice { display: flex; align-items: center; gap: 1rem; min-height: 60px; padding-block: .5rem; cursor: pointer; }
.form .glow-choice input { appearance: auto; width: 22px; height: 22px; min-height: 22px; padding: 0; accent-color: var(--color-gold); flex: none; }
.glow-choice small { display: block; color: var(--color-ink-soft); margin-top: .2rem; }
.glow-choice[hidden] { display: none; }
.commission-summary { border-block: 1px solid var(--color-line); padding-block: 1rem; font-size: .9rem; }
.commission-summary p { margin: .4rem 0 0; }
.form ::placeholder { color: #726e66; }
.form input, .form textarea { caret-color: var(--color-gold); }
.section .label { display: none; }
.works .work .n { display: none; }
.work figcaption { grid-template-columns: 1fr auto; }
.work .m { grid-column: 1; font-size: .82rem; }
.work .t { font-size: 1.15rem; }
.works .work:nth-child(3n+2) { margin-top: 0; }
.sample-unavailable { display: grid; align-content: center; justify-items: start; gap: .7rem; padding: clamp(1.5rem, 4vw, 3rem); background: var(--color-bg-alt); color: var(--color-ink); min-height: 160px; }
.sample-unavailable p { margin: 0; max-width: 42ch; font-size: .95rem; }
.sample-unavailable a { min-height: 44px; display: inline-flex; align-items: center; text-underline-offset: 5px; }
@media (max-width: 899px) {
  .studio-hero-grid { grid-template-columns: 1fr 1fr; gap: 1.5rem; }
  .studio-hero h1 { font-size: clamp(2.7rem, 6vw, 4rem); }
  .studio-hero .btn-row { flex-direction: column; align-items: flex-start; }
  .studio-feature img { height: 390px; }
  .studio-feature figcaption { display: flex; flex-wrap: wrap; gap: .25rem 1rem; }
  .commission-layout { grid-template-columns: 1fr; }
  .glow-invitation { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 639px) {
  .studio-hero-grid, .purpose-grid, .medium-grid { grid-template-columns: 1fr; }
  .studio-hero h1 { font-size: clamp(2.6rem, 10.5vw, 3.8rem); }
  .studio-hero-grid { gap: 2.2rem; }
  .studio-hero .btn-row { gap: .5rem; }
  .studio-hero-note { margin-top: 1.2rem; }
  .studio-feature img { height: 350px; }
  .studio-feature figcaption { display: flex; }
  .purpose-grid { gap: 0; }
  .purpose-link { padding-block: 1.5rem; }
  .medium-grid { gap: 2.5rem; }
  .commission-form { padding: 1rem; }
  .glow-invitation .btn { width: 100%; }
}
@media (prefers-reduced-motion: no-preference) {
  .studio-feature-frame { animation: frame-arrive 800ms cubic-bezier(.16,1,.3,1) both; }
  @keyframes frame-arrive { from { clip-path: inset(3% 3% 3% 3%); } to { clip-path: inset(0); } }
}
