/* ==========================================================================
   Row Clickable Link — hover effects for linked WPBakery rows / inner rows.
   Classes come from iidc_row_click_filter_output() (includes/row-clickable.php):
   .vcrcl-clickable on the row + one .vcrcl-has-{effect} per selected effect.
   --vcrcl-* custom properties are set per row by row-clickable.js from the
   row's data-hover-* attributes. Class names are legacy: do not rename.
   ========================================================================== */

/* Base: every linked row (positioning context for the overlay, pointer cursor). */
.vcrcl-clickable {
    position: relative;
    cursor: pointer;
    transition: background-color var(--vcrcl-speed, 300ms) ease,
                color var(--vcrcl-speed, 300ms) ease,
                box-shadow var(--vcrcl-speed, 300ms) ease,
                transform var(--vcrcl-speed, 300ms) ease,
                opacity var(--vcrcl-speed, 300ms) ease,
                border-color var(--vcrcl-speed, 300ms) ease;
}

/* Overlay */
.vcrcl-clickable.vcrcl-has-overlay::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--vcrcl-overlay-color, rgba(0,0,0,0.15));
    opacity: 0;
    transition: opacity var(--vcrcl-speed, 300ms) ease;
    z-index: 1;
    pointer-events: none;
    border-radius: inherit;
}

.vcrcl-clickable.vcrcl-has-overlay:hover::before {
    opacity: 1;
}

/* Zoom */
.vcrcl-clickable.vcrcl-has-zoom {
    overflow: hidden;
}

.vcrcl-clickable.vcrcl-has-zoom > * {
    transition: transform var(--vcrcl-speed, 300ms) ease;
}

.vcrcl-clickable.vcrcl-has-zoom:hover > * {
    transform: scale(1.03);
}

/* Sombra */
.vcrcl-clickable.vcrcl-has-shadow {
    transition: box-shadow var(--vcrcl-speed, 300ms) ease,
                transform var(--vcrcl-speed, 300ms) ease,
                opacity var(--vcrcl-speed, 300ms) ease,
                border-color var(--vcrcl-speed, 300ms) ease;
}

.vcrcl-clickable.vcrcl-has-shadow:hover {
    box-shadow: 0 8px 30px var(--vcrcl-shadow-color, rgba(0,0,0,0.25));
}

/* Opacidade */
.vcrcl-clickable.vcrcl-has-opacity {
    transition: opacity var(--vcrcl-speed, 300ms) ease,
                box-shadow var(--vcrcl-speed, 300ms) ease,
                transform var(--vcrcl-speed, 300ms) ease,
                border-color var(--vcrcl-speed, 300ms) ease;
}

.vcrcl-clickable.vcrcl-has-opacity:hover {
    opacity: 0.8;
}

/* Mover para cima (lift) */
.vcrcl-clickable.vcrcl-has-lift {
    transition: transform var(--vcrcl-speed, 300ms) ease,
                box-shadow var(--vcrcl-speed, 300ms) ease,
                opacity var(--vcrcl-speed, 300ms) ease,
                border-color var(--vcrcl-speed, 300ms) ease;
}

.vcrcl-clickable.vcrcl-has-lift:hover {
    transform: translateY(-5px);
}

/* Bordo */
.vcrcl-clickable.vcrcl-has-border {
    border: 2px solid transparent;
    transition: border-color var(--vcrcl-speed, 300ms) ease,
                box-shadow var(--vcrcl-speed, 300ms) ease,
                transform var(--vcrcl-speed, 300ms) ease,
                opacity var(--vcrcl-speed, 300ms) ease;
}

.vcrcl-clickable.vcrcl-has-border:hover {
    border-color: var(--vcrcl-border-color, #333333);
}

/* Cor de Fundo */
.vcrcl-clickable.vcrcl-has-bgcolor:hover {
    background-color: var(--vcrcl-bg-color) !important;
}

/* Cor de Texto */
.vcrcl-clickable.vcrcl-has-textcolor:hover,
.vcrcl-clickable.vcrcl-has-textcolor:hover * {
    color: var(--vcrcl-text-color) !important;
}

/* Título: máximo 3 linhas */
/* Clamps every heading inside ANY linked row to 3 lines, regardless of the
   selected effects. */
.vcrcl-clickable h1,
.vcrcl-clickable h2,
.vcrcl-clickable h3,
.vcrcl-clickable h4,
.vcrcl-clickable h5,
.vcrcl-clickable h6,
.vcrcl-clickable .vc_custom_heading {
    line-height: 1.25;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    overflow: hidden;
}

/* Título do post: máximo 3 linhas */
/* INTENTIONAL: these selectors are deliberately NOT scoped to .vcrcl-clickable.
   This file loads on every frontend page, so post titles site-wide (theme
   .entry-title cards, WPBakery post grids, h1.entry-title) are clamped to
   3 lines. Confirmed as desired behaviour — do not scope or remove.
   Keep in mind when debugging cut-off titles. */
.entry-title,
.post-title,
h1.entry-title,
.vc_gitem-post-data-source-post_title h1,
.vc_gitem-post-data-source-post_title h2,
.vc_gitem-post-data-source-post_title h3,
.vc_gitem-post-data-source-post_title h4,
.vc_gitem-post-data-source-post_title h5,
.vc_gitem-post-data-source-post_title h6 {
    line-height: 1.25 !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
    line-clamp: 3 !important;
    overflow: hidden !important;
}
