/* Readability and useful next steps, retaining the original art and palette. */
.site-header nav { font-size:14px; gap:24px; }
.hero-description { font-size:16px; }
.hero { display:block; min-height:0; padding-block:72px 64px; text-align:center; }
.hero-copy { max-width:900px; margin-inline:auto; }
.hero:before { inset:0; background:radial-gradient(ellipse at 50% 40%,#754c9b18,transparent 70%); }
.hero .eyebrow, .hero-actions, .hero-footnote { justify-content:center; }
.hero-description { max-width:580px; margin-inline:auto; }
.eyebrow, .section-heading .eyebrow, .hero .eyebrow,
.crew-heading .eyebrow, .dialog-top .eyebrow, .dialog-content>.eyebrow { font-size:11px; }
.hero-footnote { font-size:10px; flex-wrap:wrap; }
.label-top { font-size:10px; }
.label-bottom { font-size:17px; }
.token-heart span { font-size:10px; }
.section-heading>p, .project-info>p, .bench-item p { font-size:14px; }
.project-tag, .featured .project-tag, .bench-category, .workbench-stamp,
.crew-name-line>span, .crew-picker-label, .access-label { font-size:11px; }
.project-availability { display:flex; align-items:center; gap:8px; font-size:12px; color:#c5b5d2; margin:auto 0 13px; }
.project-availability>span { width:6px; height:6px; border-radius:50%; background:#b8a1ca; flex-shrink:0; }
.project-availability.is-available { color:var(--cyan); }
.project-availability.is-available>span { background:var(--cyan); }
.project-open { font-size:14px; min-height:44px; margin-top:0; }
.card-demo-link { display:flex; justify-content:space-between; align-items:center; gap:12px; min-height:44px; font-size:14px; color:var(--cyan); border-top:1px solid var(--line); margin-top:6px; padding-top:6px; }
.card-demo-link:hover { color:var(--text); }
.waystone-art>img { position:relative; z-index:1; object-fit:contain; filter:drop-shadow(0 6px 8px #0003); }
.inventory-note { font-size:13px; }
.crew-member-copy>p:not(.sr-only):not(.crew-look-error) { font-size:15px; }
.crew-look-picker button, .crew-traits { font-size:13px; }
.crew-picker-label { color:var(--muted); }
.crew-look-error { font-size:14px; }
.button, .text-link, .hero-actions .button, .hero-actions .text-link { font-size:14px; }
.project-filters button { font-size:13px; min-height:44px; }
.pocket-demo { display:grid; grid-template-columns:.85fr 1.15fr; gap:64px; align-items:center; padding-block:78px; border-bottom:1px solid var(--line); }
.demo-intro>.eyebrow { color:var(--cyan); margin-bottom:12px; }
.demo-intro>p:not(.eyebrow) { color:var(--muted); font-size:16px; line-height:1.85; margin:22px 0; }
.demo-intro>.demo-privacy { font-size:13px!important; padding-left:15px; border-left:2px solid #574263; }
.demo-details { background:none; border:0; padding:8px 0; color:var(--purple); text-align:left; min-height:44px; }
.demo-card { background:#1b1728; border:1px solid #514064; border-radius:10px; padding:26px; box-shadow:5px 6px 0 #0d0b1380; min-width:0; }
.demo-card-heading { display:flex; align-items:center; gap:10px; margin-bottom:23px; flex-wrap:wrap; }
.demo-card-heading h3 { font:500 21px var(--display); margin:0; }
.demo-card-heading>span { margin-left:auto; color:var(--purple); font-size:12px; }
#pocket-form label { display:block; font-size:14px; margin-bottom:8px; }
#pocket-note { display:block; width:100%; resize:vertical; min-height:112px; max-height:360px; padding:13px; background:#12101d; border:1px solid #665271; border-radius:5px; color:var(--text); font:16px/1.6 var(--sans); }
#pocket-note::placeholder { color:#a99ab8; }
#pocket-note:focus-visible { outline:2px solid var(--cyan); outline-offset:3px; }
.note-form-actions { display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; margin-top:14px; }
#note-hint { color:var(--muted); font-size:12px; }
#save-note:disabled { opacity:.55; box-shadow:none; transform:none; }
.note-status { font-size:13px; color:var(--cyan); margin:18px 0 0; min-height:21px; }
.notes-empty { padding:20px 0 0; border-top:1px solid var(--line); font-size:14px; color:var(--muted); margin:16px 0 0; }
.pocket-notes { list-style:none; margin:0; padding:0; max-height:360px; overflow:auto; }
.pocket-notes li { display:flex; gap:10px; align-items:flex-start; padding:14px 0; border-top:1px solid var(--line); }
.pocket-notes p { flex:1; min-width:0; white-space:pre-wrap; overflow-wrap:anywhere; font-size:15px; line-height:1.7; margin:9px 0; }
.note-delete { flex-shrink:0; width:44px; height:44px; border:1px solid transparent; border-radius:5px; background:transparent; color:var(--muted); font-size:23px; }
.note-delete:hover { background:#34253f; border-color:#655176; color:var(--pink); }
.closing>p:not(.eyebrow) { color:var(--muted); max-width:440px; margin:0 0 26px; }
.closing .eyebrow { margin-bottom:12px; }
.contact-address { font-size:14px; color:var(--cyan); margin-top:20px; text-decoration:underline; text-underline-offset:4px; }
.site-footer { font-size:13px; }
.mockup-note { font-size:12px; color:var(--muted); }
.dialog-content li, .project-access p { font-size:14px; }
.dialog-actions { display:flex; align-items:flex-start; flex-direction:column; gap:18px; padding-block:25px; }
.dialog-actions .text-link { min-height:44px; }
.dialog-top button { min-width:44px; min-height:44px; }
@media(max-width:820px) {
  .site-header { flex-wrap:wrap; gap:22px; }
  .site-header nav { flex-wrap:wrap; gap:16px; }
  .hero .eyebrow { letter-spacing:1px; }
  .label-top { font-size:8px; }
  .label-bottom { font-size:13px; }
  .token-heart span { font-size:8px; }
  .token-heart { padding:5px 8px; }
  .pocket-demo { grid-template-columns:1fr 1fr; gap:32px; }
  .demo-card { padding:20px; }
  .demo-card-heading>span { margin-left:44px; }
  .crew-look-picker button { padding-inline:8px; }
}
@media(max-width:600px) {
  .site-header nav { width:100%; display:grid; grid-template-columns:1fr 1fr; gap:4px 16px; }
  .site-header nav>a:not(.nav-button) { display:inline-flex; align-items:center; min-height:44px; }
  .site-header nav>a { font-size:13px; }
  .nav-button { padding:8px 10px; max-width:none; justify-self:start; }
  .hero { padding-block:44px; }
  .hero .eyebrow { font-size:10px; }
  .hero-footnote { font-size:9px; }
  .label-top { font-size:9px; }
  .label-bottom { font-size:15px; }
  .project-filters { flex-wrap:wrap; justify-content:flex-start; gap:4px; }
  .project-filters button { padding:8px 11px; font-size:13px; }
  .featured .project-tag { width:100%; margin:0; padding:0; }
  .project-title { row-gap:12px; }
  .inventory-note { padding:0; }
  .crew-name-line>span { font-size:11px; }
  .crew-picker-label { width:100%; margin:0; }
  .crew-look-picker { gap:4px; }
  .crew-look-picker button { padding-inline:9px; }
  .pocket-demo { grid-template-columns:1fr; padding-block:48px; gap:26px; }
  .pocket-demo h2 { font-size:36px; }
  .demo-card-heading>span { margin-left:auto; }
  .site-footer { font-size:13px; }
  .mockup-note { font-size:12px; }
}
@media(max-width:360px) {
  .hero-art { width:100%; }
  .label-top { font-size:8px; }
  .label-bottom { font-size:13px; }
  .demo-card-heading>span { margin-left:44px; }
}
