/* ============================================================
   CozyRecipes — Editorial Author Bio
   ============================================================ */

/* CSS custom properties — values injected by cozyrecipes_customizer_css() */
.cr-author-bio {
    --cr-bio-divider : var(--cr-bio-divider-val,  #d4c9b8);
    --cr-bio-label   : var(--cr-bio-label-val,    #9b8c7a);
    --cr-bio-name    : var(--cr-bio-name-val,     #1a1a1a);
    --cr-bio-text    : var(--cr-bio-text-val,     #4a4a4a);
    --cr-bio-link    : var(--cr-bio-link-val,     #1a1a1a);
}

/* Section wrapper — full-width so the divider spans the content column */
.cr-author-bio {
    margin-top   : 3.5rem;
    padding-top  : 2.5rem;
    border-top   : 1px solid var(--cr-bio-divider);
}

/* Constrain inner content to the same readable width as the article */
.cr-author-bio__inner {
    max-width : 680px;
}

/* ABOUT label */
.cr-author-bio__label {
    margin        : 0 0 0.75rem;
    font-family   : 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size     : 0.6875rem;   /* 11px */
    font-weight   : 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color         : var(--cr-bio-label);
    line-height   : 1;
}

/* Author name — large elegant serif */
.cr-author-bio__name {
    margin        : 0 0 1rem;
    font-family   : 'Playfair Display', Georgia, 'Times New Roman', serif;
    font-size     : clamp(1.75rem, 4vw, 2.5rem);
    font-weight   : 700;
    line-height   : 1.15;
    color         : var(--cr-bio-name);
    letter-spacing: -0.01em;
}

/* Bio paragraph */
.cr-author-bio__text {
    margin      : 0 0 1.5rem;
    font-family : 'Lora', Georgia, serif;
    font-size   : 1rem;
    line-height : 1.75;
    color       : var(--cr-bio-text);
}

/* Text link with arrow — no button shape, pure typography */
.cr-author-bio__link {
    display        : inline-flex;
    align-items    : center;
    gap            : 0.35em;
    font-family    : 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size      : 0.8125rem;   /* 13px */
    font-weight    : 600;
    letter-spacing : 0.1em;
    text-transform : uppercase;
    text-decoration: none;
    color          : var(--cr-bio-link);
    border-bottom  : 1px solid currentColor;
    padding-bottom : 0.1em;
    transition     : opacity 0.2s ease, color 0.2s ease;
}

.cr-author-bio__link:hover,
.cr-author-bio__link:focus-visible {
    opacity        : 0.6;
    text-decoration: none;
}

.cr-author-bio__arrow {
    display        : inline-block;
    transition     : transform 0.2s ease;
}

.cr-author-bio__link:hover .cr-author-bio__arrow,
.cr-author-bio__link:focus-visible .cr-author-bio__arrow {
    transform: translateX(4px);
}

/* ── Mobile ─────────────────────────────────────────────── */
@media (max-width: 640px) {
    .cr-author-bio {
        margin-top  : 2.5rem;
        padding-top : 2rem;
    }

    .cr-author-bio__name {
        font-size: 1.75rem;
    }
}
