/* ============================================
   Bókasafn — Literary, Curated, Thoughtful
   Brand: literary, curated, thoughtful
   Fonts: Cardo + Alegreya Sans
   ============================================ */

.theme-editorial {
  /* --- Categories: italic text list between rules --- */
  & .category-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    justify-content: center;
    border-block-start: 1px solid var(--border);
    border-block-end: 1px solid var(--border);
    padding-block: 1rem;
  }

  & .category-card {
    padding: 0.5rem 1.5rem;
    border: none;
    background: transparent;

    & .category-image {
      display: none;
    }

    & h3 {
      font-family: var(--font-display);
      font-style: italic;
      font-weight: 400;
      font-size: 1rem;
    }

    &:hover h3 {
      text-decoration: underline;
      text-underline-offset: 3px;
    }
  }

  /* --- Section heads: centered italic --- */
  & .section-head {
    text-align: center;
    margin-block-end: 2.5rem;

    & h2 {
      font-size: clamp(1.75rem, 3.5vw, 2.5rem);
      font-weight: 300;
      font-style: italic;
      letter-spacing: -0.02em;
    }

    & .section-link {
      font-size: 0.75rem;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }
  }

  /* --- Newsletter: bordered, no background --- */
  & .newsletter {
    border-radius: 0;
    border-block-start: 1px solid var(--border);
    border-block-end: 1px solid var(--border);
    background: transparent;
  }

  /* --- Product cards: editorial no-radius --- */
  & .product-card {
    border-radius: 0;

    & img {
      border-radius: 0;
    }
  }

  /* --- Breadcrumb: small caps feel --- */
  & .breadcrumb ol {
    font-size: 0.75rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    font-weight: 400;
  }

  /* --- Catalog: magazine-style 2-col editorial layout --- */
  & .catalog {
    gap: clamp(2rem, 4vw, 3rem);
  }

  & .catalog-toolbar {
    border-block-end: 1px solid var(--border);
    border-block-start: 1px solid var(--border);
    padding-block: 0.75rem;

    & .result-count {
      font-family: var(--font-display);
      font-style: italic;
      font-size: 0.875rem;
    }

    & .filter-toggle {
      border-radius: 0;
      font-style: italic;
    }

    & .sort-select select {
      border-radius: 0;
      font-family: var(--font-display);
      font-style: italic;
    }
  }

  & .catalog .product-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: clamp(2rem, 4vw, 3rem);
  }

  @media (max-width: 640px) {
    & .catalog .product-grid { grid-template-columns: 1fr; }
  }

  & .filter-group h3 {
    font-family: var(--font-display);
    font-style: italic;
    font-weight: 400;
    text-transform: none;
    font-size: 1rem;
  }

  & .active-filters {
    & .active-filter-pill {
      border-radius: 0;
      font-family: var(--font-display);
      font-style: italic;
      font-size: 0.8125rem;
    }
  }

  /* --- PDP: magazine-style, italic headings, 2-col editorial --- */
  & .pdp {
    gap: clamp(3rem, 6vw, 5rem);
  }

  & .pdp-gallery .pdp-hero {
    border-radius: 0;
  }

  & .pdp-gallery .pdp-thumbnails button {
    border-radius: 0;
  }

  & .pdp-info {
    & .pdp-brand {
      font-family: var(--font-display);
      font-style: italic;
      font-size: 0.875rem;
    }

    & h1 {
      font-family: var(--font-display);
      font-weight: 300;
      font-style: italic;
      font-size: clamp(2rem, 4vw, 3rem);
      letter-spacing: -0.02em;
    }

    & .pdp-price {
      font-size: 1.25rem;
      font-weight: 400;
      letter-spacing: 0.02em;
    }

    & .pdp-description {
      font-family: var(--font-body);
      font-size: 0.9375rem;
      line-height: 1.8;
      max-width: 55ch;
    }
  }

  & .pdp-actions {
    & .quantity-selector {
      border-radius: 0;
    }

    & .pdp-add-btn {
      border-radius: 0;
      font-size: 0.8125rem;
      letter-spacing: 0.04em;
    }
  }

  & .pdp-trust {
    font-style: italic;
    font-size: 0.8125rem;
    opacity: 0.6;
  }

  & .pdp-variants .pdp-variant-btn {
    border-radius: 0;
    font-family: var(--font-display);
    font-style: italic;
  }

  & .pdp-tabs .pdp-tab-nav button {
    font-family: var(--font-display);
    font-style: italic;
    font-weight: 400;
  }

  /* --- Related: editorial spacing with border --- */
  & .related-section {
    border-block-start: 1px solid var(--border);
    padding-block-start: clamp(3rem, 6vw, 5rem);
    margin-block-start: clamp(3rem, 6vw, 5rem);
  }

  & .related-section .section-head h2 {
    font-style: italic;
    font-weight: 300;
  }
}
