/* Merovex Press - Imprint-specific styles */

h1 {
  font-size: 2.2rem;
  text-align: center;
}

.post__title {
  font-size: 2.8rem;
  line-height: 3.5rem;
}

.main {
  padding-top: 0;
}

/* Hero Section */
.imprint-hero {
  text-align: center;
  padding: 1.5rem 0 2rem;
  margin-bottom: 0;
  border-bottom: 1px solid var(--surface-3);
}

.imprint-hero__tagline {
  font-family: var(--font-serif, ui-serif, serif);
  font-size: 2.8rem;
  line-height: 3.5rem;
  font-weight: 400;
  color: var(--text-1);
  margin-bottom: 1rem;
  text-transform: none;
  letter-spacing: normal;
}

.imprint-hero__description {
  font-size: 1.1rem;
  color: var(--text-2);
  max-width: 600px;
  margin: 0 auto;
  line-height: 1.6;
}

/* Home Sections */
.home-section {
  margin-bottom: var(--size-8);
  padding-bottom: var(--size-8);
  border-bottom: 1px solid var(--surface-3);
}

.home-section:last-of-type {
  border-bottom: none;
}

.home-section__title {
  font-size: var(--font-size-4);
  font-weight: 600;
  color: var(--text-1);
  margin-bottom: var(--size-6);
  text-transform: uppercase;
  letter-spacing: 0.025em;
}

.home-section__more {
  margin-top: var(--size-4);
  text-align: right;
}

.home-section__more a {
  color: var(--link-color);
  text-decoration: none;
  font-weight: 500;
}

.home-section__more a:hover {
  color: var(--link-hover-color);
}

/* Author Cards Grid */
.author-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: var(--size-6);
}

.author-card {
  padding: var(--size-5);
  border: 1px solid var(--surface-3);
  border-radius: var(--radius-2, 5px);
  transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.author-card:hover {
  border-color: var(--link-color);
  transform: translateY(-2px);
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
}

.author-card__link {
  text-decoration: none;
  color: inherit;
  display: block;
}

.author-card__avatar {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  overflow: hidden;
  margin-bottom: var(--size-3);
}

.author-card__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.author-card__name {
  font-size: var(--font-size-3);
  font-weight: 600;
  color: var(--text-1);
  margin: 0 0 var(--size-2) 0;
}

.author-card__genres {
  font-size: var(--font-size-0);
  color: var(--link-color);
  margin: 0 0 var(--size-3) 0;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.author-card__bio {
  font-size: var(--font-size-1);
  color: var(--text-2);
  margin: 0;
  line-height: 1.6;
}

/* Author Profile */
.author-profile {
  max-width: 900px;
  margin: 0 auto;
}

.author-profile__header {
  display: flex;
  gap: var(--size-6);
  align-items: center;
  margin-bottom: var(--size-6);
  padding-bottom: var(--size-6);
  border-bottom: 1px solid var(--surface-3);
}

.author-profile__avatar {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
}

.author-profile__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.author-profile__name {
  font-size: var(--font-size-fluid-3);
  font-weight: 600;
  color: var(--text-1);
  margin: 0 0 var(--size-2) 0;
}

.author-profile__genres {
  font-size: var(--font-size-1);
  color: var(--link-color);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.author-profile__section {
  margin-top: var(--size-8);
  padding-top: var(--size-6);
  border-top: 1px solid var(--surface-3);
}

.author-profile__section h2 {
  font-size: var(--font-size-4);
  font-weight: 600;
  color: var(--text-1);
  margin-bottom: var(--size-6);
  text-transform: uppercase;
  letter-spacing: 0.025em;
}

.author-profile__newsletter {
  margin-top: var(--size-8);
  padding-top: var(--size-6);
  border-top: 1px solid var(--surface-3);
}

/* Book Card enhancements */
.book-item__cover {
  border-radius: var(--radius-2, 5px);
  overflow: hidden;
}

.book-item__cover-image {
  width: 200px;
  aspect-ratio: 2/3;
  border-radius: var(--radius-2, 5px);
  object-fit: cover;
  transition: transform 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.book-item__link:hover .book-item__cover-image {
  transform: translateY(-2px);
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
}

.book-item__series {
  font-size: var(--font-size-0);
  color: var(--link-color);
  margin: var(--size-1) 0 0 0;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

/* Book Page enhancements */
.book-page__cover-img {
  width: 300px;
  aspect-ratio: 2/3;
  border-radius: var(--radius-2, 5px);
  object-fit: cover;
}

.book-page__series-badge {
  font-size: var(--font-size-1);
  color: var(--link-color);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: var(--size-3);
}

.book-page__author {
  font-size: var(--font-size-2);
  color: var(--text-2);
  margin-bottom: var(--size-6);
}

.book-page__author a {
  color: var(--link-color);
  text-decoration: none;
}

.book-page__author a:hover {
  color: var(--link-hover-color);
}

.book-page__buy-button {
  display: inline-block;
  padding: var(--size-4) var(--size-6);
  font-size: var(--font-size-2);
  font-weight: 600;
  background-color: var(--button-bg, var(--link-color));
  color: var(--button-text, white);
  border: none;
  border-radius: var(--radius-2, 5px);
  cursor: pointer;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.book-page__buy-button:hover:not(:disabled) {
  opacity: 0.9;
  transform: translateY(-1px);
}

.book-page__buy-button:disabled {
  background-color: var(--surface-4);
  color: var(--text-2);
  cursor: not-allowed;
}

/* Books page series grouping */
.books-page__series {
  margin-bottom: var(--size-8);
}

.books-page__series-title {
  font-size: var(--font-size-4);
  font-weight: 600;
  color: var(--text-1);
  margin-bottom: var(--size-2);
  text-transform: uppercase;
  letter-spacing: 0.025em;
}

.books-page__series-description {
  font-size: var(--font-size-1);
  color: var(--text-2);
  margin-bottom: var(--size-5);
}

/* Post author byline */
.post__author {
  font-size: var(--font-size-1);
  color: var(--text-2);
  display: block;
  margin-top: var(--size-2);
}

.post__author a {
  color: var(--link-color);
  text-decoration: none;
}

.post__author a:hover {
  color: var(--link-hover-color);
}

.post__issue {
  font-size: var(--font-size-0);
  color: var(--link-color);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  display: block;
  margin-top: var(--size-2);
}

/* Author bio "more" link */
.author-bio__more {
  display: inline-block;
  margin-top: var(--size-3);
  color: var(--link-color);
  text-decoration: none;
  font-size: var(--font-size-1);
}

.author-bio__more:hover {
  color: var(--link-hover-color);
}

/* Post card overrides */
.post-card {
  position: relative;
  border-radius: 27px;
  display: block;
  padding: var(--size-7, 2.5rem) var(--size-6, 1.5rem);
  border: 1px solid var(--surface-3);
  text-decoration: none;
  color: inherit;
  margin-bottom: var(--size-6, 1.5rem);
  transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.post-card:hover {
  border-color: var(--surface-4);
  transform: translateY(-1px);
  text-decoration: none;
  color: inherit;
}

.post-card__header {
  text-align: center;
}

.post-card__date {
  display: block;
  font-size: var(--font-size-0, 0.875rem);
  color: var(--text-2);
  margin-bottom: var(--size-2, 0.5rem);
}

.post-card__title {
  font-size: 1.4rem;
  margin: 0 auto var(--size-4, 1rem) auto;
  color: var(--text-1);
  text-wrap: balance;
  line-height: var(--font-lineheight-2, 1.4);
  text-align: center;
}

.post-card__excerpt {
  color: var(--text-2);
  font-size: var(--font-size-2, 1.1rem);
  line-height: var(--font-lineheight-3, 1.7);
  display: -webkit-box;
  line-clamp: 4;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-block-end: var(--size-4, 1rem);
}

.post-card__link {
  position: absolute;
  inset: 0;
  opacity: 0;
  z-index: 1;
}

.post-card__more {
  text-align: center;
  margin-top: var(--size-4, 1rem);
}

.post-card__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--size-2, 0.5rem) var(--size-4, 1rem);
  border: 1px solid var(--link-color, var(--violet-7));
  border-radius: var(--radius-2, 5px);
  color: var(--link-color, var(--violet-7));
  font-size: var(--font-size-0, 0.875rem);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.post-card:hover .post-card__button {
  background: var(--link-color, var(--violet-7));
  color: var(--surface-1, #fff);
}

/* Masthead logo override */
.masthead__logo {
  display: inline-block;
  width: 48px;
  height: 48px;
}

.masthead__logo svg {
  width: 100%;
  height: 100%;
  fill: var(--text-1);
}
