/* ── Press list container ──────────────────────────────────────── */

.press-list {
    padding-left: max(1.5rem, env(safe-area-inset-left)) !important;
    padding-right: max(1.5rem, env(safe-area-inset-right)) !important;
}

/* ── Press item row ────────────────────────────────────────────── */

.press-item {
    position: relative;
    border-bottom: 1px solid #e4e0db;
    padding: 1.35rem 0.25rem !important;
    cursor: default;
    overflow: hidden;
    transition: background-color 0.2s ease;
}

.press-item::before {
    content: '';
    position: absolute;
    inset: 0;
    background: var(--wp--preset--color--custom-light, #fdf8f5);
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 0;
}

.press-item:hover::before {
    transform: scaleX(1);
}

.press-item > * {
    position: relative;
    z-index: 1;
}

/* ── Source label ──────────────────────────────────────────────── */

.press-source {
    font-size: 0.7rem !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase;
    color: var(--wp--preset--color--custom-accen, #2f5467) !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

/* ── Article title + link ──────────────────────────────────────── */

.press-title {
    font-size: 1.15rem !important;
    font-weight: 500 !important;
    margin: 0.2rem 0 0 !important;
    line-height: 1.3 !important;
}

.press-title a {
    color: var(--wp--preset--color--custom-dark, #121519) !important;
    text-decoration: none !important;
    background-image: linear-gradient(
        currentColor,
        currentColor
    );
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: 0% 1px;
    transition: background-size 0.3s ease !important;
}

.press-item:hover .press-title a {
    background-size: 100% 1px;
}

/* ── Arrow ─────────────────────────────────────────────────────── */

.press-arrow {
    font-size: 1.4rem !important;
    margin: 0 !important;
    color: var(--wp--preset--color--custom-dark, #121519) !important;
    transition: transform 0.25s ease, opacity 0.25s ease !important;
    opacity: 0.25;
    flex-shrink: 0;
    padding-left: 1.5rem !important;
}

.press-item:hover .press-arrow {
    transform: translateX(5px);
    opacity: 0.85;
}

/* ── Fade-up on load ───────────────────────────────────────────── */

.press-item {
    opacity: 0;
    transform: translateY(18px);
    transition:
        opacity 0.45s ease,
        transform 0.45s ease,
        background-color 0.2s ease;
}

.press-item.is-visible {
    opacity: 1;
    transform: translateY(0);
}
