.elementor-31450 .elementor-element.elementor-element-6f06806{--display:flex;--min-height:0px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overlay-opacity:0.8;}.elementor-31450 .elementor-element.elementor-element-6f06806:not(.elementor-motion-effects-element-type-background), .elementor-31450 .elementor-element.elementor-element-6f06806 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://renovatio-vip.de/wp-content/uploads/2025/12/Kopie-von-DFR03635--e1766010334932.webp");background-position:top center;background-repeat:no-repeat;background-size:cover;}.elementor-31450 .elementor-element.elementor-element-6f06806::before, .elementor-31450 .elementor-element.elementor-element-6f06806 > .elementor-background-video-container::before, .elementor-31450 .elementor-element.elementor-element-6f06806 > .e-con-inner > .elementor-background-video-container::before, .elementor-31450 .elementor-element.elementor-element-6f06806 > .elementor-background-slideshow::before, .elementor-31450 .elementor-element.elementor-element-6f06806 > .e-con-inner > .elementor-background-slideshow::before, .elementor-31450 .elementor-element.elementor-element-6f06806 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(90deg, #01418E 0%, #01418E00 80%);}.elementor-31450 .elementor-element.elementor-element-e2705f0{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:250px;--padding-bottom:150px;--padding-left:50px;--padding-right:50px;}.elementor-31450 .elementor-element.elementor-element-e2705f0:not(.elementor-motion-effects-element-type-background), .elementor-31450 .elementor-element.elementor-element-e2705f0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#15181CD9;}.elementor-31450 .elementor-element.elementor-element-436d240{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-start;}.elementor-31450 .elementor-element.elementor-element-e2b6ac3{--display:flex;}.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-31450 .elementor-element.elementor-element-9fdf6d5 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:50px;font-weight:600;text-transform:uppercase;line-height:75px;color:var( --e-global-color-astglobalcolor4 );}.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-31450 .elementor-element.elementor-element-e274f6d{width:var( --container-widget-width, 98.608% );max-width:98.608%;--container-widget-width:98.608%;--container-widget-flex-grow:0;color:#FFFFFFCC;}.elementor-31450 .elementor-element.elementor-element-e274f6d.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-31450 .elementor-element.elementor-element-5deeb5c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-31450 .elementor-element.elementor-element-5deeb5c:not(.elementor-motion-effects-element-type-background), .elementor-31450 .elementor-element.elementor-element-5deeb5c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EFEDE9;}.elementor-31450 .elementor-element.elementor-element-aedae0c{width:var( --container-widget-width, 89% );max-width:89%;--container-widget-width:89%;--container-widget-flex-grow:0;}.elementor-31450 .elementor-element.elementor-element-aedae0c.elementor-element{--align-self:center;}.elementor-31450 .elementor-element.elementor-element-b92645a{width:var( --container-widget-width, 89% );max-width:89%;--container-widget-width:89%;--container-widget-flex-grow:0;}.elementor-31450 .elementor-element.elementor-element-b92645a.elementor-element{--align-self:center;}.elementor-31450 .elementor-element.elementor-element-63b47140{--display:flex;--overlay-opacity:0.09;--border-radius:25px 25px 25px 25px;}.elementor-31450 .elementor-element.elementor-element-63b47140:not(.elementor-motion-effects-element-type-background), .elementor-31450 .elementor-element.elementor-element-63b47140 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-8631faa );}.elementor-31450 .elementor-element.elementor-element-63b47140::before, .elementor-31450 .elementor-element.elementor-element-63b47140 > .elementor-background-video-container::before, .elementor-31450 .elementor-element.elementor-element-63b47140 > .e-con-inner > .elementor-background-video-container::before, .elementor-31450 .elementor-element.elementor-element-63b47140 > .elementor-background-slideshow::before, .elementor-31450 .elementor-element.elementor-element-63b47140 > .e-con-inner > .elementor-background-slideshow::before, .elementor-31450 .elementor-element.elementor-element-63b47140 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://renovatio-vip.de/wp-content/uploads/2025/12/background-img-2500px.webp");--background-overlay:'';}.elementor-31450 .elementor-element.elementor-element-260ac59{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-31450 .elementor-element.elementor-element-260ac59:not(.elementor-motion-effects-element-type-background), .elementor-31450 .elementor-element.elementor-element-260ac59 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F3EF;}@media(max-width:1024px){.elementor-31450 .elementor-element.elementor-element-e2705f0{--padding-top:60px;--padding-bottom:60px;--padding-left:30px;--padding-right:30px;}.elementor-31450 .elementor-element.elementor-element-e2b6ac3{--gap:5px 5px;--row-gap:5px;--column-gap:5px;}.elementor-31450 .elementor-element.elementor-element-9fdf6d5 .elementor-heading-title{font-size:35px;line-height:1.2em;}.elementor-31450 .elementor-element.elementor-element-e274f6d{width:var( --container-widget-width, 64% );max-width:64%;--container-widget-width:64%;--container-widget-flex-grow:0;}}@media(max-width:767px){.elementor-31450 .elementor-element.elementor-element-6f06806:not(.elementor-motion-effects-element-type-background), .elementor-31450 .elementor-element.elementor-element-6f06806 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://renovatio-vip.de/wp-content/uploads/2025/12/Kopie-von-DSC01433--e1765978897851.webp");background-position:top center;background-size:cover;}.elementor-31450 .elementor-element.elementor-element-6f06806{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31450 .elementor-element.elementor-element-e2705f0{--padding-top:160px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}.elementor-31450 .elementor-element.elementor-element-436d240{--gap:35px 35px;--row-gap:35px;--column-gap:35px;}.elementor-31450 .elementor-element.elementor-element-e2b6ac3{--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-31450 .elementor-element.elementor-element-9fdf6d5{width:100%;max-width:100%;}.elementor-31450 .elementor-element.elementor-element-9fdf6d5 .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-31450 .elementor-element.elementor-element-e274f6d{width:100%;max-width:100%;}}@media(min-width:768px){.elementor-31450 .elementor-element.elementor-element-436d240{--width:55%;}}@media(max-width:1024px) and (min-width:768px){.elementor-31450 .elementor-element.elementor-element-436d240{--width:100%;}}/* Start custom CSS for html, class: .elementor-element-0019407 */@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');


/* =========================
   SECTION
========================= */

.rv-services,
.rv-services * {
    box-sizing: border-box;
}

.rv-services {
    width: 100%;
    margin: 0 !important;
    padding: 52px 20px 38px;

    background: #efede9;

    font-family: "Roboto", Arial, sans-serif;
}


/* =========================
   HEADER
========================= */

.rv-services-head {
    text-align: center;
    margin: 0 auto;
}

.rv-services-eyebrow {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;

    margin-bottom: 20px;

    color: #8B765B;

    font-size: 12px;
    line-height: 1;

    font-weight: 700;

    letter-spacing: 2.2px;
}

.rv-services-eyebrow span {
    width: 25px;
    height: 2px;

    display: inline-block;

    background: #B99A6C;
}


.rv-services-head h2 {
    margin: 0;

    color: #15181C;

    font-size: 45px;
    line-height: 1.1;

    font-weight: 700;

    letter-spacing: -1.5px;
}


.rv-services-head p {
    margin: 8px 0 0 !important;

    color: #696969;

    font-size: 18px;
    line-height: 1.55;

    font-weight: 400;
}


/* =========================
   GRID
========================= */

.rv-services-grid {
    width: 100%;
    max-width: 1135px;

    margin: 58px auto 0;

    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 28px;
}


/* =========================
   CARD
========================= */

.rv-service-card {
    position: relative;

    height: 335px;

    display: flex;
    align-items: flex-end;

    overflow: hidden;

    border-radius: 20px;

    text-decoration: none;

    background:
        linear-gradient(
            to bottom,
            rgba(11, 19, 27, 0.03) 15%,
            rgba(11, 19, 27, 0.25) 44%,
            rgba(11, 19, 27, 0.96) 100%
        ),
        var(--card-bg);

    background-size: cover;
    background-position: center;

    box-shadow:
        0 14px 30px rgba(20, 25, 30, .12);

    transition:
        transform .35s ease,
        box-shadow .35s ease;
}


/* image zoom layer */

.rv-service-card::before {
    content: "";

    position: absolute;
    inset: 0;

    background-image: var(--card-bg);
    background-size: cover;
    background-position: center;

    z-index: 0;

    transition: transform .55s ease;
}


/* dark overlay */

.rv-service-card::after {
    content: "";

    position: absolute;
    inset: 0;

    z-index: 1;

    background:
        linear-gradient(
            to bottom,
            rgba(10, 17, 24, 0.02) 16%,
            rgba(10, 17, 24, 0.25) 48%,
            rgba(10, 17, 24, 0.95) 100%
        );

    transition: background .35s ease;
}


/* =========================
   CONTENT
========================= */

.rv-service-content {
    position: relative;
    z-index: 2;

    width: 100%;

    padding: 0 27px 27px;
}


.rv-service-content h3 {
    margin: 0 0 14px;

    color: #FFFFFF;

    font-size: 20px;
    line-height: 1.25;

    font-weight: 700;

    letter-spacing: -.4px;
}


.rv-service-content p {
    margin: 0 0 18px !important;

    color: rgba(255,255,255,.86);

    font-size: 14px;
    line-height: 1.55;

    font-weight: 400;
}


.rv-more {
    display: inline-flex;
    align-items: center;
    gap: 11px;

    color: #B99A6C;

    font-size: 14px;

    font-weight: 700;

    transition: color .25s ease;
}


.rv-more span {
    transition: transform .25s ease;
}


/* =========================
   HOVER
========================= */

.rv-service-card:hover {
    transform: translateY(-7px);

    box-shadow:
        0 22px 45px rgba(20, 25, 30, .18);
}


.rv-service-card:hover::before {
    transform: scale(1.06);
}


.rv-service-card:hover::after {
    background:
        linear-gradient(
            to bottom,
            rgba(10, 17, 24, .06) 10%,
            rgba(10, 17, 24, .35) 45%,
            rgba(10, 17, 24, .97) 100%
        );
}


.rv-service-card:hover .rv-more {
    color: #B99A6C;
}


.rv-service-card:hover .rv-more span {
    transform: translateX(6px);
}


/* =========================
   BOTTOM BUTTON
========================= */

.rv-services-btn-wrap {
    display: flex;
    justify-content: center;

    margin-top: 38px;
}


.rv-services-btn {
    min-height: 55px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 18px;

    padding: 0 31px;

    border: 1.5px solid #B99A6C;

    border-radius: 40px;

    background: transparent;

    color: #806C50;

    text-decoration: none;

    font-size: 14px;
    font-weight: 700;

    transition: all .3s ease;
}


.rv-services-btn span {
    font-size: 20px;

    transition: transform .3s ease;
}


.rv-services-btn:hover {
    background: #B99A6C;

    color: #15181C;

    transform: translateY(-2px);
}


.rv-services-btn:hover span {
    transform: translateX(5px);
}


/* =========================
   TABLET
========================= */

@media (max-width: 1024px) {

    .rv-services-head h2 {
        font-size: 38px;
    }

    .rv-services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}


/* =========================
   MOBILE
========================= */

@media (max-width: 767px) {

    .rv-services {
        padding: 40px 16px 32px;
    }

    .rv-services-head h2 {
        font-size: 31px;

        line-height: 1.15;

        letter-spacing: -.8px;
    }

    .rv-services-head p {
        font-size: 16px;
    }

    .rv-services-head p br {
        display: none;
    }

    .rv-services-grid {
        margin-top: 38px;

        grid-template-columns: 1fr;

        gap: 18px;
    }

    .rv-service-card {
        height: 315px;
    }

    .rv-service-content {
        padding: 0 22px 24px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-aedae0c *//* =========================================
   RELATED SERVICES - COMPACT
========================================= */

.rv-related-services {
    width: 100%;
    padding: 22px 20px 26px;
    font-family: "Roboto", sans-serif;
    box-sizing: border-box;
}

.rv-related-inner {
    width: 100%;
    max-width: 1740px;
    margin: 0 auto;
    padding-top: 22px;
    border-top: 1px solid rgba(185, 154, 108, 0.22);
}

.rv-related-label {
    margin-bottom: 14px;
    color: #686868;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}

.rv-related-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 12px;
}

.rv-related-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    min-height: 42px;
    padding: 0 16px;

    background: #F0EFEC;
    border-radius: 999px;

    color: #15181C;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;

    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease;
}

.rv-related-arrow {
    color: #B99A6C;
    font-size: 17px;
    font-weight: 400;
    line-height: 1;
    transition: transform .25s ease;
}

.rv-related-link:hover {
    background: #15181C;
    color: #fff;
    transform: translateY(-1px);
}

.rv-related-link:hover .rv-related-arrow {
    transform: translateX(3px);
}


/* TABLET */

@media (max-width: 1024px) {

    .rv-related-services {
        padding: 20px 18px 24px;
    }

    .rv-related-link {
        min-height: 40px;
        padding: 0 14px;
        font-size: 13px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .rv-related-services {
        padding: 18px 16px 22px;
    }

    .rv-related-inner {
        padding-top: 18px;
    }

    .rv-related-label {
        margin-bottom: 12px;
        font-size: 11px;
        letter-spacing: 1.5px;
    }

    .rv-related-links {
        gap: 8px;
    }

    .rv-related-link {
        min-height: 38px;
        padding: 0 13px;
        font-size: 12px;
    }

    .rv-related-arrow {
        font-size: 15px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b92645a *//* =========================================
   CHAUFFEUR REGIONS - UPDATED
========================================= */

.rv-region-services {
    width: 100%;
    padding: 42px 20px 46px;
    font-family: "Roboto", sans-serif;
    box-sizing: border-box;
}

.rv-region-inner {
    width: 100%;
    max-width: 1110px;
    margin: 0 auto;
}


/* EYEBROW */

.rv-region-eyebrow {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    margin-bottom: 14px;

    color: #8b765a;

    font-size: 10px;
    font-weight: 700;
    line-height: 1.2;

    letter-spacing: 1.6px;
    text-transform: uppercase;
}

.rv-region-eyebrow span {
    width: 24px;
    height: 1px;

    background: #B99A6C;
}


/* HEADING */

.rv-region-inner > h2 {
    margin: 0 0 34px;

    text-align: center;

    color: #15181C;

    font-size: 38px;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.8px;
}


/* =========================================
   GRID
========================================= */

.rv-region-grid {
    display: grid;

    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 28px;

    width: 100%;
}


/* =========================================
   CARD
========================================= */

.rv-region-card {
    position: relative;

    display: block;

    width: 100%;
    height: 330px;

    overflow: hidden;

    border-radius: 16px;

    text-decoration: none;

    background: #182735;

    box-shadow: 0 12px 28px rgba(0, 0, 0, .12);

    isolation: isolate;
}


/* IMAGE */

.rv-region-card img {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;

    object-position: center;

    transition: transform .45s ease;
}


/* DARK OVERLAY */

.rv-region-overlay {
    position: absolute;

    inset: 0;

    z-index: 1;

    background:
        linear-gradient(
            to bottom,
            rgba(8, 18, 28, .04) 15%,
            rgba(8, 18, 28, .28) 45%,
            rgba(8, 18, 28, .92) 100%
        );
}


/* =========================================
   CONTENT
========================================= */

.rv-region-content {
    position: absolute;

    left: 24px;
    right: 24px;
    bottom: 24px;

    z-index: 2;

    color: #ffffff;
}


/* CARD TITLE */

.rv-region-content h3 {
    margin: 0 0 11px;

    color: #ffffff;

    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
}


/* CARD DESCRIPTION */

.rv-region-content p {
    margin: 0 0 16px;

    color: rgba(255, 255, 255, .78);

    font-size: 13px;
    font-weight: 400;
    line-height: 1.55;
}


/* LEARN MORE */

.rv-region-more {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: #B99A6C;

    font-size: 12px;
    font-weight: 600;
    line-height: 1.2;
}

.rv-region-more b {
    color: #B99A6C;

    font-size: 16px;
    font-weight: 400;
    line-height: 1;

    transition: transform .25s ease;
}


/* =========================================
   HOVER
========================================= */

.rv-region-card:hover img {
    transform: scale(1.045);
}

.rv-region-card:hover .rv-region-more b {
    transform: translateX(4px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1024px) {

    .rv-region-services {
        padding: 38px 20px 42px;
    }

    .rv-region-inner {
        max-width: 920px;
    }

    .rv-region-inner > h2 {
        margin-bottom: 30px;

        font-size: 34px;
    }

    .rv-region-grid {
        gap: 18px;
    }

    .rv-region-card {
        height: 300px;
    }

    .rv-region-content {
        left: 20px;
        right: 20px;
        bottom: 21px;
    }

    .rv-region-content h3 {
        font-size: 17px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .rv-region-services {
        padding: 32px 16px 36px;
    }

    .rv-region-inner {
        max-width: 100%;
    }

    .rv-region-eyebrow {
        margin-bottom: 12px;

        font-size: 9px;
        letter-spacing: 1.4px;
    }

    .rv-region-inner > h2 {
        margin-bottom: 26px;

        font-size: 29px;
        line-height: 1.2;
        letter-spacing: -0.5px;
    }

    .rv-region-grid {
        grid-template-columns: 1fr;

        gap: 16px;
    }

    .rv-region-card {
        width: 100%;

        height: 290px;

        border-radius: 15px;
    }

    .rv-region-content {
        left: 20px;
        right: 20px;
        bottom: 21px;
    }

    .rv-region-content h3 {
        margin-bottom: 10px;

        font-size: 17px;
    }

    .rv-region-content p {
        margin-bottom: 14px;

        font-size: 13px;
        line-height: 1.5;
    }

    .rv-region-more {
        font-size: 12px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .rv-region-services {
        padding-left: 14px;
        padding-right: 14px;
    }

    .rv-region-inner > h2 {
        font-size: 27px;
    }

    .rv-region-card {
        height: 270px;
    }

    .rv-region-content {
        left: 18px;
        right: 18px;
        bottom: 19px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-77ad6eda */@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');


/* =========================
   SECTION
========================= */

.rv-book-cta,
.rv-book-cta * {
    box-sizing: border-box;
}

.rv-book-cta {
    width: 100%;
    margin: 0 !important;
    padding: 58px 20px;

    background: transparent;

    font-family: "Roboto", Arial, sans-serif;
    color: #fff;
}

.rv-book-cta-inner {
    width: 100%;
    max-width: 1120px;

    margin: 0 auto;

    display: grid;
    grid-template-columns: 1fr 1fr;

    gap: 80px;

    align-items: center;
}


/* =========================
   LEFT CONTENT
========================= */

.rv-book-cta-eyebrow {
    display: flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 20px;

    color: #B99A6C;

    font-size: 11px;
    line-height: 1;

    font-weight: 700;

    letter-spacing: 2px;
}

.rv-book-cta-eyebrow span {
    width: 24px;
    height: 2px;

    display: inline-block;

    background: #B99A6C;
}

.rv-book-cta-content h2 {
    margin: 0;

    color: #FFFFFF;

    font-size: 43px;
    line-height: 1.06;

    font-weight: 700;

    letter-spacing: -1.5px;
}

.rv-book-cta-content p {
    max-width: 440px;

    margin: 18px 0 0 !important;

    color: rgba(255, 255, 255, 0.72);

    font-size: 15px;
    line-height: 1.65;

    font-weight: 400;
}


/* =========================
   BUTTONS
========================= */

.rv-book-cta-actions {
    display: flex;
    align-items: center;

    gap: 12px;

    margin-top: 28px;
}

.rv-book-btn {
    min-height: 52px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    padding: 0 29px;

    border-radius: 35px;

    text-decoration: none !important;

    font-size: 13px;
    font-weight: 700;

    transition:
        background-color .28s ease,
        color .28s ease,
        border-color .28s ease,
        transform .28s ease;
}


/* GOLD BUTTON */

.rv-book-btn-gold {
    background: #B99A6C;

    border: 1px solid #B99A6C;

    color: #101820;
}

.rv-book-btn-gold:hover {
    background: #CAA978;

    border-color: #CAA978;

    color: #101820;

    transform: translateY(-2px);
}


/* OUTLINE BUTTON */

.rv-book-btn-outline {
    background: rgba(255, 255, 255, 0.04);

    border: 1px solid rgba(255, 255, 255, 0.18);

    color: #FFFFFF;
}

.rv-book-btn-outline:hover {
    border-color: #B99A6C;

    color: #B99A6C;

    transform: translateY(-2px);
}


/* =========================
   PHONE AREA
========================= */

.rv-phone-area {
    display: flex;

    justify-content: flex-end;
    align-items: center;

    overflow: visible;
}


/* =========================
   PHONE CARD
========================= */

.rv-phone-card {
    position: relative;

    width: 390px;
    min-height: 116px;

    display: flex;
    align-items: center;

    padding: 20px 30px 20px 118px;

    border: 1px solid rgba(185, 154, 108, 0.28);

    border-radius: 70px;

    background: rgba(63, 86, 110, 0.64);

    color: #FFFFFF;

    text-decoration: none !important;

    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);

    box-shadow:
        0 15px 40px rgba(0, 0, 0, 0.20);

    transition:
        background-color .35s ease,
        border-color .35s ease,
        transform .35s ease,
        box-shadow .35s ease;

    overflow: visible;
}

.rv-phone-card:hover {
    border-color: #B99A6C;

    background: rgba(63, 86, 110, 0.82);

    transform: translateY(-4px);

    box-shadow:
        0 20px 45px rgba(0, 0, 0, 0.28);
}


/* =========================
   PHONE CIRCLE OUTER
========================= */

.rv-phone-circle-outer {
    position: absolute;

    left: -25px;
    top: 50%;

    width: 128px;
    height: 128px;

    transform: translateY(-50%);

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(185, 154, 108, 0.20);

    border-radius: 50%;

    overflow: visible;

    transition: transform .35s ease;

    z-index: 2;
}


/* Hover circle */

.rv-phone-card:hover .rv-phone-circle-outer {
    transform: translateY(-50%) scale(1.04);
}


/* =========================
   CONTINUOUS PHONE WAVES
========================= */

.rv-phone-circle-outer::before,
.rv-phone-circle-outer::after {
    content: "";

    position: absolute;

    top: 50%;
    left: 50%;

    width: 78px;
    height: 78px;

    border: 1.5px solid rgba(185, 154, 108, 0.62);

    border-radius: 50%;

    transform:
        translate(-50%, -50%)
        scale(0.85);

    opacity: 0;

    pointer-events: none;

    animation:
        rvPhoneWave
        2.8s
        ease-out
        infinite;

    z-index: -1;
}


/* SECOND WAVE */

.rv-phone-circle-outer::after {
    animation-delay: 1.4s;
}


/* WAVE ANIMATION */

@keyframes rvPhoneWave {

    0% {
        transform:
            translate(-50%, -50%)
            scale(0.80);

        opacity: 0;
    }

    10% {
        opacity: 0.75;
    }

    60% {
        opacity: 0.25;
    }

    100% {
        transform:
            translate(-50%, -50%)
            scale(2.15);

        opacity: 0;
    }
}


/* =========================
   INNER PHONE CIRCLE
========================= */

.rv-phone-circle {
    position: relative;

    width: 82px;
    height: 82px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: rgba(185, 154, 108, 0.08);

    border: 1px solid rgba(185, 154, 108, 0.48);

    box-shadow:
        0 0 30px rgba(185, 154, 108, 0.10);

    z-index: 3;
}

.rv-phone-circle svg {
    width: 30px;
    height: 30px;

    color: #B99A6C;
}


/* =========================
   PHONE INFO
========================= */

.rv-phone-info {
    width: 100%;
}

.rv-phone-label {
    display: flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 7px;

    color: rgba(255, 255, 255, 0.66);

    font-size: 11px;
    line-height: 1;

    font-weight: 700;

    letter-spacing: 1.7px;
}

.rv-gold-dot {
    width: 6px;
    height: 6px;

    display: inline-block;

    border-radius: 50%;

    background: #B99A6C;
}

.rv-phone-number {
    color: #FFFFFF;

    font-size: 27px;
    line-height: 1.15;

    font-weight: 700;

    white-space: nowrap;
}


/* =========================
   MINI SIGNAL BARS
========================= */

.rv-phone-bars {
    display: flex;

    align-items: flex-end;

    gap: 3px;

    height: 18px;

    margin-top: 8px;
}

.rv-phone-bars span {
    width: 3px;

    display: block;

    border-radius: 3px;

    background: #B99A6C;

    opacity: .85;

    transform-origin: bottom center;
}


/* BASE HEIGHTS */

.rv-phone-bars span:nth-child(1) {
    height: 5px;

    animation:
        rvBarsOne
        .85s
        ease-in-out
        infinite alternate;
}

.rv-phone-bars span:nth-child(2) {
    height: 10px;

    animation:
        rvBarsTwo
        .70s
        ease-in-out
        infinite alternate;

    animation-delay: .10s;
}

.rv-phone-bars span:nth-child(3) {
    height: 15px;

    animation:
        rvBarsThree
        .95s
        ease-in-out
        infinite alternate;

    animation-delay: .20s;
}

.rv-phone-bars span:nth-child(4) {
    height: 9px;

    animation:
        rvBarsFour
        .75s
        ease-in-out
        infinite alternate;

    animation-delay: .30s;
}

.rv-phone-bars span:nth-child(5) {
    height: 5px;

    animation:
        rvBarsFive
        .90s
        ease-in-out
        infinite alternate;

    animation-delay: .40s;
}


/* =========================
   CONTINUOUS BAR ANIMATIONS
========================= */

@keyframes rvBarsOne {

    0% {
        transform: scaleY(.35);
        opacity: .45;
    }

    100% {
        transform: scaleY(1);
        opacity: 1;
    }
}


@keyframes rvBarsTwo {

    0% {
        transform: scaleY(.60);
        opacity: .55;
    }

    100% {
        transform: scaleY(1);
        opacity: 1;
    }
}


@keyframes rvBarsThree {

    0% {
        transform: scaleY(.30);
        opacity: .50;
    }

    100% {
        transform: scaleY(1);
        opacity: 1;
    }
}


@keyframes rvBarsFour {

    0% {
        transform: scaleY(.45);
        opacity: .50;
    }

    100% {
        transform: scaleY(1);
        opacity: 1;
    }
}


@keyframes rvBarsFive {

    0% {
        transform: scaleY(.25);
        opacity: .45;
    }

    100% {
        transform: scaleY(1);
        opacity: 1;
    }
}


/* =========================
   TABLET
========================= */

@media (max-width: 1024px) {

    .rv-book-cta-inner {
        grid-template-columns: 1fr;

        gap: 45px;
    }

    .rv-phone-area {
        justify-content: flex-start;

        padding-left: 25px;
    }

}


/* =========================
   MOBILE
========================= */

@media (max-width: 767px) {

    .rv-book-cta {
        padding: 42px 18px;
    }


    .rv-book-cta-content h2 {
        font-size: 32px;

        line-height: 1.12;
    }


    .rv-book-cta-content h2 br {
        display: none;
    }


    .rv-book-cta-content p {
        font-size: 15px;
    }


    .rv-book-cta-actions {
        flex-direction: column;

        align-items: stretch;
    }


    .rv-book-btn {
        width: 100%;
    }


    .rv-phone-area {
        padding-left: 0;
    }


    .rv-phone-card {
        width: 100%;

        min-height: 100px;

        padding:
            18px
            18px
            18px
            92px;

        border-radius: 60px;
    }


    .rv-phone-circle-outer {
        left: -7px;

        width: 100px;
        height: 100px;
    }


    .rv-phone-circle {
        width: 66px;
        height: 66px;
    }


    .rv-phone-circle svg {
        width: 25px;
        height: 25px;
    }


    .rv-phone-number {
        font-size: 20px;
    }


    .rv-phone-label {
        font-size: 9px;

        letter-spacing: 1.2px;
    }

}


/* =========================
   ACCESSIBILITY
========================= */

@media (prefers-reduced-motion: reduce) {

    .rv-phone-bars span,
    .rv-phone-circle-outer::before,
    .rv-phone-circle-outer::after {
        animation: none;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d272746 */@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');

.rv-faq-intro,
.rv-faq-intro * {
    box-sizing: border-box;
}

.rv-faq-intro {
    width: 100%;
    margin: 0 !important;
    padding: 48px 20px 34px;

    background: transparent;

    font-family: "Roboto", Arial, sans-serif;
}

.rv-faq-inner {
    width: 100%;
    max-width: 1100px;

    margin: 0 auto;

    text-align: center;
}


/* EYEBROW */

.rv-faq-eyebrow {
    display: flex;
    justify-content: center;
    align-items: center;

    gap: 10px;

    margin-bottom: 20px;

    color: #8B765B;

    font-size: 12px;
    line-height: 1;

    font-weight: 700;

    letter-spacing: 2px;
}

.rv-faq-eyebrow span {
    width: 25px;
    height: 2px;

    background: #B99A6C;

    display: inline-block;
}


/* HEADING */

.rv-faq-inner h2 {
    margin: 0;

    color: #15181C;

    font-size: 46px;
    line-height: 1.08;

    font-weight: 700;

    letter-spacing: -1.5px;
}


/* TEXT */

.rv-faq-inner p {
    margin: 7px 0 0 !important;

    color: #686868;

    font-size: 18px;
    line-height: 1.55;

    font-weight: 400;
}


/* TABLET */

@media (max-width: 1024px) {

    .rv-faq-inner h2 {
        font-size: 40px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .rv-faq-intro {
        padding: 38px 18px 28px;
    }

    .rv-faq-inner h2 {
        font-size: 32px;
        line-height: 1.15;

        letter-spacing: -1px;
    }

    .rv-faq-inner p {
        font-size: 16px;
        line-height: 1.55;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6623aa3 */@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;600;700&display=swap');


.rv-faq-accordion,
.rv-faq-accordion * {
    box-sizing: border-box;
}

.rv-faq-accordion {
    width: 100%;
    margin: 0 !important;
    padding: 0;

    background: transparent;

    font-family: "Roboto", Arial, sans-serif;
}


/* FAQ ITEM */

.rv-faq-item {
    width: 100%;

    margin: 0 0 12px !important;

    background: #FBFAF7;

    border: 1px solid transparent;

    border-radius: 18px;

    overflow: hidden;

    box-shadow:
        0 10px 28px rgba(20,25,30,.07);

    transition:
        border-color .3s ease,
        box-shadow .3s ease;
}


/* OPEN ITEM */

.rv-faq-item.is-open {
    border-color: #B99A6C;

    box-shadow:
        0 14px 32px rgba(20,25,30,.08);
}


/* QUESTION BUTTON */

.rv-faq-question {
    width: 100%;

    min-height: 72px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;

    margin: 0 !important;

    padding: 20px 25px;

    border: 0 !important;

    background: transparent !important;

    color: #15181C !important;

    text-align: left;

    font-family: inherit;

    font-size: 16px;

    line-height: 1.4;

    font-weight: 700;

    cursor: pointer;

    box-shadow: none !important;

    outline: none !important;
}


/* Prevent Elementor / Theme blue hover */

.rv-faq-question:hover,
.rv-faq-question:focus,
.rv-faq-question:focus-visible {
    background: transparent !important;
    color: #15181C !important;

    border: 0 !important;

    outline: none !important;
}


/* PLUS / CROSS ICON */

.rv-faq-icon {
    width: 31px;
    height: 31px;

    min-width: 31px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #F0EEEA;

    color: #8B765B;

    font-size: 21px;
    line-height: 1;

    font-weight: 400;

    transition:
        background-color .3s ease,
        color .3s ease,
        transform .3s ease;
}


/* ACTIVE ICON */

.rv-faq-item.is-open .rv-faq-icon {
    background: #B99A6C;

    color: #15181C;
}


/* ANSWER */

.rv-faq-answer {
    display: grid;

    grid-template-rows: 0fr;

    opacity: 0;

    transition:
        grid-template-rows .35s ease,
        opacity .3s ease;
}


.rv-faq-answer-inner {
    overflow: hidden;

    padding: 0 25px;

    color: #686868;

    font-size: 15px;

    line-height: 1.65;

    font-weight: 400;
}


/* OPEN ANSWER */

.rv-faq-item.is-open .rv-faq-answer {
    grid-template-rows: 1fr;

    opacity: 1;
}


.rv-faq-item.is-open .rv-faq-answer-inner {
    padding:
        0 25px
        24px;
}


/* FAQ ITEM HOVER */

.rv-faq-item:hover {
    border-color: rgba(185,154,108,.65);
}


/* MOBILE */

@media (max-width: 767px) {

    .rv-faq-item {
        border-radius: 15px;
    }

    .rv-faq-question {
        min-height: 66px;

        padding: 18px;

        font-size: 15px;
    }

    .rv-faq-answer-inner {
        padding: 0 18px;

        font-size: 14px;
    }

    .rv-faq-item.is-open .rv-faq-answer-inner {
        padding:
            0 18px
            20px;
    }

    .rv-faq-icon {
        width: 30px;
        height: 30px;

        min-width: 30px;
    }

}/* End custom CSS */