.partner-section { padding-top:45px; }
.partner-search { display:flex; flex-wrap:wrap; gap:18px; align-items:end; padding:24px; border:1px solid var(--line); background:var(--surface); }
.partner-search .field { flex:1 1 230px; min-width:0; }
.results-count { margin:28px 0 18px; font-size:.83rem; }
.material-list { border-top:1px solid var(--ink); }
.material-card { display:flex; align-items:center; justify-content:space-between; gap:28px; padding:25px 0; border-bottom:1px solid var(--line); }
.material-card>div { min-width:0; }
.material-card h3 { margin:10px 0; overflow-wrap:anywhere; }
.material-card p { margin:0; font-size:.83rem; }
.material-card .underlined-link { flex:none; min-height:44px; align-items:center; }
.empty-panel { padding:35px; border:1px solid var(--line); background:var(--surface); }
.page-intro h1,.detail-hero h1 { overflow-wrap:anywhere; }
.biography-section,.artist-materials { background:#f2efea; }
.photo-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; margin-top:30px; }
.photo-grid figure { margin:0; min-width:0; }
.photo-grid img { display:block; width:100%; height:330px; object-fit:cover; }
.photo-grid figcaption { margin-top:10px; color:var(--muted); font-size:.78rem; }
.artist-gallery h2,.artist-materials h2 { margin:14px 0 30px; }
@media(max-width:700px) { .photo-grid { grid-template-columns:minmax(0,1fr); } .photo-grid img { height:260px; } }
@media(max-width:700px) { .partner-search { padding:18px; align-items:stretch; flex-direction:column; } .partner-search .field { flex:auto; } .material-card { align-items:flex-start; flex-direction:column; gap:16px; } .empty-panel { padding:22px; } .page-intro h1 { font-size:clamp(2.7rem,10vw,4rem); } }

.demo-check { display:flex; align-items:flex-start; gap:12px; margin:22px 0; font-size:.9rem; line-height:1.6; }
.demo-check input { width:22px; height:22px; flex:none; margin-top:2px; accent-color:var(--accent); }
.field-error { margin:0; font-size:.82rem; color:#8b2942; }
.form-errors ul { margin:10px 0 0; padding-left:20px; }
.form-errors { margin-bottom:24px; }
.success-panel .underlined-link { display:block; margin-top:24px; }

.site-nav { gap:22px; }
.nav-group { position:relative; }
.nav-group summary { display:flex; align-items:center; gap:8px; cursor:pointer; list-style:none; padding:12px 0; }
.nav-group summary::-webkit-details-marker { display:none; }
.nav-group summary::after { content:'⌄'; color:var(--accent); }
.nav-group summary.is-current { color:var(--accent); }
.nav-group__links { position:absolute; right:-18px; top:100%; min-width:190px; padding:10px; display:grid; border:1px solid var(--line); background:var(--paper); box-shadow:0 12px 24px rgb(28 16 48 / .15); }
.nav-group__links a { padding:12px; }
.nav-group__links a:hover { background:var(--surface); }
.page-home .nav-group__links { background:#1c1030; border-color:#4d425a; }
.page-home .nav-group__links a:hover { background:#302040; }
.page-home .nav-group summary::after { color:var(--lime); }
.editorial-layout { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:56px; }
.editorial-layout figure,.photo-grid figure { margin:0; }
.editorial-cover { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; }
figcaption { padding-top:12px; color:var(--muted); font-size:.8rem; line-height:1.6; }
.prose p { margin:0 0 24px; }
.team-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.section--team { background:var(--surface); }
.team-card { min-width:0; padding:30px; border:1px solid var(--line); background:var(--paper); }
.team-card h3 { margin:12px 0; }
.team-card img { width:100%; height:auto; aspect-ratio:5/4; object-fit:cover; margin-bottom:22px; }
.team-monogram { display:grid; place-items:center; width:64px; height:64px; margin-bottom:24px; background:var(--accent); color:white; font:2rem Georgia,serif; }
.editorial-cta { padding-block:44px; border-top:1px solid var(--line); }
.editorial-cta .underlined-link { margin-left:24px; }
.portfolio-grid .artist-card__body { padding-bottom:62px; }
@media(max-width:900px) and (min-width:701px) { .site-nav { gap:14px; font-size:.76rem; } }
@media(max-width:800px) { .team-grid { grid-template-columns:1fr; } .editorial-layout { gap:28px; } }
@media(max-width:700px) { .site-nav { gap:0; } .nav-group__links { position:static; box-shadow:none; border:none; border-left:2px solid var(--accent); margin-bottom:10px; } .nav-group summary { padding:12px 0; } .editorial-layout { grid-template-columns:1fr; } .editorial-cta .underlined-link { display:block; width:fit-content; margin:24px 0 0; } }
