@import url("../fonts/classic-fonts.css");

:root {
  color-scheme: light;
}

* {
  box-sizing: border-box;
}

html {
  background: #ffffff;
}

body {
  margin: 0;
  max-width: 1100px;
  padding: 24px clamp(18px, 4vw, 56px) 48px;
  background: #ffffff;
  color: #000000;
  font-family: Arimo, Arial, Helvetica, "Liberation Sans", sans-serif;
  font-size: 16px;
  line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 1.3em 0 0.45em;
  color: #000000;
  font-family: Tinos, "Times New Roman", Times, "Liberation Serif", serif;
  font-weight: 700;
  line-height: 1.15;
}

h1 {
  margin-top: 0;
  font-size: 2em;
}

h2 {
  font-size: 1.5em;
}

h3 {
  font-size: 1.17em;
}

p,
ul,
ol,
dl,
blockquote,
pre,
table,
figure {
  margin: 0 0 1em;
}

ul,
ol {
  padding-left: 1.5em;
}

li {
  margin: 0.15em 0;
}

small,
.meta,
.mini,
.summary,
.footnote {
  color: #333333;
  font-size: 0.9em;
}

a {
  color: #0000ee;
  text-decoration: underline;
}

a:visited {
  color: #551a8b;
}

a:hover,
a:focus {
  background: #ffff00;
  color: #000000;
  outline: 0;
}

a:active {
  color: #ee0000;
}

img {
  max-width: 100%;
  height: auto;
  border: 0;
}

hr {
  height: 2px;
  margin: 1.5em 0;
  border: 0;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000;
}

code,
pre,
samp,
kbd {
  font-family: Cousine, "Courier New", Courier, "Liberation Mono", monospace;
}

code {
  padding: 0 0.2em;
  background: #f2f2f2;
}

blockquote {
  margin-left: 0;
  padding-left: 1em;
  border-left: 3px solid #000000;
}

.top-links {
  display: block;
  width: auto;
  margin: 0 0 1.1em;
  padding: 0 0 0.55em;
  border-bottom: 1px solid #000000;
  font-family: Arimo, Arial, Helvetica, "Liberation Sans", sans-serif;
  font-size: 14px;
  line-height: 2;
  text-align: left;
}

.top-links a,
.top-links a:visited,
.top-links a.support-btn,
.top-links a.merch-btn,
.top-links a.support-btn:visited,
.top-links a.merch-btn:visited {
  display: inline;
  padding: 0.08em 0.25em;
  background: none;
  color: #0000ee;
  font-weight: normal;
  text-decoration: underline;
}

.top-links a.support-btn,
.top-links a.merch-btn {
  animation: none;
  text-shadow: none;
}

.top-links a:hover,
.top-links a:focus {
  background: #ffff00;
  color: #000000;
}

.site-footer,
.footer {
  display: block;
  width: auto;
  margin: 2.5em 0 0;
  padding: 0.8em 0 0;
  border: 0;
  border-top: 1px solid #000000;
  background: none;
  color: #000000;
  font-size: 14px;
  text-align: left;
}

.footer-row {
  display: block;
  width: auto;
  max-width: none;
  margin: 0 0 0.3em;
  padding: 0;
  background: none;
  color: #000000;
  font-size: 14px;
  text-align: left;
}

.footer-row a,
.footer-row a:visited,
.footer-row span {
  display: inline;
  padding: 0;
  background: none;
  color: #0000ee;
  text-decoration: underline;
}

.footer-row span {
  color: #000000;
  text-decoration: none;
}

.footer-row a + a::before,
.footer-row span + span::before,
.footer-row span + a::before,
.footer-row a + span::before {
  content: " | ";
  color: #000000;
  text-decoration: none;
}

.identity {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  margin: 0 0 1.2em;
}

.portrait {
  flex: 0 0 auto;
  width: 160px;
  max-width: 38vw;
  padding: 2px;
  border: 1px solid #000000;
  background: #ffffff;
}

.badge-open-to-work {
  display: inline-block;
  margin: 0 0 0.5em;
  padding: 2px 8px;
  border: 1px solid #005a00;
  background: #008000;
  color: #ffffff;
  font-family: Arimo, Arial, Helvetica, "Liberation Sans", sans-serif;
  font-size: 13px;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.work-line {
  margin: 0;
  font-weight: bold;
}

@media (max-width: 600px) {
  .identity {
    display: block;
  }

  .portrait {
    margin-bottom: 1em;
  }
}

body.catalog-body,
body.simple-page {
  margin: 0 !important;
  max-width: 1180px;
  padding: 24px clamp(18px, 4vw, 56px) 48px !important;
  background: #ffffff !important;
  color: #000000 !important;
  font-family: Arimo, Arial, Helvetica, "Liberation Sans", sans-serif !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
}

body.catalog-body::before,
body.catalog-body::after {
  display: none !important;
  content: none !important;
}

body.catalog-body *,
body.catalog-body *::before,
body.catalog-body *::after {
  border-radius: 0 !important;
  box-shadow: none !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  background-image: none !important;
}

body.catalog-body main,
body.catalog-body .site-header,
body.catalog-body .footer {
  width: 100% !important;
}

body.catalog-body .site-header {
  display: block !important;
  padding: 0 0 1em !important;
  text-align: left !important;
}

body.catalog-body .brand img {
  width: auto !important;
  max-width: 220px !important;
  max-height: 70px !important;
}

body.catalog-body h1,
body.catalog-body h2,
body.catalog-body h3,
body.catalog-body h4,
body.catalog-body h5,
body.catalog-body h6 {
  color: #000000 !important;
  font-family: Tinos, "Times New Roman", Times, "Liberation Serif", serif !important;
}

body.catalog-body h1 {
  font-size: 2em !important;
  line-height: 1.15 !important;
}

body.catalog-body h2 {
  font-size: 1.5em !important;
  line-height: 1.2 !important;
}

body.catalog-body h3 {
  font-size: 1.17em !important;
  line-height: 1.25 !important;
}

body.catalog-body p,
body.catalog-body li,
body.catalog-body dl,
body.catalog-body td,
body.catalog-body th {
  color: #000000 !important;
  font-family: Arimo, Arial, Helvetica, "Liberation Sans", sans-serif !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
}

body.catalog-body .meta,
body.catalog-body .mini,
body.catalog-body .summary,
body.catalog-body .footnote,
body.catalog-body .guide-note,
body.catalog-body .alias-line,
body.catalog-body .pricing-card-copy,
body.catalog-body .pricing-use-line,
body.catalog-body .custom-composition-note,
body.catalog-body .trust-row span {
  color: #333333 !important;
}

body.catalog-body .eyebrow,
body.catalog-body .label,
body.catalog-body .small-label,
body.catalog-body .stat-kicker,
body.catalog-body .pricing-card-label,
body.catalog-body .pricing-card-subtitle {
  color: #000000 !important;
  font-family: Arimo, Arial, Helvetica, "Liberation Sans", sans-serif !important;
  font-weight: bold !important;
  font-size: 13px !important;
}

body.catalog-body a,
body.catalog-body a:visited,
body.catalog-body .text-link,
body.catalog-body .icon-link {
  background: none !important;
  color: #0000ee !important;
  text-decoration: underline !important;
}

body.catalog-body a:visited,
body.catalog-body .text-link:visited,
body.catalog-body .icon-link:visited {
  color: #551a8b !important;
}

body.catalog-body a:hover,
body.catalog-body a:focus-visible,
body.catalog-body .text-link:hover,
body.catalog-body .icon-link:hover {
  background: #ffff00 !important;
  color: #000000 !important;
}

body.catalog-body .nav {
  display: block !important;
  margin: 0 0 1em !important;
}

body.catalog-body .nav a {
  display: inline !important;
  margin: 0 12px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  color: #0000ee !important;
  font-family: Arimo, Arial, Helvetica, "Liberation Sans", sans-serif !important;
  font-size: 14px !important;
  text-decoration: underline !important;
}

body.catalog-body .top-links {
  display: block !important;
  width: auto !important;
  margin: 0 0 1.1em !important;
  padding: 0 0 0.55em !important;
  border-bottom: 1px solid #000000 !important;
  font-size: 14px !important;
  text-align: left !important;
}

body.catalog-body .top-links a,
body.catalog-body .top-links a:not(.support-btn):not(.merch-btn),
body.catalog-body .top-links a.support-btn,
body.catalog-body .top-links a.merch-btn {
  display: inline !important;
  padding: 0.08em 0.25em !important;
  border: 0 !important;
  background: none !important;
  color: #0000ee !important;
  font-weight: normal !important;
  text-decoration: underline !important;
}

body.catalog-body .footer {
  display: block !important;
  margin: 2.5em 0 0 !important;
  padding: 0.8em 0 0 !important;
  border: 0 !important;
  border-top: 1px solid #000000 !important;
  background: none !important;
  color: #000000 !important;
  font-size: 14px !important;
  text-align: left !important;
}

body.catalog-body .footer-row {
  display: block !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 0 0.3em !important;
  padding: 0 !important;
  background: none !important;
  color: #000000 !important;
  font-size: 14px !important;
  text-align: left !important;
}

body.catalog-body .footer-row a,
body.catalog-body .footer-row a:visited,
body.catalog-body .footer-row span {
  display: inline !important;
  padding: 0 !important;
  background: none !important;
  color: #0000ee !important;
  text-decoration: underline !important;
}

body.catalog-body .footer-row span {
  color: #000000 !important;
  text-decoration: none !important;
}

body.catalog-body .button,
body.catalog-body .tab,
body.catalog-body .chip,
body.catalog-body .pack-button,
body.catalog-body .service-add-button,
body.catalog-body .contact-submit-button,
body.catalog-body .catalog-section-nav a,
body.catalog-body .guide-inventory .guide-chip-cloud .chip,
body.catalog-body .guide-inventory .guide-flow-footer .guide-pack-button,
body.catalog-body .guide-inventory .guide-flow-footer .island-count,
body.catalog-body .pricing-chip,
body.catalog-body .pricing-label-pill,
body.catalog-body .pricing-support-pill,
body.catalog-body .track-add-button {
  display: inline-block !important;
  margin: 2px 4px 2px 0 !important;
  padding: 2px 7px !important;
  border: 1px solid #000000 !important;
  background: #ffffff !important;
  color: #000000 !important;
  font-family: Arimo, Arial, Helvetica, "Liberation Sans", sans-serif !important;
  font-size: 14px !important;
  font-weight: normal !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
  cursor: pointer;
}

body.catalog-body .button.primary,
body.catalog-body .tab.active,
body.catalog-body .chip.active,
body.catalog-body .pack-button.active {
  background: #000000 !important;
  color: #ffffff !important;
}

body.catalog-body .button:hover,
body.catalog-body .button:focus-visible,
body.catalog-body .tab:hover,
body.catalog-body .chip:hover,
body.catalog-body .pack-button:hover,
body.catalog-body .service-add-button:hover,
body.catalog-body .contact-submit-button:hover,
body.catalog-body .catalog-section-nav a:hover,
body.catalog-body .track-add-button:hover {
  background: #ffff00 !important;
  color: #000000 !important;
}

body.catalog-body .catalog-hero,
body.catalog-body .alias-islands,
body.catalog-body .licensing-packs,
body.catalog-body .best-compilations,
body.catalog-body .moods-section,
body.catalog-body .search-panel,
body.catalog-body .catalog-grid,
body.catalog-body .seo-section,
body.catalog-body .licensing-pricing-section,
body.catalog-body .custom-composition-section,
body.catalog-body .contact-request-section,
body.catalog-body .archive-signal,
body.catalog-body .creator-support,
body.catalog-body .use-case-strip,
body.catalog-body .brand-panel,
body.catalog-body .top-about,
body.catalog-body .about-card,
body.catalog-body .license-card,
body.catalog-body .stat,
body.catalog-body .pack-card,
body.catalog-body .island-card,
body.catalog-body .proof-card,
body.catalog-body .guide-detail-card,
body.catalog-body .panel,
body.catalog-body .selected-card,
body.catalog-body .ledger,
body.catalog-body .pricing-guide-card,
body.catalog-body .pricing-detail-card,
body.catalog-body .custom-composition-primary,
body.catalog-body .custom-composition-secondary,
body.catalog-body .contact-request-form,
body.catalog-body .books-col {
  background: #ffffff !important;
  color: #000000 !important;
  border: 1px solid #000000 !important;
}

body.catalog-body .flow-ambient,
body.catalog-body .flow-rhythm,
body.catalog-body .flow-downtempo,
body.catalog-body .flow-experimental,
body.catalog-body .creator-request-card,
body.catalog-body .specific-request-button,
body.catalog-body .pricing-support-pill,
body.catalog-body .pricing-detail-card,
body.catalog-body .pricing-price-note,
body.catalog-body .custom-composition-note,
body.catalog-body .service-add-button,
body.catalog-body .contact-request-form,
body.catalog-body .contact-field textarea,
body.catalog-body .contact-submit-button,
body.catalog-body .request-toast,
body.catalog-body .search-input,
body.catalog-body .table-head,
body.catalog-body .track-row,
body.catalog-body .track-add-button,
body.catalog-body #catalog-rows,
body.catalog-body .ledger-controls {
  background: #ffffff !important;
  color: #000000 !important;
  border-color: #000000 !important;
}

body.catalog-body .request-toast {
  border: 1px solid #000000 !important;
}

body.catalog-body .pricing-guide-card::before,
body.catalog-body .pricing-guide-card::after,
body.catalog-body .custom-composition-meta span::before {
  content: none !important;
  display: none !important;
}

body.catalog-body .hero-logo {
  display: none !important;
}

body.catalog-body .legacy-frame {
  display: none !important;
}

body.catalog-body .top-about img,
body.catalog-body .selected-art,
body.catalog-body .cover,
body.catalog-body .custom-composition-photo,
body.catalog-body .pack-cover-image,
body.catalog-body .book-cover {
  border: 1px solid #000000 !important;
  background: #ffffff !important;
}

body.catalog-body .search-input,
body.catalog-body input,
body.catalog-body select,
body.catalog-body textarea {
  padding: 4px !important;
  border: 1px solid #000000 !important;
  background: #ffffff !important;
  color: #000000 !important;
  font-family: Arimo, Arial, Helvetica, "Liberation Sans", sans-serif !important;
  font-size: 14px !important;
}

body.catalog-body .contact-field input:focus,
body.catalog-body .contact-field select:focus,
body.catalog-body .contact-field textarea:focus,
body.catalog-body .search-input:focus {
  border-color: #000000 !important;
  outline: 1px dotted #000000 !important;
}

body.catalog-body .table-head {
  border-bottom: 1px solid #000000 !important;
  background: #eeeeee !important;
  color: #000000 !important;
  font-weight: bold !important;
}

body.catalog-body .track-row {
  border: 0 !important;
  border-bottom: 1px solid #999999 !important;
  background: #ffffff !important;
}

body.catalog-body .track-row:hover,
body.catalog-body .track-row:focus-visible,
body.catalog-body .track-row.active {
  background: #ffffcc !important;
}

body.catalog-body .track-row *,
body.catalog-body .table-head *,
body.catalog-body .tag-pill,
body.catalog-body .asset-title strong {
  color: #000000 !important;
}

body.catalog-body .tag-pill {
  color: #333333 !important;
  font-size: 12px !important;
}

body.catalog-body .guide-inventory {
  display: block !important;
}

body.catalog-body .guide-inventory-row {
  margin: 0 0 12px !important;
}

body.catalog-body .catalog-section-nav {
  display: block !important;
  margin: 0 0 1em !important;
}

body.catalog-body .catalog-section-nav a {
  margin: 0 10px 4px 0 !important;
}

body.catalog-body .site-header .brand {
  display: inline-block !important;
  margin: 0 0 0.5em !important;
}

body.catalog-body .simple-page .guide-hero,
body.catalog-body .guide-hero {
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
}

body.catalog-body .guide-detail-grid {
  display: block !important;
}

body.catalog-body .guide-detail-card {
  margin: 0 0 1em !important;
  padding: 12px !important;
}

body.catalog-body .books-columns {
  display: block !important;
}

.book-cover-placeholder {
  border: 1px dashed #000000 !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

.book-cover-placeholder span,
.book-cover-placeholder strong,
.book-info h3,
.book-info p,
.books-col h2,
.books-tagline {
  color: #000000 !important;
}

.book-info h3,
.books-col h2 {
  font-family: Tinos, "Times New Roman", Times, "Liberation Serif", serif !important;
}

.book-subtitle {
  color: #333333 !important;
}

.books-sub,
.books-note,
.book-links-muted,
.updates-list time,
.update-more {
  color: #333333 !important;
}

.book-links a {
  border: 1px solid #000000 !important;
  background: #ffffff !important;
  color: #0000ee !important;
  text-transform: none !important;
}

.book-links a:hover,
.book-links a:focus {
  background: #ffff00 !important;
  color: #000000 !important;
}

.update-excerpt {
  background: #f5f5f5 !important;
  color: #000000 !important;
  border-left: 1px solid #000000 !important;
}

.updates-list li {
  border-left: 2px solid #000000 !important;
}

.books-wrap {
  width: 100%;
  max-width: 1000px;
  margin: 0;
  padding: 0;
  text-align: left;
}

.books-header {
  margin: 0 0 1.4em;
}

.books-logo {
  width: 200px;
  margin: 0 0 0.6em;
}

.books-tagline {
  color: #000000;
  font-size: 14px;
  font-style: italic;
}

.books-sub {
  color: #333333;
  font-size: 14px;
}

.books-columns {
  display: block;
}

.books-col {
  margin: 0 0 1.2em;
  padding: 14px;
  border: 1px solid #000000;
  background: #ffffff;
  text-align: left;
}

.books-col h2 {
  margin: 0 0 1em;
  padding: 0 0 0.4em;
  border-bottom: 1px solid #000000;
  color: #000000;
  font-family: Tinos, "Times New Roman", Times, "Liberation Serif", serif;
  font-size: 1.5em;
  letter-spacing: 0;
  text-transform: none;
}

.books-col h2 span {
  padding: 0;
  background: none;
  color: #000000;
}

.updates-email-btn {
  padding: 1px 6px;
  border: 1px solid #000000;
  color: #0000ee;
  font-size: 13px;
  letter-spacing: 0;
  text-transform: none;
}

.updates-email-btn:hover,
.updates-email-btn:focus {
  background: #ffff00;
  color: #000000;
  text-decoration: underline;
}

.book-card {
  gap: 16px;
}

.book-card + .book-card {
  margin-top: 1.2em;
  padding-top: 1.2em;
  border-top: 1px dashed #999999;
}

.book-cover {
  width: 130px;
  border: 1px solid #000000;
  box-shadow: none;
}

.book-cover-placeholder {
  width: 130px;
  border: 1px dashed #000000;
  background: #ffffff;
  box-shadow: none;
}

.book-cover-placeholder span {
  color: #000000;
  font-size: 1em;
}

.book-cover-placeholder strong {
  color: #333333;
  font-size: 11px;
  letter-spacing: 0;
}

.book-info h3 {
  color: #000000;
  font-family: Tinos, "Times New Roman", Times, "Liberation Serif", serif;
}

.book-subtitle {
  color: #333333;
  font-size: 13px;
  letter-spacing: 0;
  text-transform: none;
}

.book-info p {
  color: #000000;
  font-size: 15px;
}

.book-links-muted,
.books-note {
  color: #333333;
}

.book-links a {
  padding: 1px 6px;
  border: 1px solid #000000;
  color: #0000ee;
  font-size: 13px;
  letter-spacing: 0;
  text-transform: none;
}

.book-links a:hover,
.book-links a:focus {
  background: #ffff00;
  color: #000000;
  text-decoration: underline;
}

.updates-list {
  gap: 1em;
}

.updates-list time {
  color: #333333;
  font-size: 13px;
}

.updates-list p {
  color: #000000;
}

.update-excerpt {
  padding: 0.4em 0.6em;
  border-left: 1px solid #000000;
  background: #f5f5f5;
  color: #000000 !important;
  font-size: 14px !important;
}

.update-more {
  color: #333333;
}

.books-footer {
  margin: 1.4em 0 0;
  padding: 0.8em 0 0;
  border-top: 1px solid #000000;
}

@media (max-width: 600px) {
  .books-columns {
    display: block;
  }

  .book-card {
    display: block;
  }

  .book-cover,
  .book-cover-placeholder {
    width: 140px;
    margin: 0 0 1em;
  }
}

body.catalog-body .stat strong,
body.catalog-body .stat-kicker,
body.catalog-body .brand-panel .meta,
body.catalog-body .guide-row-label strong,
body.catalog-body .guide-flow-head strong,
body.catalog-body .guide-flow-head h2,
body.catalog-body .guide-flow-card strong,
body.catalog-body .island-count,
body.catalog-body .creator-request-card h3,
body.catalog-body .license-card h3,
body.catalog-body .catalog-beta-notice {
  color: #000000 !important;
}

body.catalog-body .trust-row span {
  padding: 2px 7px;
  border: 1px solid #000000 !important;
  background: #ffffff !important;
  color: #000000 !important;
  font-style: normal !important;
}

body.catalog-body .catalog-beta-notice {
  font-family: Arimo, Arial, Helvetica, "Liberation Sans", sans-serif !important;
  font-size: 13px !important;
}

body.catalog-body .pricing-main-title,
body.catalog-body .pricing-quote-card h3,
body.catalog-body .pricing-card-label,
body.catalog-body .pricing-card-subtitle,
body.catalog-body .contact-request-section .label,
body.catalog-body .beta-tag {
  color: #000000 !important;
}

body.catalog-body .pricing-range-note,
body.catalog-body .pricing-use-line {
  color: #333333 !important;
}

body.catalog-body .contact-request-section .label {
  font-style: normal !important;
}

body.catalog-body .contact-field input,
body.catalog-body .contact-field select,
body.catalog-body .contact-field textarea {
  padding: 4px !important;
  border: 1px solid #000000 !important;
  background: #ffffff !important;
  color: #000000 !important;
  font-family: Arimo, Arial, Helvetica, "Liberation Sans", sans-serif !important;
  font-size: 14px !important;
}

body.catalog-body .catalog-help-button {
  border: 1px solid #000000 !important;
  background: #ffffff !important;
  color: #000000 !important;
}

body.catalog-body .pricing-guide-card .guide-note {
  color: #333333 !important;
}

body.catalog-body .alias-cloud span,
body.catalog-body .guide-detail-card .chip,
body.catalog-body .guide-flow-card .chip {
  display: inline-block !important;
  margin: 2px 4px 2px 0 !important;
  padding: 2px 7px !important;
  border: 1px solid #000000 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  color: #000000 !important;
  font-family: Arimo, Arial, Helvetica, "Liberation Sans", sans-serif !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
}

body.catalog-body .text-link {
  display: inline !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  color: #0000ee !important;
  font-weight: normal !important;
  text-decoration: underline !important;
}

body.catalog-body .site-header .brand {
  display: none !important;
}

body.catalog-body .guide-flow-head .eyebrow,
body.catalog-body .guide-row-label .eyebrow {
  color: #000000 !important;
}

body.catalog-body .custom-composition-primary h2 {
  color: #000000 !important;
}

body.catalog-body .custom-composition-meta {
  color: #333333 !important;
}

.book-card {
  align-items: flex-start;
  text-align: left;
}

@media (max-width: 600px) {
  .book-card {
    text-align: left;
  }
}

.identity-welcome {
  margin-bottom: 1.4em;
}

.identity-work {
  align-items: center;
  margin: 0 0 1.5em;
  padding: 0.8em 0;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000;
}

.identity-work .portrait {
  width: 120px;
}

.identity-work p:last-child,
.welcome-copy p:last-child {
  margin-bottom: 0;
}

.badge-note {
  color: #333333;
  font-size: 13px;
}

.home {
  max-width: 860px;
}

.home h1 {
  font-size: 1.8em;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25em 0.6em;
  margin: 0.9em 0 0;
  font-size: 15px;
}

.hero-actions .dot {
  color: #555555;
}

.icon-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.inline-icon {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
}

.availability-line {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.4em 1em;
  margin: 0 0 1.2em;
  font-size: 14px;
}

.availability-line .badge-open-to-work {
  margin: 0;
}

.stat-line {
  margin: 0 0 1.6em;
  color: #333333;
  font-size: 14px;
}

.section-intro {
  color: #333333;
  font-size: 15px;
}

.project-list {
  margin: 0.8em 0 1.4em;
}

.project {
  margin: 0 0 1.1em;
  padding: 0 0 0.9em;
  border-bottom: 1px dotted #999999;
}

.project:last-child {
  margin-bottom: 0;
  border-bottom: 0;
}

.project h3 {
  margin: 0 0 0.15em;
  font-size: 1.13em;
}

.project-meta {
  margin: 0 0 0.35em;
  color: #555555;
  font-size: 13px;
}

.project p {
  margin: 0 0 0.35em;
  font-size: 15px;
  line-height: 1.5;
}

.project p:last-child {
  margin-bottom: 0;
}

.quiet {
  color: #555555;
  font-size: 14px;
}

.small-links {
  color: #333333;
  font-size: 14px;
}

.see-more {
  margin: 0 0 1.8em;
  color: #333333;
  font-size: 15px;
}

.software-list {
  margin: 0.8em 0 1.6em;
  padding-left: 1.3em;
}

.software-list li {
  margin: 0 0 0.7em;
  font-size: 15px;
  line-height: 1.5;
}

.software-meta {
  display: inline-block;
  margin-left: 0.4em;
  color: #555555;
  font-size: 12px;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  white-space: nowrap;
}

.software-desc {
  display: block;
  color: #333333;
  font-size: 14px;
}

.contact-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.6em;
  margin: 0 0 1em;
}

.home .button,
.app-page .button {
  display: inline-block;
  padding: 0.22em 0.85em;
  border: 2px outset #d4d0c8;
  background: #d4d0c8;
  color: #000000;
  font-family: Arimo, Arial, Helvetica, "Liberation Sans", sans-serif;
  font-size: 14px;
  line-height: 1.6;
  text-decoration: none;
}

.home .button:hover,
.home .button:focus,
.app-page .button:hover,
.app-page .button:focus {
  background: #c0c0c0;
  border-color: #c0c0c0;
  color: #000000;
  outline: 0;
}

.home .button:active,
.app-page .button:active {
  border-style: inset;
}

.home .button.primary,
.app-page .button.primary {
  border: 2px outset #000000;
  background: #000000;
  color: #ffffff;
  font-weight: bold;
}

.home .button.primary:hover,
.home .button.primary:focus,
.app-page .button.primary:hover,
.app-page .button.primary:focus {
  background: #0000dd;
  border-color: #0000dd;
  color: #ffffff;
}

.app-page .app-download-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.8em;
  margin: 1.2em 0;
}

.app-page .app-meta {
  color: #333333;
  font-size: 14px;
}

.app-page .app-meta-pending {
  padding: 0.3em 0.6em;
  border: 1px dashed #000000;
}

.app-page .shots-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 1em;
}

.app-page .shot {
  margin: 0;
  padding: 6px;
  border: 1px solid #000000;
  background: #ffffff;
}

.app-page .shot img {
  display: block;
  width: 100%;
  max-width: 230px;
  height: auto;
  border: 1px solid #000000;
  background: #eeeeee;
}

.app-page .shot figcaption {
  margin-top: 5px;
  color: #333333;
  font-size: 13px;
  text-align: center;
}

.terminal-shot {
  max-width: 760px;
  margin: 1.2em 0;
  padding: 6px;
  border: 1px solid #000000;
  background: #ffffff;
}

.terminal-shot img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid #000000;
  background: #0d1117;
}

.terminal-shot figcaption {
  margin-top: 5px;
  color: #333333;
  font-size: 13px;
}

.app-page .shot-missing {
  display: none;
}

.app-page .shot img.missing {
  display: none;
}

.app-page .shot img.missing ~ .shot-missing {
  display: grid;
  place-items: center;
  width: 100%;
  max-width: 230px;
  aspect-ratio: 9 / 16;
  border: 1px dashed #000000;
  background: #f2f2f2;
  color: #333333;
  font-size: 13px;
  text-align: center;
}

.portfolio-intro {
  margin-bottom: 1.6em;
}

.studio-block {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  margin: 1.4em 0;
}

.studio-logo {
  flex: 0 0 auto;
  width: 150px;
  padding: 4px;
  border: 1px solid #000000;
  background: #ffffff;
}

.studio-block p:last-child {
  margin-bottom: 0;
}

.portfolio-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px 24px;
  margin: 1em 0 2.2em;
}

.work-card {
  border-top: 1px solid #000000;
  padding-top: 8px;
}

.work-card img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  border: 1px solid #000000;
  background: #eeeeee;
  object-fit: cover;
}

.work-card h3 {
  margin: 0.55em 0 0.2em;
  font-size: 1.12em;
}

.work-meta {
  margin: 0 0 0.4em;
  color: #333333;
  font-size: 13px;
}

.work-card p {
  margin: 0 0 0.5em;
  font-size: 14px;
  line-height: 1.45;
}

.archive-group {
  margin: 1.4em 0;
}

.archive-group h3 {
  margin-bottom: 0.35em;
}

.archive-list {
  margin: 0;
  padding-left: 1.3em;
  column-count: 2;
  column-gap: 2.4em;
}

.archive-list li {
  break-inside: avoid;
  margin: 0 0 0.35em;
  font-size: 14px;
  line-height: 1.4;
}

.archive-type {
  color: #555555;
}

.availability-block {
  margin: 1.6em 0;
  padding: 0.8em 0;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000;
}

@media (max-width: 760px) {
  body {
    padding: 18px 16px 40px;
  }

  .portfolio-grid {
    grid-template-columns: 1fr;
  }

  .archive-list {
    column-count: 1;
  }

  .studio-block {
    display: block;
  }

  .studio-logo {
    margin: 0 0 1em;
  }
}

/* site brand logo (replaces the old top bar) */
.site-brand {
  margin: 0 0 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.site-brand-link { display: inline-block; line-height: 0; }
.site-brand-logo { display: block; width: min(300px, 72vw); height: auto; }

/* small project icons before titles */
.proj-ico {
  display: inline-flex;
  width: 18px;
  height: 18px;
  align-items: center;
  justify-content: center;
  border: 1px solid #000000;
  border-radius: 2px;
  color: #ffffff;
  font-family: Arimo, Arial, Helvetica, "Liberation Sans", sans-serif;
  font-size: 11px;
  font-weight: bold;
  line-height: 1;
  vertical-align: -3px;
  margin-right: 7px;
}
/* footer crumb navigation */
.footer-crumbs { font-size: 12px; }
.footer-crumbs a { opacity: 0.75; }
.footer-crumbs a:hover { opacity: 1; }
