/*
Theme Name: Catalyst
Theme URI: https://emeranovacatalyst.com/
Author: Hyperion Insights
Description: Custom theme for Catalyst, the EmeraNova accelerator for tissue restoration and regenerative medicine startups. Requires the Catalyst Core plugin for the contact form, redirects, and content setup.
Version: 1.0.0
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 8.1
License: Proprietary
Text Domain: catalyst
*/

/* The approved design lives in assets/css/catalyst.css. This file only adds
 * what WordPress needs on top of it. */

.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0;
  margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0 }
.skip-link:focus { position: fixed !important; top: .8rem; left: .8rem; z-index: 100000;
  width: auto; height: auto; clip: auto; padding: .7rem 1rem; margin: 0; overflow: visible;
  background: var(--pan); color: var(--ink); border: 2px solid var(--ink); font-weight: 600 }
main:focus { outline: none }

/* Keep the floating header clear of the toolbar for signed-in editors. */
.admin-bar header.site { top: calc(var(--float-gap) + 32px) }
@media (max-width: 782px) { .admin-bar header.site { top: calc(var(--float-gap) + 46px) } }
@media (max-width: 600px) { .admin-bar header.site { top: var(--float-gap) } }

/* Contact form states. */
.form-status { margin: 1.6rem 0 0; padding: .85rem 1rem; border: 1px solid var(--hair);
  border-left: 3px solid var(--sig); border-radius: var(--r); background: var(--pan);
  color: var(--ink); font-size: .95rem }
.form-status.is-error { border-left-color: #B3261E }
.form-status:focus { outline: 2px solid var(--ink); outline-offset: 3px }
.form .hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden }
.form .act[disabled] { opacity: .6; cursor: progress }

/* Footer legal links. */
.foot-base { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .6rem 1.6rem }
.foot-legal { display: flex; flex-wrap: wrap; gap: .4rem 1.4rem }
.foot-legal a { color: var(--soft); text-decoration: none }
.foot-legal a:hover, .foot-legal a:focus-visible { color: var(--sig-ink); text-decoration: underline;
  text-underline-offset: 3px }

/* Editor-written pages (legal, new pages) reuse the article layout. */
.post-page.plain h1 { margin-top: 0 }
.prose a { color: var(--sig-ink); text-underline-offset: 3px }
/* Media Library images carry width and height attributes. */
.prose img { height: auto }
.prose h2:first-child, .prose h3:first-child { margin-top: 0 }
.prose .wp-block-image, .prose .wp-caption { margin: 2.2rem 0; max-width: 100% }
.prose .aligncenter { margin-inline: auto }
.prose table { width: 100%; border-collapse: collapse; margin: 0 0 1.25rem; font-size: .95rem }
.prose th, .prose td { padding: .55rem .6rem; border-bottom: 1px solid var(--hair); text-align: left;
  vertical-align: top }

/* Blog pagination. */
.pager { display: flex; justify-content: space-between; gap: 1rem; margin-top: 2.4rem }
.pager .nav-links { display: flex; flex-wrap: wrap; gap: .5rem }
.pager .page-numbers { display: inline-block; min-width: 2.4rem; padding: .45rem .7rem;
  border: 1px solid var(--hair); border-radius: var(--r); text-align: center;
  text-decoration: none; color: var(--ink); background: var(--pan) }
.pager .page-numbers.current { border-color: var(--ink); font-weight: 600 }
.pager a.page-numbers:hover { border-color: var(--sig) }

/* Not found. */
.e404 .wrap { max-width: 1280px }
.e404 h1 { max-width: 18ch }
.e404 .lede { margin: 1.2rem 0 0; max-width: 52ch; font-size: clamp(1.05rem, 1.4vw, 1.2rem);
  color: var(--soft) }
.e404 .acts { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1.9rem }
.e404 .e404-links { display: flex; flex-wrap: wrap; gap: .5rem 1.6rem; margin: 2.6rem 0 0;
  padding: 1.4rem 0 0; border-top: 1px solid var(--hair); list-style: none }
.e404 .e404-links a { font-family: var(--d); color: var(--ink); text-decoration: none }
.e404 .e404-links a:hover, .e404 .e404-links a:focus-visible { color: var(--sig-ink) }
