/* -----------------------------------------------------------------
   Header logo promo — LEXX Bookstore .journal-header-logo-promo parity
   ----------------------------------------------------------------- */

.header .journal-header-logo-promo {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 20px;
  justify-content: flex-start;
  padding: 0 8px 0 0;
  text-align: left;
}

.header .journal-header-logo-promo__logo {
  flex-shrink: 0;
}

.header .journal-header-logo-promo__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  min-width: 0;
  flex: 1;
}

/* Medium-wide desktops (below 1400px): keep logo + “A new era…” on one row; move the full
   nav bar (+ log in / search) to a second row so the menu never steals space from the tagline. */
@media (min-width: 1025px) and (max-width: 1399px) {
  .header .shell {
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 10px 16px;
    min-height: auto;
    padding-top: 12px;
    padding-bottom: 12px;
  }

  .header .journal-header-logo-promo {
    display: flex;
    flex-direction: row;
    align-items: center;
    flex: 0 0 auto;
    width: 100%;
    max-width: 100%;
    order: 1;
  }

  .header .journal-header-logo-promo__copy {
    flex: 1 1 auto;
    min-width: 0;
    max-width: none;
  }

  .header .header__actions {
    order: 2;
    width: 100%;
    max-width: 100%;
    flex: 0 1 auto;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    row-gap: 10px;
    column-gap: 12px;
    padding-top: 10px;
    margin-left: 0;
    border-top: 1px solid var(--lexx-border);
  }

  .header .nav-header {
    flex: 1 1 auto;
    min-width: 0;
    flex-wrap: wrap;
    justify-content: flex-start;
    row-gap: 6px;
  }

  .header .header-actions-right {
    flex: 0 0 auto;
    margin-left: 12px;
  }
}

/* Wide screens: cap teaser copy width so primary nav always has room; logo stays natural size. */
@media (min-width: 1400px) {
  .header .journal-header-logo-promo {
    flex: 1;
    min-width: 0;
    max-width: none;
  }

  .header .journal-header-logo-promo__copy {
    flex: 0 1 min(380px, 34vw);
    max-width: min(380px, 34vw);
  }
}

.header .journal-header-logo-promo__tagline {
  margin: 0 !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  color: #1c1c1c !important;
  margin-bottom: -3px !important;
}

.header .journal-header-logo-promo__subline {
  margin: 0 !important;
  padding-top: 2px;
  margin-bottom: 2px !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  color: #555 !important;
}

.header a.journal-header-logo-promo__link:not(.button):not(.journal-stepper),
.header .journal-header-logo-promo__link {
  font-family: 'Poppins', sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.25;
  color: #e25027;
  text-decoration: none;
}

.header a.journal-header-logo-promo__link:hover,
.header a.journal-header-logo-promo__link:focus-visible,
.header .journal-header-logo-promo__link:hover,
.header .journal-header-logo-promo__link:focus-visible {
  color: #c74320;
  text-decoration: underline !important;
}

.header a.journal-header-logo-promo__link:focus-visible {
  outline: 2px solid var(--lexx-accent-blue);
  outline-offset: 2px;
  border-radius: 2px;
}

@media (max-width: 1200px) {
  .header .journal-header-logo-promo {
    padding-left: 12px;
    padding-right: 4px;
  }

  .header .journal-header-logo-promo__tagline {
    font-size: 14px !important;
  }
}

@media (max-width: 1024px) {
  .header .journal-header-logo-promo {
    order: 2;
    flex: 1 1 100%;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    /* Horizontal inset comes from .header .shell padding (icons clear on row 1) */
    padding: 10px 0 12px;
    margin: 0;
    border-top: 1px solid var(--lexx-border);
    align-items: center;
  }

  .header .journal-header-logo-promo__tagline {
    font-size: 13px !important;
  }

  .header .journal-header-logo-promo__subline {
    font-size: 11px !important;
  }

  .header a.journal-header-logo-promo__link,
  .header .journal-header-logo-promo__link {
    font-size: 11px;
  }
}

@media (max-width: 399px) {
  .header .journal-header-logo-promo {
    gap: 5px;
  }
}

@media print {
  .header .journal-header-logo-promo {
    display: none !important;
  }
}
