.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-6 .elementor-element.elementor-element-ca43f80 .elementor-heading-title{color:#000000;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-6 .elementor-element.elementor-element-20b58d5{font-family:"Roboto", Sans-serif;font-weight:400;}.elementor-widget-posts .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__title, .elementor-widget-posts .elementor-post__title a{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-posts .elementor-post__meta-data{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .elementor-post__excerpt p{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-posts .elementor-post__read-more{color:var( --e-global-color-accent );}.elementor-widget-posts a.elementor-post__read-more{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__card .elementor-post__badge{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-6 .elementor-element.elementor-element-3be8aec{--grid-row-gap:35px;--grid-column-gap:30px;}.elementor-6 .elementor-element.elementor-element-3be8aec .elementor-post__thumbnail__link{width:100%;}.elementor-6 .elementor-element.elementor-element-3be8aec .elementor-post__meta-data span + span:before{content:"•";}.elementor-6 .elementor-element.elementor-element-3be8aec .elementor-post__title, .elementor-6 .elementor-element.elementor-element-3be8aec .elementor-post__title a{color:#000000;}@media(max-width:767px){.elementor-6 .elementor-element.elementor-element-3be8aec .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.5 * 100% );}.elementor-6 .elementor-element.elementor-element-3be8aec:after{content:"0.5";}.elementor-6 .elementor-element.elementor-element-3be8aec .elementor-post__thumbnail__link{width:100%;}}/* Start custom CSS for posts, class: .elementor-element-3be8aec *//* =========================================================
   RIVERTON RELATED POSTS
   Elementor Posts Widget
   Class: rv-related-posts
   ========================================================= */

.rv-related-posts {
    width: 100%;
}

/* ---------------------------------------------------------
   GRID
   --------------------------------------------------------- */

.rv-related-posts .elementor-posts-container {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
}


/* ---------------------------------------------------------
   CARD
   --------------------------------------------------------- */

.rv-related-posts .elementor-post {
    display: flex;
    flex-direction: column;

    width: 100%;
    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden;

    background: #ffffff;
    border: 1px solid #d8e0e6;
    border-radius: 12px;

    box-shadow: 0 2px 8px rgba(23, 33, 43, 0.04);

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease;
}

/* Card hover */

.rv-related-posts .elementor-post:hover {
    transform: translateY(-3px);

    border-color: #c8d2da;

    box-shadow:
        0 10px 28px rgba(23, 33, 43, 0.09);
}


/* ---------------------------------------------------------
   IMAGE
   --------------------------------------------------------- */

/* Image wrapper */

.rv-related-posts .elementor-post__thumbnail__link {
    display: block;

    width: 100%;
    height: auto;

    margin: 0 !important;

    overflow: hidden;

    background: #f3f5f6;

    aspect-ratio: 16 / 9;
}

/* Elementor image container */

.rv-related-posts .elementor-post__thumbnail {
    width: 100%;
    height: 100%;

    margin: 0 !important;

    overflow: hidden;
}

/* Actual image */

.rv-related-posts .elementor-post__thumbnail img {
    display: block;

    width: 100%;
    height: 100%;

    max-width: none;

    object-fit: cover;
    object-position: center;

    transition: transform 0.3s ease;
}

/* Image hover */

.rv-related-posts .elementor-post:hover
.elementor-post__thumbnail img {
    transform: scale(1.025);
}


/* ---------------------------------------------------------
   CONTENT AREA
   --------------------------------------------------------- */

.rv-related-post .elementor-post__text,
.rv-related-posts .elementor-post__text {
    display: flex;
    flex-direction: column;

    flex: 1;

    padding: 24px 26px 26px;
}


/* ---------------------------------------------------------
   TITLE
   --------------------------------------------------------- */

.rv-related-posts .elementor-post__title {
    margin: 0 !important;
    padding: 0 !important;

    font-family: "Inter", sans-serif !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;

    letter-spacing: -0.015em !important;

    color: #17212b;
}

/* Title link */

.rv-related-posts .elementor-post__title a {
    color: inherit !important;

    text-decoration: none !important;
}

/* Title hover */

.rv-related-posts .elementor-post:hover
.elementor-post__title a {
    color: #17212b !important;
}


/* ---------------------------------------------------------
   EXCERPT
   --------------------------------------------------------- */

.rv-related-posts .elementor-post__excerpt {
    margin: 12px 0 0 !important;

    font-family: "Inter", sans-serif !important;
    font-size: 15px !important;
    line-height: 1.6 !important;

    color: #596773;
}


/* ---------------------------------------------------------
   READ MORE
   --------------------------------------------------------- */

.rv-related-posts .elementor-post__read-more {
    display: inline-block;

    margin-top: 18px !important;

    font-family: "Inter", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.4;

    color: #17212b !important;

    text-decoration: none !important;
}


/* ---------------------------------------------------------
   POSTS WITHOUT A FEATURED IMAGE
   --------------------------------------------------------- */

/*
   If a post has no image, don't leave an awkward empty area.
   The content simply starts at the top of the card.
*/

.rv-related-posts .elementor-post:not(:has(.elementor-post__thumbnail__link)) {
    padding-top: 0 !important;
}


/* ---------------------------------------------------------
   CONSISTENT CARD HEIGHT
   --------------------------------------------------------- */

.rv-related-posts .elementor-post {
    min-height: 100%;
}


/* ---------------------------------------------------------
   TABLET
   --------------------------------------------------------- */

@media (max-width: 1024px) {

    .rv-related-posts .elementor-posts-container {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px;
    }

    .rv-related-posts .elementor-post__text {
        padding: 22px 24px 24px;
    }

    .rv-related-posts .elementor-post__title {
        font-size: 19px !important;
    }
}


/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media (max-width: 767px) {

    .rv-related-posts .elementor-posts-container {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .rv-related-posts .elementor-post__text {
        padding: 21px 22px 23px;
    }

    .rv-related-posts .elementor-post__title {
        font-size: 19px !important;
        line-height: 1.4 !important;
    }

    .rv-related-posts .elementor-post__thumbnail__link {
        aspect-ratio: 16 / 9;
    }
}


/* ---------------------------------------------------------
   SMALL PHONES
   --------------------------------------------------------- */

@media (max-width: 480px) {

    .rv-related-posts .elementor-posts-container {
        gap: 16px;
    }

    .rv-related-posts .elementor-post__text {
        padding: 20px;
    }
}


/* ---------------------------------------------------------
   REDUCED MOTION
   --------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {

    .rv-related-posts .elementor-post,
    .rv-related-posts .elementor-post__thumbnail img {
        transition: none;
    }

    .rv-related-posts .elementor-post:hover {
        transform: none;
    }

    .rv-related-posts .elementor-post:hover
    .elementor-post__thumbnail img {
        transform: none;
    }
}/* End custom CSS */