.elementor-31290 .elementor-element.elementor-element-774d2c2{--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;--overlay-opacity:0.81;}.elementor-31290 .elementor-element.elementor-element-774d2c2:not(.elementor-motion-effects-element-type-background), .elementor-31290 .elementor-element.elementor-element-774d2c2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-2c1ec68 );background:url("https://renovatio-vip.de/wp-content/uploads/2025/12/Kopie-von-DFR03605-1.webp") 50% 50%;background-size:cover;}.elementor-31290 .elementor-element.elementor-element-774d2c2::before, .elementor-31290 .elementor-element.elementor-element-774d2c2 > .elementor-background-video-container::before, .elementor-31290 .elementor-element.elementor-element-774d2c2 > .e-con-inner > .elementor-background-video-container::before, .elementor-31290 .elementor-element.elementor-element-774d2c2 > .elementor-background-slideshow::before, .elementor-31290 .elementor-element.elementor-element-774d2c2 > .e-con-inner > .elementor-background-slideshow::before, .elementor-31290 .elementor-element.elementor-element-774d2c2 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#243041;--background-overlay:'';}.elementor-31290 .elementor-element.elementor-element-07ee7d4{--display:flex;--min-height:90vh;--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:50px;--padding-left:70px;--padding-right:70px;}.elementor-31290 .elementor-element.elementor-element-a676a40{--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-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-31290 .elementor-element.elementor-element-5383db8{background-color:#FFFFFF1A;padding:10px 15px 10px 15px;border-style:solid;border-width:1.5px 1.5px 1.5px 1.5px;border-color:#FFFFFF33;border-radius:25px 25px 25px 25px;--e-icon-list-icon-size:20px;--icon-vertical-offset:0px;}.elementor-31290 .elementor-element.elementor-element-5383db8 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-31290 .elementor-element.elementor-element-5383db8 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-31290 .elementor-element.elementor-element-5383db8 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-31290 .elementor-element.elementor-element-5383db8 .elementor-icon-list-item > a{font-family:"Cairo", Sans-serif;font-size:18px;font-weight:400;line-height:20px;}.elementor-31290 .elementor-element.elementor-element-5383db8 .elementor-icon-list-text{color:var( --e-global-color-astglobalcolor4 );transition:color 0.3s;}.elementor-31290 .elementor-element.elementor-element-cf52d64{--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-31290 .elementor-element.elementor-element-44aa806{width:var( --container-widget-width, 71% );max-width:71%;--container-widget-width:71%;--container-widget-flex-grow:0;}.elementor-31290 .elementor-element.elementor-element-44aa806 .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:54px;font-weight:600;line-height:65px;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-31290 .elementor-element.elementor-element-2a3d494{width:var( --container-widget-width, 75% );max-width:75%;--container-widget-width:75%;--container-widget-flex-grow:0;font-family:"Inter", Sans-serif;font-size:22px;font-weight:400;line-height:30px;color:#FFFFFFCC;}.elementor-31290 .elementor-element.elementor-element-4f70f25{--display:flex;--gap:45px 45px;--row-gap:45px;--column-gap:45px;}.elementor-31290 .elementor-element.elementor-element-8a4e18c{--display:flex;}.elementor-31290 .elementor-element.elementor-element-dd6c8b1{--display:grid;--e-con-grid-template-columns:repeat(4, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-31290 .elementor-element.elementor-element-dd6c8b1.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box:has(:hover) .elementor-icon-box-title,
					 .elementor-widget-icon-box:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-description{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-31290 .elementor-element.elementor-element-c462e3d{padding:20px 20px 20px 20px;border-style:solid;border-width:0px 0px 0px 1px;border-color:#FFFFFF33;}.elementor-31290 .elementor-element.elementor-element-c462e3d .elementor-icon-box-wrapper{text-align:start;}.elementor-31290 .elementor-element.elementor-element-c462e3d .elementor-icon-box-title{margin-block-end:5px;color:var( --e-global-color-b29fc56 );}.elementor-31290 .elementor-element.elementor-element-c462e3d .elementor-icon-box-title, .elementor-31290 .elementor-element.elementor-element-c462e3d .elementor-icon-box-title a{font-family:"Playfair Display", Sans-serif;font-size:40px;font-weight:600;}.elementor-31290 .elementor-element.elementor-element-c462e3d:has(:hover) .elementor-icon-box-title,
					 .elementor-31290 .elementor-element.elementor-element-c462e3d:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-b29fc56 );}.elementor-31290 .elementor-element.elementor-element-c462e3d .elementor-icon-box-description{font-family:"Inter", Sans-serif;font-size:18px;font-weight:400;color:var( --e-global-color-astglobalcolor4 );}.elementor-31290 .elementor-element.elementor-element-c9b21a2{padding:20px 20px 20px 20px;border-style:solid;border-width:0px 0px 0px 1px;border-color:#FFFFFF33;}.elementor-31290 .elementor-element.elementor-element-c9b21a2 .elementor-icon-box-wrapper{text-align:start;}.elementor-31290 .elementor-element.elementor-element-c9b21a2 .elementor-icon-box-title{margin-block-end:5px;color:var( --e-global-color-b29fc56 );}.elementor-31290 .elementor-element.elementor-element-c9b21a2 .elementor-icon-box-title, .elementor-31290 .elementor-element.elementor-element-c9b21a2 .elementor-icon-box-title a{font-family:"Playfair Display", Sans-serif;font-size:40px;font-weight:600;}.elementor-31290 .elementor-element.elementor-element-c9b21a2:has(:hover) .elementor-icon-box-title,
					 .elementor-31290 .elementor-element.elementor-element-c9b21a2:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-b29fc56 );}.elementor-31290 .elementor-element.elementor-element-c9b21a2 .elementor-icon-box-description{font-family:"Inter", Sans-serif;font-size:18px;font-weight:400;color:var( --e-global-color-astglobalcolor4 );}.elementor-31290 .elementor-element.elementor-element-6c68169{padding:20px 20px 20px 20px;border-style:solid;border-width:0px 0px 0px 1px;border-color:#FFFFFF33;}.elementor-31290 .elementor-element.elementor-element-6c68169 .elementor-icon-box-wrapper{text-align:start;}.elementor-31290 .elementor-element.elementor-element-6c68169 .elementor-icon-box-title{margin-block-end:5px;color:var( --e-global-color-b29fc56 );}.elementor-31290 .elementor-element.elementor-element-6c68169 .elementor-icon-box-title, .elementor-31290 .elementor-element.elementor-element-6c68169 .elementor-icon-box-title a{font-family:"Playfair Display", Sans-serif;font-size:40px;font-weight:600;}.elementor-31290 .elementor-element.elementor-element-6c68169:has(:hover) .elementor-icon-box-title,
					 .elementor-31290 .elementor-element.elementor-element-6c68169:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-b29fc56 );}.elementor-31290 .elementor-element.elementor-element-6c68169 .elementor-icon-box-description{font-family:"Inter", Sans-serif;font-size:18px;font-weight:400;color:var( --e-global-color-astglobalcolor4 );}.elementor-31290 .elementor-element.elementor-element-78f40c9{padding:20px 20px 20px 20px;border-style:solid;border-width:0px 0px 0px 1px;border-color:#FFFFFF33;}.elementor-31290 .elementor-element.elementor-element-78f40c9 .elementor-icon-box-wrapper{text-align:start;}.elementor-31290 .elementor-element.elementor-element-78f40c9 .elementor-icon-box-title{margin-block-end:5px;color:var( --e-global-color-b29fc56 );}.elementor-31290 .elementor-element.elementor-element-78f40c9 .elementor-icon-box-title, .elementor-31290 .elementor-element.elementor-element-78f40c9 .elementor-icon-box-title a{font-family:"Playfair Display", Sans-serif;font-size:40px;font-weight:600;}.elementor-31290 .elementor-element.elementor-element-78f40c9:has(:hover) .elementor-icon-box-title,
					 .elementor-31290 .elementor-element.elementor-element-78f40c9:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-b29fc56 );}.elementor-31290 .elementor-element.elementor-element-78f40c9 .elementor-icon-box-description{font-family:"Inter", Sans-serif;font-size:18px;font-weight:400;color:var( --e-global-color-astglobalcolor4 );}.elementor-31290 .elementor-element.elementor-element-3f097fb{--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-31290 .elementor-element.elementor-element-3f097fb:not(.elementor-motion-effects-element-type-background), .elementor-31290 .elementor-element.elementor-element-3f097fb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-da13980 );}.elementor-31290 .elementor-element.elementor-element-21f49c1{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-31290 .elementor-element.elementor-element-21f49c1:not(.elementor-motion-effects-element-type-background), .elementor-31290 .elementor-element.elementor-element-21f49c1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-da13980 );}.elementor-31290 .elementor-element.elementor-element-8be78a1{--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;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-31290 .elementor-element.elementor-element-5b1617c img{border-radius:22px 22px 22px 22px;}.elementor-31290 .elementor-element.elementor-element-eebee68{--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;--justify-content:center;--gap:35px 35px;--row-gap:35px;--column-gap:35px;}.elementor-31290 .elementor-element.elementor-element-c3f2fa5{--display:flex;--gap:15px 15px;--row-gap:15px;--column-gap:15px;}.elementor-31290 .elementor-element.elementor-element-9a0b53b{--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-31290 .elementor-element.elementor-element-9a0b53b:not(.elementor-motion-effects-element-type-background), .elementor-31290 .elementor-element.elementor-element-9a0b53b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EFEDE9;}.elementor-31290 .elementor-element.elementor-element-e6ea916{--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-31290 .elementor-element.elementor-element-e6ea916:not(.elementor-motion-effects-element-type-background), .elementor-31290 .elementor-element.elementor-element-e6ea916 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-da13980 );}.elementor-31290 .elementor-element.elementor-element-9a7b7b3{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-31290 .elementor-element.elementor-element-9a7b7b3:not(.elementor-motion-effects-element-type-background), .elementor-31290 .elementor-element.elementor-element-9a7b7b3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-da13980 );}.elementor-31290 .elementor-element.elementor-element-b9bb894{--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;}.elementor-31290 .elementor-element.elementor-element-4022c3f img{border-radius:22px 22px 22px 22px;}.elementor-31290 .elementor-element.elementor-element-616ed92{--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;--justify-content:center;--gap:35px 35px;--row-gap:35px;--column-gap:35px;}.elementor-31290 .elementor-element.elementor-element-2095716{--display:flex;--gap:15px 15px;--row-gap:15px;--column-gap:15px;}.elementor-31290 .elementor-element.elementor-element-ade0c25{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-31290 .elementor-element.elementor-element-ade0c25:not(.elementor-motion-effects-element-type-background), .elementor-31290 .elementor-element.elementor-element-ade0c25 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-da13980 );}.elementor-31290 .elementor-element.elementor-element-d0e361f{--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;}.elementor-31290 .elementor-element.elementor-element-d0e361f.e-con{--order:99999 /* order end hack */;}.elementor-31290 .elementor-element.elementor-element-55c3a4d img{border-radius:22px 22px 22px 22px;}.elementor-31290 .elementor-element.elementor-element-89c31f6{--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;--justify-content:center;--gap:35px 35px;--row-gap:35px;--column-gap:35px;}.elementor-31290 .elementor-element.elementor-element-9e45364{--display:flex;--gap:15px 15px;--row-gap:15px;--column-gap:15px;}.elementor-31290 .elementor-element.elementor-element-8ab9405{--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-31290 .elementor-element.elementor-element-8ab9405:not(.elementor-motion-effects-element-type-background), .elementor-31290 .elementor-element.elementor-element-8ab9405 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F3EF;}.elementor-31290 .elementor-element.elementor-element-c8e193b{--display:flex;--overlay-opacity:0.09;--border-radius:25px 25px 25px 25px;}.elementor-31290 .elementor-element.elementor-element-c8e193b:not(.elementor-motion-effects-element-type-background), .elementor-31290 .elementor-element.elementor-element-c8e193b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-8631faa );}.elementor-31290 .elementor-element.elementor-element-c8e193b::before, .elementor-31290 .elementor-element.elementor-element-c8e193b > .elementor-background-video-container::before, .elementor-31290 .elementor-element.elementor-element-c8e193b > .e-con-inner > .elementor-background-video-container::before, .elementor-31290 .elementor-element.elementor-element-c8e193b > .elementor-background-slideshow::before, .elementor-31290 .elementor-element.elementor-element-c8e193b > .e-con-inner > .elementor-background-slideshow::before, .elementor-31290 .elementor-element.elementor-element-c8e193b > .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-31290 .elementor-element.elementor-element-c5117e3{--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:0px;--padding-left:0px;--padding-right:0px;}.elementor-31290 .elementor-element.elementor-element-c5117e3:not(.elementor-motion-effects-element-type-background), .elementor-31290 .elementor-element.elementor-element-c5117e3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F3EF;}.elementor-31290 .elementor-element.elementor-element-e61ac03{--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:0px;--padding-left:0px;--padding-right:0px;}.elementor-31290 .elementor-element.elementor-element-e61ac03:not(.elementor-motion-effects-element-type-background), .elementor-31290 .elementor-element.elementor-element-e61ac03 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F3EF;}.elementor-31290 .elementor-element.elementor-element-811426a{--display:flex;--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:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-31290 .elementor-element.elementor-element-811426a:not(.elementor-motion-effects-element-type-background), .elementor-31290 .elementor-element.elementor-element-811426a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F3EF;}.elementor-31290 .elementor-element.elementor-element-7617c9d{--display:flex;}.elementor-31290 .elementor-element.elementor-element-680dff1{--display:flex;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-31290 .elementor-element.elementor-element-07ee7d4{--padding-top:60px;--padding-bottom:60px;--padding-left:30px;--padding-right:30px;}.elementor-31290 .elementor-element.elementor-element-5383db8{--e-icon-list-icon-size:16px;}.elementor-31290 .elementor-element.elementor-element-5383db8 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-31290 .elementor-element.elementor-element-5383db8 .elementor-icon-list-item > a{font-size:16px;line-height:1em;}.elementor-31290 .elementor-element.elementor-element-44aa806 .elementor-heading-title{font-size:50px;line-height:1.2em;}.elementor-31290 .elementor-element.elementor-element-2a3d494{--container-widget-width:84%;--container-widget-flex-grow:0;width:var( --container-widget-width, 84% );max-width:84%;font-size:18px;}.elementor-31290 .elementor-element.elementor-element-dd6c8b1{--grid-auto-flow:row;}.elementor-31290 .elementor-element.elementor-element-c462e3d{padding:15px 15px 15px 15px;}.elementor-31290 .elementor-element.elementor-element-c462e3d .elementor-icon-box-title, .elementor-31290 .elementor-element.elementor-element-c462e3d .elementor-icon-box-title a{font-size:35px;}.elementor-31290 .elementor-element.elementor-element-c462e3d .elementor-icon-box-description{font-size:16px;}.elementor-31290 .elementor-element.elementor-element-c9b21a2{padding:15px 15px 15px 15px;}.elementor-31290 .elementor-element.elementor-element-c9b21a2 .elementor-icon-box-title, .elementor-31290 .elementor-element.elementor-element-c9b21a2 .elementor-icon-box-title a{font-size:35px;}.elementor-31290 .elementor-element.elementor-element-c9b21a2 .elementor-icon-box-description{font-size:16px;}.elementor-31290 .elementor-element.elementor-element-6c68169{padding:15px 15px 15px 15px;}.elementor-31290 .elementor-element.elementor-element-6c68169 .elementor-icon-box-title, .elementor-31290 .elementor-element.elementor-element-6c68169 .elementor-icon-box-title a{font-size:35px;}.elementor-31290 .elementor-element.elementor-element-6c68169 .elementor-icon-box-description{font-size:16px;}.elementor-31290 .elementor-element.elementor-element-78f40c9{padding:15px 15px 15px 15px;}.elementor-31290 .elementor-element.elementor-element-78f40c9 .elementor-icon-box-title, .elementor-31290 .elementor-element.elementor-element-78f40c9 .elementor-icon-box-title a{font-size:35px;}.elementor-31290 .elementor-element.elementor-element-78f40c9 .elementor-icon-box-description{font-size:16px;}}@media(max-width:767px){.elementor-31290 .elementor-element.elementor-element-774d2c2{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-31290 .elementor-element.elementor-element-07ee7d4{--min-height:0vh;--padding-top:151px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}.elementor-31290 .elementor-element.elementor-element-5383db8{padding:8px 10px 8px 10px;--e-icon-list-icon-size:16px;}.elementor-31290 .elementor-element.elementor-element-5383db8 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-31290 .elementor-element.elementor-element-5383db8 .elementor-icon-list-item > a{font-size:14px;}.elementor-31290 .elementor-element.elementor-element-cf52d64{--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-31290 .elementor-element.elementor-element-44aa806{width:100%;max-width:100%;}.elementor-31290 .elementor-element.elementor-element-44aa806 .elementor-heading-title{font-size:35px;line-height:1.2em;}.elementor-31290 .elementor-element.elementor-element-2a3d494{width:100%;max-width:100%;font-size:16px;line-height:1.6em;}.elementor-31290 .elementor-element.elementor-element-dd6c8b1{--e-con-grid-template-columns:repeat(2, 1fr);--gap:15px 15px;--row-gap:15px;--column-gap:15px;--grid-auto-flow:row;}.elementor-31290 .elementor-element.elementor-element-c462e3d{padding:0px 0px 0px 10px;}.elementor-31290 .elementor-element.elementor-element-c462e3d .elementor-icon-box-title, .elementor-31290 .elementor-element.elementor-element-c462e3d .elementor-icon-box-title a{font-size:35px;}.elementor-31290 .elementor-element.elementor-element-c462e3d .elementor-icon-box-description{font-size:14px;}.elementor-31290 .elementor-element.elementor-element-c9b21a2{padding:0px 0px 0px 10px;}.elementor-31290 .elementor-element.elementor-element-c9b21a2 .elementor-icon-box-title, .elementor-31290 .elementor-element.elementor-element-c9b21a2 .elementor-icon-box-title a{font-size:35px;}.elementor-31290 .elementor-element.elementor-element-c9b21a2 .elementor-icon-box-description{font-size:14px;}.elementor-31290 .elementor-element.elementor-element-6c68169{padding:0px 0px 0px 10px;}.elementor-31290 .elementor-element.elementor-element-6c68169 .elementor-icon-box-title, .elementor-31290 .elementor-element.elementor-element-6c68169 .elementor-icon-box-title a{font-size:35px;}.elementor-31290 .elementor-element.elementor-element-6c68169 .elementor-icon-box-description{font-size:14px;}.elementor-31290 .elementor-element.elementor-element-78f40c9{padding:0px 0px 0px 10px;}.elementor-31290 .elementor-element.elementor-element-78f40c9 .elementor-icon-box-title, .elementor-31290 .elementor-element.elementor-element-78f40c9 .elementor-icon-box-title a{font-size:35px;}.elementor-31290 .elementor-element.elementor-element-78f40c9 .elementor-icon-box-description{font-size:14px;}}@media(min-width:768px){.elementor-31290 .elementor-element.elementor-element-a676a40{--width:100%;}.elementor-31290 .elementor-element.elementor-element-cf52d64{--width:34%;}.elementor-31290 .elementor-element.elementor-element-dd6c8b1{--width:46%;}.elementor-31290 .elementor-element.elementor-element-8be78a1{--width:45%;}.elementor-31290 .elementor-element.elementor-element-eebee68{--width:55%;}.elementor-31290 .elementor-element.elementor-element-b9bb894{--width:45%;}.elementor-31290 .elementor-element.elementor-element-616ed92{--width:55%;}.elementor-31290 .elementor-element.elementor-element-d0e361f{--width:45%;}.elementor-31290 .elementor-element.elementor-element-89c31f6{--width:55%;}}@media(max-width:1024px) and (min-width:768px){.elementor-31290 .elementor-element.elementor-element-a676a40{--width:100%;}.elementor-31290 .elementor-element.elementor-element-eebee68{--width:50%;}.elementor-31290 .elementor-element.elementor-element-616ed92{--width:50%;}.elementor-31290 .elementor-element.elementor-element-89c31f6{--width:50%;}}/* Start custom CSS for icon-list, class: .elementor-element-5383db8 */.elementor-31290 .elementor-element.elementor-element-5383db8 {
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8a4e18c *//* =========================================
   RENOVATIO VIP - CHBS HOMEPAGE WIDGET
========================================= */

.rv-booking-widget {
    width: 100%;
    font-family: "Roboto", sans-serif;
}

/* Plugin outer wrapper */
.rv-booking-widget .chbs-main,
.rv-booking-widget [class*="chbs-main"] {
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* -------------------------
   SERVICE TABS
-------------------------- */

.rv-booking-widget .chbs-tab,
.rv-booking-widget [class*="chbs-tab"] {
    border: 0 !important;
    background: transparent !important;
}

/* tabs list */
.rv-booking-widget .ui-tabs-nav {
    display: inline-flex !important;
    align-items: center;
    gap: 4px;
    margin: 0 0 14px !important;
    padding: 5px !important;
    background: rgba(10, 24, 37, 0.78) !important;
    border: 0 !important;
    border-radius: 30px !important;
}

/* individual tabs */
.rv-booking-widget .ui-tabs-nav li {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

/* tab links */
.rv-booking-widget .ui-tabs-nav li a {
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 10px 22px !important;

    border: 0 !important;
    border-radius: 25px !important;

    background: transparent !important;
    color: rgba(255,255,255,.78) !important;

    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-transform: none !important;

    transition: all .25s ease;
}

/* active tab */
.rv-booking-widget .ui-tabs-nav li.ui-tabs-active a,
.rv-booking-widget .ui-tabs-nav li.ui-state-active a {
    background: #B99A6C !important;
    color: #101820 !important;
}

/* hover */
.rv-booking-widget .ui-tabs-nav li:not(.ui-tabs-active) a:hover {
    color: #fff !important;
    background: rgba(255,255,255,.08) !important;
}


/* -------------------------
   MAIN FIELD ROW
-------------------------- */

.rv-booking-widget .ui-tabs-panel,
.rv-booking-widget [class*="chbs-tab-content"] {
    background: rgba(24, 39, 53, 0.78) !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 16px !important;
    padding: 18px !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

/* Fields */
.rv-booking-widget .chbs-form-field,
.rv-booking-widget [class*="chbs-form-field"] {
    background: transparent !important;
    border: 0 !important;
    border-right: 1px solid rgba(255,255,255,.08) !important;
    border-bottom: 1px solid rgba(255,255,255,.16) !important;
    box-shadow: none !important;
}

/* labels */
.rv-booking-widget .chbs-form-field label,
.rv-booking-widget .chbs-form-field-label,
.rv-booking-widget [class*="chbs-form-field"] label {
    color: rgba(255,255,255,.62) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    text-transform: none !important;
}

/* inputs */
.rv-booking-widget input,
.rv-booking-widget select,
.rv-booking-widget textarea {
    background: transparent !important;
    color: #fff !important;
    border: 0 !important;
    box-shadow: none !important;
    font-family: "Roboto", sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
}

/* placeholders */
.rv-booking-widget input::placeholder,
.rv-booking-widget textarea::placeholder {
    color: rgba(255,255,255,.42) !important;
    opacity: 1;
}

/* selected text */
.rv-booking-widget .select2-selection,
.rv-booking-widget .select2-selection__rendered {
    background: transparent !important;
    color: #fff !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* icons / arrows */
.rv-booking-widget .chbs-meta-icon,
.rv-booking-widget [class*="chbs-meta-icon"],
.rv-booking-widget .select2-selection__arrow {
    color: rgba(255,255,255,.75) !important;
}

/* date/time native icons */
.rv-booking-widget input[type="date"]::-webkit-calendar-picker-indicator,
.rv-booking-widget input[type="time"]::-webkit-calendar-picker-indicator {
    filter: invert(1);
    opacity: .8;
}


/* -------------------------
   BOOK BUTTON
-------------------------- */

.rv-booking-widget .chbs-button,
.rv-booking-widget button,
.rv-booking-widget input[type="submit"] {
    background: #B99A6C !important;
    color: #101820 !important;

    border: 0 !important;
    border-radius: 40px !important;

    min-width: 155px !important;
    min-height: 46px !important;
    padding: 12px 24px !important;

    font-family: "Roboto", sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;

    box-shadow: none !important;
    transition: all .25s ease !important;
}

.rv-booking-widget .chbs-button:hover,
.rv-booking-widget button:hover,
.rv-booking-widget input[type="submit"]:hover {
    background: #fff !important;
    color: #101820 !important;
}


/* -------------------------
   DROPDOWNS
-------------------------- */

.rv-booking-widget .select2-dropdown,
.rv-booking-widget .chbs-form-field-dropdown {
    background: #182735 !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,.12) !important;
}

.rv-booking-widget .select2-results__option {
    color: rgba(255,255,255,.82) !important;
}

.rv-booking-widget .select2-results__option--highlighted {
    background: #B99A6C !important;
    color: #101820 !important;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1024px) {

    .rv-booking-widget .ui-tabs-panel,
    .rv-booking-widget [class*="chbs-tab-content"] {
        padding: 16px !important;
    }

    .rv-booking-widget .ui-tabs-nav li a {
        padding: 10px 18px !important;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .rv-booking-widget .ui-tabs-nav {
        width: 100% !important;
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
    }

    .rv-booking-widget .ui-tabs-nav li,
    .rv-booking-widget .ui-tabs-nav li a {
        width: 100% !important;
    }

    .rv-booking-widget .ui-tabs-panel,
    .rv-booking-widget [class*="chbs-tab-content"] {
        border-radius: 14px !important;
        padding: 14px !important;
    }

    .rv-booking-widget .chbs-form-field,
    .rv-booking-widget [class*="chbs-form-field"] {
        border-right: 0 !important;
        margin-bottom: 8px !important;
    }

    .rv-booking-widget .chbs-button,
    .rv-booking-widget button,
    .rv-booking-widget input[type="submit"] {
        width: 100% !important;
        min-height: 50px !important;
    }
}
/* =====================================================
   RENOVATIO VIP - FINAL CHBS WIDGET OVERRIDES
   Add this AFTER your previous widget CSS
===================================================== */

.rv-booking-widget {
    width: 100% !important;
}


/* ================================
   ONE COMPLETE GLASS CARD
================================ */

.rv-booking-widget .chbs-main {
    position: relative !important;

    background: rgba(24, 39, 53, 0.82) !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 16px !important;

    padding: 12px 16px 68px !important;

    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);

    overflow: visible !important;
}


/* Remove backgrounds from internal wrappers */

.rv-booking-widget .chbs-main > div,
.rv-booking-widget .chbs-main-content,
.rv-booking-widget .chbs-form,
.rv-booking-widget .ui-tabs,
.rv-booking-widget .ui-tabs-panel {
    background: transparent !important;
}


/* ================================
   TABS - ONLY SMALL PILL LEFT
================================ */

.rv-booking-widget .ui-tabs-nav {
    display: inline-flex !important;
    width: max-content !important;
    max-width: 100% !important;

    align-items: center !important;
    gap: 3px !important;

    margin: 0 0 14px 0 !important;
    padding: 4px !important;

    background: rgba(7,20,31,.70) !important;
    border: 0 !important;
    border-radius: 999px !important;
}

.rv-booking-widget .ui-tabs-nav li {
    width: auto !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;
}

.rv-booking-widget .ui-tabs-nav li a {
    width: auto !important;

    padding: 10px 19px !important;

    background: transparent !important;
    border: 0 !important;
    border-radius: 999px !important;

    color: rgba(255,255,255,.78) !important;

    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
}

.rv-booking-widget .ui-tabs-nav li.ui-tabs-active a,
.rv-booking-widget .ui-tabs-nav li.ui-state-active a {
    background: #B99A6C !important;
    color: #101820 !important;
}

.rv-booking-widget .ui-tabs-nav li:not(.ui-tabs-active) a:hover {
    background: rgba(255,255,255,.06) !important;
    color: #fff !important;
}


/* ================================
   REMOVE SEPARATE PANEL CARD
================================ */

.rv-booking-widget .ui-tabs-panel {
    border: 0 !important;
    border-radius: 0 !important;

    padding: 0 !important;
    margin: 0 !important;

    box-shadow: none !important;
}


/* ================================
   FIELD ROW
================================ */

.rv-booking-widget .chbs-form-field,
.rv-booking-widget [class*="chbs-form-field"] {
    background: transparent !important;

    border-top: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;

    border-bottom: 1px solid rgba(255,255,255,.15) !important;

    box-shadow: none !important;
}


/* labels */

.rv-booking-widget .chbs-form-field label,
.rv-booking-widget [class*="chbs-form-field"] label {
    color: rgba(255,255,255,.55) !important;

    font-size: 10px !important;
    font-weight: 500 !important;
}


/* input text */

.rv-booking-widget input,
.rv-booking-widget select,
.rv-booking-widget textarea {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;

    color: #fff !important;

    font-size: 13px !important;
    font-weight: 500 !important;
}

.rv-booking-widget input::placeholder,
.rv-booking-widget textarea::placeholder {
    color: rgba(255,255,255,.40) !important;
    opacity: 1 !important;
}


/* Select2 */

.rv-booking-widget .select2-container,
.rv-booking-widget .select2-selection,
.rv-booking-widget .select2-selection--single,
.rv-booking-widget .select2-selection__rendered {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;

    color: #fff !important;
}


/* ================================
   REMOVE WHITE BUTTON AREA
================================ */

/* Parent directly containing booking button */

.rv-booking-widget *:has(> .chbs-button) {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;

    position: absolute !important;

    right: 16px !important;
    bottom: 14px !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    height: auto !important;
    min-height: 0 !important;

    padding: 0 !important;
    margin: 0 !important;
}


/* Some plugin versions use button/a wrappers */

.rv-booking-widget *:has(> a.chbs-button),
.rv-booking-widget *:has(> button.chbs-button) {
    background: transparent !important;
    border: 0 !important;
}


/* ================================
   GOLD BOOKING BUTTON
================================ */

.rv-booking-widget .chbs-button,
.rv-booking-widget a.chbs-button,
.rv-booking-widget button.chbs-button {
    position: relative !important;

    right: auto !important;
    bottom: auto !important;

    width: auto !important;
    min-width: 165px !important;
    min-height: 42px !important;

    margin: 0 !important;
    padding: 12px 24px !important;

    background: #B99A6C !important;
    color: #101820 !important;

    border: 0 !important;
    border-radius: 999px !important;

    box-shadow: none !important;

    font-size: 12px !important;
    font-weight: 600 !important;

    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease !important;
}

.rv-booking-widget .chbs-button:hover,
.rv-booking-widget a.chbs-button:hover,
.rv-booking-widget button.chbs-button:hover {
    background: #fff !important;
    color: #101820 !important;
    transform: translateY(-1px);
}


/* ================================
   NOTE - BOTTOM LEFT
================================ */

.rv-booking-widget .chbs-main::after {
    content:
    "Keine Vorauszahlung, unverbindlich. Sie erhalten einen schriftlichen Festpreis, in der Regel innerhalb einer Stunde.";

    position: absolute;

    left: 16px;
    bottom: 23px;

    width: calc(100% - 230px);

    color: rgba(255,255,255,.42);

    font-size: 9px;
    font-weight: 400;
    line-height: 1.5;

    pointer-events: none;
}


/* ================================
   REMOVE ANY REMAINING WHITE BG
================================ */

.rv-booking-widget .chbs-main-content,
.rv-booking-widget .chbs-main-content > div,
.rv-booking-widget .chbs-main-content > ul,
.rv-booking-widget .chbs-main-content > form,
.rv-booking-widget .chbs-form,
.rv-booking-widget .chbs-form > div {
    box-shadow: none !important;
}


/* specifically kill white backgrounds near submit button */

.rv-booking-widget .chbs-main *:has(.chbs-button) {
    border-color: transparent !important;
}


/* Don't overwrite complete card itself */

.rv-booking-widget .chbs-main {
    background: rgba(24, 39, 53, 0.82) !important;
}


/* ================================
   ICONS
================================ */

.rv-booking-widget input[type="date"]::-webkit-calendar-picker-indicator,
.rv-booking-widget input[type="time"]::-webkit-calendar-picker-indicator {
    filter: invert(1);
    opacity: .75;
}


/* ================================
   TABLET
================================ */

@media (max-width: 1024px) {

    .rv-booking-widget .chbs-main {
        padding: 14px 14px 72px !important;
    }

    .rv-booking-widget .chbs-main::after {
        left: 14px;
        bottom: 22px;
        width: calc(100% - 215px);
    }

    .rv-booking-widget *:has(> .chbs-button) {
        right: 14px !important;
        bottom: 14px !important;
    }
}


/* ================================
   MOBILE
================================ */

@media (max-width: 767px) {

    .rv-booking-widget .chbs-main {
        padding:
            14px
            14px
            135px !important;

        border-radius: 14px !important;
    }

    .rv-booking-widget .ui-tabs-nav {
        width: 100% !important;

        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
    }

    .rv-booking-widget .ui-tabs-nav li,
    .rv-booking-widget .ui-tabs-nav li a {
        width: 100% !important;
    }


    /* NOTE ABOVE BUTTON */

    .rv-booking-widget .chbs-main::after {
        left: 14px;
        right: 14px;
        bottom: 79px;

        width: auto;

        font-size: 9px;
        line-height: 1.45;
    }


    /* BUTTON FULL WIDTH */

    .rv-booking-widget *:has(> .chbs-button) {
        left: 14px !important;
        right: 14px !important;
        bottom: 14px !important;

        width: auto !important;
    }

    .rv-booking-widget .chbs-button,
    .rv-booking-widget a.chbs-button,
    .rv-booking-widget button.chbs-button {
        width: 100% !important;
        min-height: 48px !important;
    }
}
/* TOP EXTRA SPACE REMOVE */
.rv-booking-widget .chbs-main {
    padding-top: 0px !important;
}

.rv-booking-widget .chbs-main-content,
.rv-booking-widget .chbs-form,
.rv-booking-widget .ui-tabs {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

.rv-booking-widget .ui-tabs-nav {
    margin-top: 0 !important;
}
/* =====================================================
   RENOVATIO VIP BOOKING WIDGET - FINAL MOBILE FIX
===================================================== */
@media (max-width: 767px) {

    /* MAIN CARD */
    .rv-booking-widget .chbs-main {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 14px 14px 18px !important;

        background: rgba(24,39,53,.90) !important;
        border: 1px solid rgba(255,255,255,.12) !important;
        border-radius: 18px !important;

        overflow: hidden !important;
    }

    .rv-booking-widget .chbs-main-content,
    .rv-booking-widget .chbs-form,
    .rv-booking-widget .ui-tabs,
    .rv-booking-widget .ui-tabs-panel {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
    }


    /* =====================================
       TABS - FORCE ONE ROW
    ===================================== */

    .rv-booking-widget .ui-tabs-nav {
        display: flex !important;
        flex-wrap: nowrap !important;
        flex-direction: row !important;
        align-items: center !important;

        width: 100% !important;
        height: 56px !important;

        margin: 0 0 14px !important;
        padding: 5px !important;

        gap: 4px !important;

        background: #091B27 !important;
        border: 0 !important;
        border-radius: 999px !important;

        overflow: hidden !important;
    }

    .rv-booking-widget .ui-tabs-nav > li {
        float: none !important;
        clear: none !important;

        display: block !important;
        flex: 1 1 50% !important;

        width: 50% !important;
        min-width: 0 !important;
        max-width: 50% !important;

        height: 46px !important;

        margin: 0 !important;
        padding: 0 !important;

        position: static !important;

        background: transparent !important;
        border: 0 !important;
    }

    .rv-booking-widget .ui-tabs-nav > li > a {
        float: none !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        width: 100% !important;
        height: 46px !important;

        margin: 0 !important;
        padding: 0 8px !important;

        background: transparent !important;
        border: 0 !important;
        border-radius: 999px !important;

        color: rgba(255,255,255,.72) !important;

        font-size: 13px !important;
        font-weight: 600 !important;
        line-height: 1 !important;
        text-align: center !important;
    }

    .rv-booking-widget .ui-tabs-nav > li.ui-tabs-active > a,
    .rv-booking-widget .ui-tabs-nav > li.ui-state-active > a {
        background: #B99A6C !important;
        color: #101820 !important;
    }


    /* =====================================
       FIELDS
    ===================================== */

    .rv-booking-widget .chbs-form-field {
        position: relative !important;

        width: 100% !important;
        height: auto !important;
        min-height: 92px !important;

        margin: 0 !important;
        padding: 20px 8px 16px !important;

        background: transparent !important;

        border-top: 0 !important;
        border-left: 0 !important;
        border-right: 0 !important;
        border-bottom: 1px solid rgba(255,255,255,.14) !important;

        box-shadow: none !important;
    }

    .rv-booking-widget .chbs-form-field label {
        display: block !important;

        margin: 0 0 12px !important;
        padding: 0 !important;

        color: rgba(255,255,255,.58) !important;

        font-size: 12px !important;
        font-weight: 600 !important;
        line-height: 1.3 !important;
    }

    .rv-booking-widget input,
    .rv-booking-widget select,
    .rv-booking-widget textarea {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;

        color: #fff !important;

        font-size: 16px !important;
        font-weight: 600 !important;
        line-height: 1.4 !important;
    }

    .rv-booking-widget input::placeholder {
        color: rgba(255,255,255,.30) !important;
        opacity: 1 !important;
    }


    /* =====================================
       DATE / TIME - REMOVE HUGE HEIGHT
    ===================================== */

    .rv-booking-widget input[type="date"],
    .rv-booking-widget input[type="time"] {
        min-height: 26px !important;
        height: 26px !important;
    }

    .rv-booking-widget input[type="date"]::-webkit-calendar-picker-indicator,
    .rv-booking-widget input[type="time"]::-webkit-calendar-picker-indicator {
        filter: invert(1) !important;
        opacity: .85 !important;
    }


    /* =====================================
       HIDE UNUSED/HIDDEN PLUGIN FIELDS
    ===================================== */

    .rv-booking-widget .chbs-hidden,
    .rv-booking-widget [style*="display: none"],
    .rv-booking-widget [style*="display:none"] {
        display: none !important;
    }


    /* =====================================
       BUTTON AREA - NORMAL FLOW
    ===================================== */

    .rv-booking-widget *:has(> .chbs-button),
    .rv-booking-widget *:has(> a.chbs-button),
    .rv-booking-widget *:has(> button.chbs-button) {

        position: static !important;

        display: block !important;

        width: 100% !important;
        height: auto !important;

        margin: 0 !important;
        padding: 0 8px !important;

        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }


    /* =====================================
       NOTE - BEFORE BUTTON
    ===================================== */

    .rv-booking-widget .chbs-main::after {
        display: none !important;
        content: none !important;
    }

    .rv-booking-widget *:has(> .chbs-button)::before,
    .rv-booking-widget *:has(> a.chbs-button)::before,
    .rv-booking-widget *:has(> button.chbs-button)::before {
        content:
        "Keine Vorauszahlung, unverbindlich. Sie erhalten einen schriftlichen Festpreis, in der Regel innerhalb einer Stunde.";

        display: block !important;

        width: 100% !important;

        margin: 18px 0 18px !important;
        padding: 0 !important;

        color: rgba(255,255,255,.52) !important;

        font-size: 11px !important;
        font-weight: 400 !important;
        line-height: 1.5 !important;
    }


    /* =====================================
       BUTTON
    ===================================== */

    .rv-booking-widget .chbs-button,
    .rv-booking-widget a.chbs-button,
    .rv-booking-widget button.chbs-button {
        position: static !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;

        height: 58px !important;
        min-height: 58px !important;

        margin: 0 !important;
        padding: 0 20px !important;

        background: #B99A6C !important;
        color: #101820 !important;

        border: 0 !important;
        border-radius: 999px !important;

        box-shadow: none !important;

        font-size: 14px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
    }

}
/* =====================================================
   RENOVATIO VIP - PICKUP TIME DROPDOWN FIX
===================================================== */

/* Time dropdown */
.ui-timepicker-wrapper {
    z-index: 999999 !important;

    max-height: 240px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;

    background: #182735 !important;

    border: 1px solid rgba(255,255,255,.18) !important;
    border-radius: 0 0 10px 10px !important;

    box-shadow: 0 12px 30px rgba(0,0,0,.28) !important;

    box-sizing: border-box !important;
}


/* Time list */
.ui-timepicker-list {
    margin: 0 !important;
    padding: 0 !important;

    background: #182735 !important;

    list-style: none !important;
}


/* Every time option */
.ui-timepicker-list li {
    display: block !important;

    min-height: 42px !important;
    padding: 11px 16px !important;

    background: #182735 !important;
    color: #ffffff !important;

    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;

    font-family: "Roboto", sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 20px !important;

    cursor: pointer !important;
}


/* Hover + selected time */
.ui-timepicker-list li:hover,
.ui-timepicker-list li.ui-timepicker-selected {
    background: #B99A6C !important;
    color: #101820 !important;
}


/* Make pickup/return time input text visible */
.rv-booking-widget input[id*="time"],
.rv-booking-widget input[name*="time"] {
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
}


/* Desktop - don't clip dropdown */
@media (min-width: 768px) {

    .rv-booking-widget,
    .rv-booking-widget .chbs-main,
    .rv-booking-widget .chbs-main-content,
    .rv-booking-widget .chbs-form,
    .rv-booking-widget .ui-tabs,
    .rv-booking-widget .ui-tabs-panel {
        overflow: visible !important;
    }

}


/* Mobile */
@media (max-width: 767px) {

    .ui-timepicker-wrapper {
        max-height: 220px !important;
    }

    .ui-timepicker-list li {
        min-height: 44px !important;
        padding: 12px 14px !important;
        font-size: 15px !important;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1d8f2a2 */@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');


/* =========================
   BENEFITS SECTION
========================= */

.rv-benefits,
.rv-benefits * {
    box-sizing: border-box;
}

.rv-benefits {
    width: 100%;
    margin: 0 !important;
    padding: 50px 0;

    background: #F5F3EF;

    font-family: "Roboto", Arial, sans-serif;
}


/* =========================
   HEADING
========================= */

.rv-benefits-head {
    text-align: center;
    margin: 0 auto;
    padding: 0 20px;
}

.rv-benefits-eyebrow {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;

    color: #8B765B;

    font-size: 12px;
    line-height: 1;
    font-weight: 700;

    letter-spacing: 2.6px;

    margin-bottom: 24px;
}

.rv-benefits-eyebrow span {
    width: 26px;
    height: 2px;
    background: #B99A6C;
    display: inline-block;
}

.rv-benefits-head h2 {
    margin: 0;

    color: #15181C;

    font-size: 48px;
    line-height: 1.08;

    font-weight: 700;
    letter-spacing: -1.7px;
}

.rv-benefits-head p {
    margin: 8px 0 0;

    color: #666666;

    font-size: 19px;
    line-height: 1.55;

    font-weight: 400;
}


/* =========================
   GRID
========================= */

.rv-benefits-grid {
    max-width: 1136px;

    margin: 62px auto 0;

    padding: 0 20px;

    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 28px;
}


/* =========================
   CARD
========================= */

.rv-benefit-card {
    position: relative;

    min-height: 260px;

    padding: 30px 27px;

    background: #FBFAF7;

    border: 1px solid rgba(255, 255, 255, 0.95);

    border-radius: 22px;

    box-shadow:
        0 16px 35px rgba(22, 24, 28, 0.08);

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease,
        background-color .35s ease;

    overflow: hidden;
}


/* GOLD TOP LINE ON HOVER */

.rv-benefit-card::before {
    content: "";

    position: absolute;
    left: 0;
    top: 0;

    width: 100%;
    height: 3px;

    background: #B99A6C;

    transform: scaleX(0);
    transform-origin: left;

    transition: transform .35s ease;
}


/* =========================
   ICON
========================= */

.rv-benefit-icon {
    width: 53px;
    height: 53px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 22px;

    border-radius: 12px;

    background: #B99A6C;

    color: #15181C;

    transition:
        background-color .3s ease,
        color .3s ease,
        transform .3s ease;
}

.rv-benefit-icon svg {
    width: 25px;
    height: 25px;
}


/* =========================
   TEXT
========================= */

.rv-benefit-card h3 {
    margin: 0 0 11px;

    color: #15181C;

    font-size: 18px;
    line-height: 1.25;

    font-weight: 700;
}

.rv-benefit-card p {
    margin: 0;

    color: #686868;

    font-size: 15px;
    line-height: 1.65;

    font-weight: 400;
}


/* =========================
   CARD HOVER
========================= */

.rv-benefit-card:hover {
    transform: translateY(-10px);

    border-color: rgba(185, 154, 108, 0.45);

    background: #FFFFFF;

    box-shadow:
        0 25px 50px rgba(22, 24, 28, 0.14);
}

.rv-benefit-card:hover::before {
    transform: scaleX(1);
}

.rv-benefit-card:hover .rv-benefit-icon {
    background: #343940;
    color: #B99A6C;

    transform: translateY(-3px);
}


/* =========================
   TABLET
========================= */

@media (max-width: 1024px) {

    .rv-benefits-head h2 {
        font-size: 40px;
    }

    .rv-benefits-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}


/* =========================
   MOBILE
========================= */

@media (max-width: 767px) {

    .rv-benefits {
        padding: 40px 0;
    }

    .rv-benefits-head h2 {
        font-size: 32px;
        line-height: 1.15;
        letter-spacing: -1px;
    }

    .rv-benefits-head h2 br,
    .rv-benefits-head p br {
        display: none;
    }

    .rv-benefits-head p {
        font-size: 16px;
    }

    .rv-benefits-grid {
        margin-top: 40px;

        grid-template-columns: 1fr;

        gap: 18px;
    }

    .rv-benefit-card {
        min-height: auto;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fe0132f */@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');


/* =========================
   SECTION
========================= */

.rv-complex-request,
.rv-complex-request * {
    box-sizing: border-box;
}

.rv-complex-request {
    width: 100%;
    margin: 0 !important;
    padding: 28px 48px 34px;

    background: #F5F3EF;

    font-family: "Roboto", Arial, sans-serif;
}

.rv-complex-inner {
    width: 100%;
    max-width: 620px;
}


/* =========================
   EYEBROW
========================= */

.rv-complex-eyebrow {
    display: flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 22px;

    color: #8B765B;

    font-size: 12px;
    line-height: 1;
    font-weight: 700;

    letter-spacing: 2px;
}

.rv-complex-eyebrow span {
    width: 25px;
    height: 2px;

    display: inline-block;

    background: #B99A6C;
}


/* =========================
   HEADING
========================= */

.rv-complex-inner h2 {
    margin: 0;

    color: #15181C;

    font-size: 47px;
    line-height: 1.08;

    font-weight: 700;
    letter-spacing: -1.8px;
}


/* =========================
   DESCRIPTION
========================= */

.rv-complex-intro {
    max-width: 590px;

    margin: 8px 0 0 !important;

    color: #686868;

    font-size: 18px;
    line-height: 1.65;

    font-weight: 400;
}


/* =========================
   LIST
========================= */

.rv-complex-list {
    margin: 25px 0 0 !important;
    padding: 0;

    list-style: none;
}

.rv-complex-list li {
    display: flex;
    align-items: flex-start;
    gap: 14px;

    margin-bottom: 17px;

    color: #666666;

    font-size: 15px;
    line-height: 1.5;
}

.rv-check {
    color: #B99A6C;

    font-size: 21px;
    line-height: 1;

    font-weight: 400;

    flex-shrink: 0;
}


/* =========================
   BUTTONS
========================= */

.rv-complex-actions {
    display: flex;
    align-items: center;
    gap: 14px;

    margin-top: 28px;
}

.rv-btn {
    min-height: 58px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;

    padding: 0 30px;

    border-radius: 40px;

    text-decoration: none;

    font-size: 14px;
    font-weight: 700;

    transition: all .28s ease;
}


/* DARK BUTTON */

.rv-btn-dark {
    background: #111A23;

    color: #FFFFFF;

    border: 1px solid #111A23;
}

.rv-btn-dark svg {
    width: 20px;
    height: 20px;
}

.rv-btn-dark:hover {
    background: #B99A6C;

    color: #15181C;

    border-color: #B99A6C;

    transform: translateY(-2px);
}


/* OUTLINE BUTTON */

.rv-btn-outline {
    background: transparent;

    color: #8B765B;

    border: 1.5px solid #B99A6C;
}

.rv-btn-outline:hover {
    background: #B99A6C;

    color: #15181C;

    transform: translateY(-2px);
}


/* =========================
   TABLET
========================= */

@media (max-width: 1024px) {

    .rv-complex-request {
        padding: 35px 30px;
    }

    .rv-complex-inner h2 {
        font-size: 40px;
    }

}


/* =========================
   MOBILE
========================= */

@media (max-width: 767px) {

    .rv-complex-request {
        padding: 30px 20px;
    }

    .rv-complex-inner h2 {
        font-size: 32px;
        line-height: 1.12;
        letter-spacing: -1px;
    }

    .rv-complex-inner h2 br {
        display: none;
    }

    .rv-complex-intro {
        font-size: 16px;
        line-height: 1.6;
    }

    .rv-complex-list li {
        font-size: 14px;
    }

    .rv-complex-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .rv-btn {
        width: 100%;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-be1df74 */@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-fdc5ee1 */@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');

.rv-fleet-intro,
.rv-fleet-intro * {
    box-sizing: border-box;
}

.rv-fleet-intro {
    width: 100%;
    margin: 0 !important;
    padding: 58px 20px 50px;

    background: #F5F3EF;

    font-family: "Roboto", Arial, sans-serif;
}

.rv-fleet-intro-inner {
    width: 100%;
    max-width: 1150px;

    margin: 0 auto;

    text-align: center;
}


/* EYEBROW */

.rv-fleet-eyebrow {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    margin-bottom: 24px;

    color: #8B765B;

    font-size: 12px;
    line-height: 1;

    font-weight: 700;

    letter-spacing: 2.3px;
}

.rv-fleet-eyebrow span {
    width: 25px;
    height: 2px;

    display: inline-block;

    background: #B99A6C;
}


/* HEADING */

.rv-fleet-intro h2 {
    margin: 0;

    color: #15181C;

    font-size: 47px;
    line-height: 1.08;

    font-weight: 700;

    letter-spacing: -1.6px;
}


/* DESCRIPTION */

.rv-fleet-intro p {
    margin: 8px 0 0 !important;

    color: #686868;

    font-size: 18px;
    line-height: 1.65;

    font-weight: 400;
}


/* TABLET */

@media (max-width: 1024px) {

    .rv-fleet-intro h2 {
        font-size: 40px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .rv-fleet-intro {
        padding: 42px 18px 38px;
    }

    .rv-fleet-intro h2 {
        font-size: 32px;
        line-height: 1.15;

        letter-spacing: -1px;
    }

    .rv-fleet-intro h2 br,
    .rv-fleet-intro p br {
        display: none;
    }

    .rv-fleet-intro p {
        font-size: 16px;
        line-height: 1.6;
    }

    .rv-fleet-eyebrow {
        margin-bottom: 20px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-03a6f99 */@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;600;700&display=swap');


/* =========================
   SECTION
========================= */

.rv-fleet-grid-section,
.rv-fleet-grid-section * {
    box-sizing: border-box;
}

.rv-fleet-grid-section {
    width: 100%;
    margin: 0 !important;
    padding: 0 20px 45px;

    /* NO BACKGROUND */
    background: transparent !important;

    font-family: "Roboto", Arial, sans-serif;
}


/* =========================
   GRID
========================= */

.rv-fleet-grid {
    width: 100%;
    max-width: 1160px;

    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 30px;
}


/* =========================
   CARD
========================= */

.rv-fleet-card {
    display: block;

    min-width: 0;

    overflow: hidden;

    background: #FBFAF7;

    border: 1px solid rgba(30, 35, 40, .05);

    border-radius: 21px;

    color: #16191D;

    text-decoration: none !important;

    box-shadow:
        0 12px 30px rgba(26, 30, 34, .08);

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;
}


/* =========================
   IMAGE
========================= */

.rv-fleet-image {
    position: relative;

    width: 100%;
    height: 228px;

    overflow: hidden;

    background: #fff;
}

.rv-fleet-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transition: transform .45s ease;
}


/* =========================
   BADGE
========================= */

.rv-fleet-badge {
    position: absolute;

    top: 15px;
    left: 15px;

    z-index: 2;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 31px;

    padding: 0 16px;

    border-radius: 20px;

    background: #4A5056;

    color: #fff;

    font-size: 11px;
    line-height: 1;

    font-weight: 700;

    letter-spacing: 1px;
}

.rv-fleet-badge-gold {
    background: #B99A6C;
    color: #17191C;
}


/* =========================
   CONTENT
========================= */

.rv-fleet-content {
    padding: 25px 25px 22px;
}

.rv-fleet-content h3 {
    margin: 0 0 10px !important;

    color: #15181C;

    font-size: 18px;
    line-height: 1.3;

    font-weight: 700;
}

.rv-fleet-content > p {
    min-height: 54px;

    margin: 0 !important;

    color: #686868;

    font-size: 14px;
    line-height: 1.6;

    font-weight: 400;
}


/* =========================
   DIVIDER
========================= */

.rv-fleet-divider {
    width: 100%;
    height: 1px;

    margin: 19px 0 17px;

    background: #E6E1D9;
}


/* =========================
   SPECS
========================= */

.rv-fleet-specs {
    display: flex;
    flex-wrap: wrap;

    gap: 17px 19px;
}

.rv-fleet-specs span {
    display: inline-flex;
    align-items: center;

    gap: 7px;

    color: #202326;

    font-size: 13px;
    line-height: 1.3;

    font-weight: 500;
}

.rv-fleet-specs svg {
    width: 17px;
    height: 17px;

    flex-shrink: 0;

    fill: none;

    stroke: #B99A6C;

    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


/* Last spec moves onto second line naturally */
.rv-fleet-specs span:last-child {
    flex-basis: 100%;
}


/* =========================
   HOVER
========================= */

.rv-fleet-card:hover {
    transform: translateY(-8px);

    border-color: rgba(185,154,108,.45);

    box-shadow:
        0 22px 44px rgba(26,30,34,.14);
}

.rv-fleet-card:hover .rv-fleet-image img {
    transform: scale(1.04);
}


/* subtle gold line */

.rv-fleet-card {
    position: relative;
}

.rv-fleet-card::after {
    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 100%;
    height: 3px;

    background: #B99A6C;

    transform: scaleX(0);
    transform-origin: left;

    transition: transform .35s ease;
}

.rv-fleet-card:hover::after {
    transform: scaleX(1);
}


/* =========================
   TABLET
========================= */

@media (max-width: 1024px) {

    .rv-fleet-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

}


/* =========================
   MOBILE
========================= */

@media (max-width: 767px) {

    .rv-fleet-grid-section {
        padding: 0 16px 35px;
    }

    .rv-fleet-grid {
        grid-template-columns: 1fr;

        gap: 20px;
    }

    .rv-fleet-image {
        height: 225px;
    }

    .rv-fleet-content {
        padding: 22px 21px 20px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2a2907a */@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');

.rv-wine-tour,
.rv-wine-tour * {
    box-sizing: border-box;
}

.rv-wine-tour {
    width: 100%;
    margin: 0 !important;
    padding: 34px 36px 40px;

    background: transparent;

    font-family: "Roboto", Arial, sans-serif;
}

.rv-wine-tour-inner {
    width: 100%;
    max-width: 620px;
}


/* EYEBROW */

.rv-wine-eyebrow {
    display: flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 20px;

    color: #8B765B;

    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.rv-wine-eyebrow span {
    width: 25px;
    height: 2px;

    display: inline-block;

    background: #B99A6C;
}


/* HEADING */

.rv-wine-tour h2 {
    margin: 0;

    color: #15181C;

    font-size: 46px;
    line-height: 1.12;

    font-weight: 700;

    letter-spacing: -1.4px;
}


/* INTRO */

.rv-wine-intro {
    margin: 8px 0 0 !important;

    color: #686868;

    font-size: 18px;
    line-height: 1.65;

    font-weight: 400;
}


/* LIST */

.rv-wine-list {
    margin: 26px 0 0 !important;
    padding: 0;

    list-style: none;
}

.rv-wine-list li {
    display: flex;
    align-items: flex-start;
    gap: 14px;

    margin-bottom: 18px;

    color: #666666;

    font-size: 15px;
    line-height: 1.45;
}

.rv-wine-check {
    color: #B99A6C;

    font-size: 21px;
    line-height: 1;

    flex-shrink: 0;
}


/* BUTTON */

.rv-wine-btn {
    min-height: 58px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 13px;

    margin-top: 20px;

    padding: 0 30px;

    border-radius: 40px;

    background: #111A23;

    color: #FFFFFF;

    text-decoration: none;

    font-size: 14px;
    font-weight: 700;

    transition: all .28s ease;
}

.rv-wine-btn span {
    font-size: 20px;

    transition: transform .28s ease;
}

.rv-wine-btn:hover {
    background: #B99A6C;
    color: #15181C;

    transform: translateY(-2px);
}

.rv-wine-btn:hover span {
    transform: translateX(5px);
}


/* TABLET */

@media (max-width: 1024px) {

    .rv-wine-tour h2 {
        font-size: 40px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .rv-wine-tour {
        padding: 30px 20px 35px;
    }

    .rv-wine-tour h2 {
        font-size: 32px;
        line-height: 1.15;
    }

    .rv-wine-tour h2 br {
        display: none;
    }

    .rv-wine-intro {
        font-size: 16px;
    }

    .rv-wine-list li {
        font-size: 14px;
    }

    .rv-wine-btn {
        width: 100%;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-9e13f0e */@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');

.rv-childseat,
.rv-childseat * {
    box-sizing: border-box;
}

.rv-childseat {
    width: 100%;
    margin: 0 !important;
    padding: 32px 48px 36px;

    background: transparent;

    font-family: "Roboto", Arial, sans-serif;
}

.rv-childseat-inner {
    width: 100%;
    max-width: 620px;
}


/* EYEBROW */

.rv-childseat-eyebrow {
    display: flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 22px;

    color: #8B765B;

    font-size: 12px;
    line-height: 1;

    font-weight: 700;

    letter-spacing: 2px;
}

.rv-childseat-eyebrow span {
    width: 25px;
    height: 2px;

    display: inline-block;

    background: #B99A6C;
}


/* HEADING */

.rv-childseat h2 {
    margin: 0;

    color: #15181C;

    font-size: 46px;
    line-height: 1.1;

    font-weight: 700;

    letter-spacing: -1.5px;
}


/* INTRO */

.rv-childseat-intro {
    margin: 8px 0 0 !important;

    color: #686868;

    font-size: 18px;
    line-height: 1.65;

    font-weight: 400;
}


/* LIST */

.rv-childseat-list {
    margin: 28px 0 0 !important;
    padding: 0;

    list-style: none;
}

.rv-childseat-list li {
    display: flex;
    align-items: flex-start;
    gap: 14px;

    margin-bottom: 18px;

    color: #666666;

    font-size: 15px;
    line-height: 1.5;
}

.rv-childseat-check {
    color: #B99A6C;

    font-size: 21px;
    line-height: 1;

    flex-shrink: 0;
}


/* NOTE */

.rv-childseat-note {
    margin: 28px 0 0 !important;

    color: #777777;

    font-size: 14px;
    line-height: 1.6;
}


/* TABLET */

@media (max-width: 1024px) {

    .rv-childseat h2 {
        font-size: 40px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .rv-childseat {
        padding: 28px 20px 32px;
    }

    .rv-childseat h2 {
        font-size: 32px;
        line-height: 1.15;
        letter-spacing: -1px;
    }

    .rv-childseat h2 br {
        display: none;
    }

    .rv-childseat-intro {
        font-size: 16px;
        line-height: 1.6;
    }

    .rv-childseat-list li {
        font-size: 14px;
    }

    .rv-childseat-note {
        font-size: 13px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c1540d1 */@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');

.rv-trust-intro,
.rv-trust-intro * {
    box-sizing: border-box;
}

.rv-trust-intro {
    width: 100%;
    margin: 0 !important;
    padding: 56px 20px 46px;

    background: transparent;

    font-family: "Roboto", Arial, sans-serif;
}

.rv-trust-inner {
    width: 100%;
    max-width: 1100px;

    margin: 0 auto;

    text-align: center;
}


/* EYEBROW */

.rv-trust-eyebrow {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    margin-bottom: 22px;

    color: #8B765B;

    font-size: 12px;
    line-height: 1;

    font-weight: 700;

    letter-spacing: 2px;
}

.rv-trust-eyebrow span {
    width: 25px;
    height: 2px;

    display: inline-block;

    background: #B99A6C;
}


/* HEADING */

.rv-trust-inner h2 {
    margin: 0;

    color: #15181C;

    font-size: 46px;
    line-height: 1.1;

    font-weight: 700;

    letter-spacing: -1.5px;
}


/* TEXT */

.rv-trust-inner p {
    margin: 8px 0 0 !important;

    color: #686868;

    font-size: 18px;
    line-height: 1.65;

    font-weight: 400;
}


/* TABLET */

@media (max-width: 1024px) {

    .rv-trust-inner h2 {
        font-size: 40px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .rv-trust-intro {
        padding: 40px 18px 36px;
    }

    .rv-trust-inner h2 {
        font-size: 32px;
        line-height: 1.15;
        letter-spacing: -1px;
    }

    .rv-trust-inner p {
        font-size: 16px;
        line-height: 1.6;
    }

    .rv-trust-inner p br {
        display: none;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-27d8f72 */@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');


.rv-trust-cards,
.rv-trust-cards * {
    box-sizing: border-box;
}

.rv-trust-cards {
    width: 100%;
    margin: 0 !important;
    padding: 0 20px 42px;

    background: transparent;

    font-family: "Roboto", Arial, sans-serif;
}


/* =========================
   GRID
========================= */

.rv-trust-grid {
    width: 100%;
    max-width: 1135px;

    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 30px;
}


/* =========================
   CARD
========================= */

.rv-trust-card {
    min-height: 205px;

    padding: 28px 26px;

    background: #FBFAF7;

    border: 1px solid rgba(255,255,255,.95);

    border-radius: 19px;

    box-shadow:
        0 12px 30px rgba(20,25,30,.07);

    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}


/* NUMBER */

.rv-trust-number {
    display: block;

    margin-bottom: 15px;

    color: #8B765B;

    font-size: 11px;
    line-height: 1;

    font-weight: 700;

    letter-spacing: 1.5px;
}


/* TITLE */

.rv-trust-card h3 {
    margin: 0 0 10px !important;

    color: #15181C;

    font-size: 17px;
    line-height: 1.25;

    font-weight: 700;
}


/* TEXT */

.rv-trust-card p {
    margin: 0 !important;

    color: #686868;

    font-size: 14px;
    line-height: 1.65;

    font-weight: 400;
}


/* =========================
   HOVER
========================= */

.rv-trust-card:hover {
    transform: translateY(-5px);

    border-color: #B99A6C;

    box-shadow:
        0 18px 38px rgba(20,25,30,.11);
}


/* =========================
   GOOGLE REVIEW BOX
========================= */

.rv-google-review {
    width: 100%;
    max-width: 760px;

    margin: 62px auto 0;

    padding: 25px 40px;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 45px;

    background: #FBFAF7;

    border: 1px solid rgba(255,255,255,.95);

    border-radius: 20px;

    box-shadow:
        0 12px 30px rgba(20,25,30,.07);
}


/* SCORE */

.rv-review-score {
    min-width: 115px;
}

.rv-stars {
    margin-bottom: 3px;

    color: #B99A6C;

    font-size: 19px;
    line-height: 1;

    letter-spacing: 1px;

    white-space: nowrap;
}

.rv-review-score strong {
    display: block;

    color: #111A23;

    font-size: 42px;
    line-height: 1;

    font-weight: 700;
}


/* REVIEW TEXT */

.rv-review-text h4 {
    margin: 0 0 7px !important;

    color: #15181C;

    font-size: 15px;
    font-weight: 700;
}

.rv-review-text p {
    margin: 0 0 7px !important;

    color: #777777;

    font-size: 13px;
    line-height: 1.4;
}

.rv-review-text a {
    color: #15181C;

    text-decoration: none;

    font-size: 13px;
    font-weight: 700;

    transition: color .25s ease;
}

.rv-review-text a:hover {
    color: #B99A6C;
}


/* NOTE */

.rv-review-note {
    margin: 14px auto 0 !important;

    text-align: center;

    color: #777777;

    font-size: 12px;
    line-height: 1.5;
}


/* =========================
   TABLET
========================= */

@media (max-width: 1024px) {

    .rv-trust-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}


/* =========================
   MOBILE
========================= */

@media (max-width: 767px) {

    .rv-trust-cards {
        padding: 0 16px 35px;
    }

    .rv-trust-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .rv-trust-card {
        min-height: auto;
        padding: 24px 22px;
    }

    .rv-google-review {
        margin-top: 40px;

        padding: 24px;

        flex-direction: column;

        align-items: flex-start;

        gap: 18px;
    }

    .rv-review-score strong {
        font-size: 38px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-50a8b3e */@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-13e24af */@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-0fce2e3 */@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 */
/* Start custom CSS for html, class: .elementor-element-ddf6e31 */@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');

.rv-contact-intro,
.rv-contact-intro * {
    box-sizing: border-box;
}

.rv-contact-intro {
    width: 100%;
    margin: 0 !important;
    padding: 56px 20px 44px;

    background: transparent;

    font-family: "Roboto", Arial, sans-serif;
}

.rv-contact-intro-inner {
    width: 100%;
    max-width: 1120px;

    margin: 0 auto;

    text-align: center;
}


/* EYEBROW */

.rv-contact-eyebrow {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    margin-bottom: 22px;

    color: #8B765B;

    font-size: 12px;
    line-height: 1;

    font-weight: 700;

    letter-spacing: 2px;
}

.rv-contact-eyebrow span {
    width: 25px;
    height: 2px;

    display: inline-block;

    background: #B99A6C;
}


/* HEADING */

.rv-contact-intro h2 {
    margin: 0;

    color: #15181C;

    font-size: 46px;
    line-height: 1.08;

    font-weight: 700;

    letter-spacing: -1.5px;
}


/* TEXT */

.rv-contact-intro p {
    margin: 8px 0 0 !important;

    color: #686868;

    font-size: 18px;
    line-height: 1.65;

    font-weight: 400;
}


/* TABLET */

@media (max-width: 1024px) {

    .rv-contact-intro h2 {
        font-size: 40px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .rv-contact-intro {
        padding: 40px 18px 34px;
    }

    .rv-contact-intro h2 {
        font-size: 32px;
        line-height: 1.15;

        letter-spacing: -1px;
    }

    .rv-contact-intro p {
        font-size: 16px;
        line-height: 1.6;
    }

    .rv-contact-intro p br {
        display: none;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-870e92c */@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');

.rv-contact-list,
.rv-contact-list * {
    box-sizing: border-box;
}

.rv-contact-list {
    width: 100%;
    margin: 0 !important;
    padding: 0;

    display: flex;
    flex-direction: column;
    gap: 14px;

    background: transparent;

    font-family: "Roboto", Arial, sans-serif;
}


/* CARD */

.rv-contact-item {
    width: 100%;
    min-height: 88px;

    display: flex;
    align-items: center;

    padding: 16px 22px;

    background: #FBFAF7;

    border: 1px solid rgba(255,255,255,.95);
    border-radius: 20px;

    box-shadow:
        0 10px 26px rgba(20,25,30,.07);

    transition:
        border-color .3s ease,
        transform .3s ease,
        box-shadow .3s ease;
}


/* ICON */

.rv-contact-icon {
    width: 48px;
    height: 48px;

    min-width: 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-right: 18px;

    border-radius: 13px;

    background: #F0EFEC;

    color: #747474;

    transition:
        background-color .3s ease,
        color .3s ease,
        transform .3s ease;
}

.rv-contact-icon svg {
    width: 22px;
    height: 22px;

    display: block;

    fill: none;
    stroke: currentColor;

    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}


/* TEXT */

.rv-contact-copy {
    flex: 1;
    min-width: 0;
}

.rv-contact-copy h3 {
    margin: 0 0 4px !important;

    color: #15181C;

    font-size: 16px;
    line-height: 1.25;

    font-weight: 700;
}

.rv-contact-copy p {
    margin: 0 !important;

    color: #757575;

    font-size: 14px;
    line-height: 1.45;

    font-weight: 400;
}

.rv-contact-copy strong {
    display: block;

    margin-top: 6px;

    color: #9A7E56;

    font-size: 13px;
    line-height: 1.4;

    font-weight: 700;
}


/* HOVER */

.rv-contact-item:hover {
    border-color: #B99A6C;

    transform: translateY(-3px);

    box-shadow:
        0 16px 34px rgba(20,25,30,.10);
}

.rv-contact-item:hover .rv-contact-icon {
    background: #B99A6C;
    color: #15181C;
    transform: scale(1.03);
}


/* MOBILE */

@media (max-width: 767px) {

    .rv-contact-list {
        gap: 12px;
    }

    .rv-contact-item {
        padding: 14px 16px;
        border-radius: 17px;
    }

    .rv-contact-icon {
        width: 44px;
        height: 44px;

        min-width: 44px;

        margin-right: 14px;
    }

    .rv-contact-icon svg {
        width: 20px;
        height: 20px;
    }

    .rv-contact-copy h3 {
        font-size: 15px;
    }

    .rv-contact-copy p {
        font-size: 13px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-992c99d */@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;600;700&display=swap');


.rv-contact-form-card,
.rv-contact-form-card * {
    box-sizing: border-box;
}


.rv-contact-form-card {
    width: 100%;
    margin: 0 !important;

    padding: 38px;

    background: #FBFAF7;

    border: 1px solid rgba(255,255,255,.95);

    border-radius: 22px;

    box-shadow:
        0 15px 40px rgba(20,25,30,.08);

    font-family: "Roboto", Arial, sans-serif;
}


/* HEADER */

.rv-contact-form-card h3 {
    margin: 0 0 6px !important;

    color: #15181C;

    font-size: 25px;
    line-height: 1.2;

    font-weight: 700;
}


.rv-form-intro {
    margin: 0 0 27px !important;

    color: #696969;

    font-size: 14px;
    line-height: 1.5;
}


/* GRID */

.rv-form-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 20px 17px;
}


.rv-full {
    grid-column: 1 / -1;
}


/* LABEL */

.rv-field label,
.rv-topics-label {
    display: block;

    margin-bottom: 9px;

    color: #77736D;

    font-size: 11px;
    line-height: 1;

    font-weight: 700;

    letter-spacing: 1.4px;
}


/* INPUTS */

.rv-field input,
.rv-field textarea {
    width: 100%;

    margin: 0 !important;

    border: 1px solid #8F897F;

    background: #FFFFFF;

    color: #15181C;

    outline: none;

    font-family: inherit;

    box-shadow: none !important;

    transition:
        border-color .25s ease,
        box-shadow .25s ease;
}


.rv-field input {
    height: 53px;

    padding: 0 15px;

    border-radius: 13px;
}


.rv-field textarea {
    min-height: 120px;

    padding: 15px;

    border-radius: 13px;

    resize: vertical;

    font-size: 15px;

    line-height: 1.6;
}


.rv-field input:focus,
.rv-field textarea:focus {
    border-color: #B99A6C;

    box-shadow:
        0 0 0 3px rgba(185,154,108,.12) !important;
}


/* TOPICS */

.rv-topics {
    margin-top: 27px;
}


.rv-topic-row {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 8px;
}


.rv-topic {
    min-height: 44px;

    margin: 0 !important;

    padding: 9px 11px;

    display: flex;

    align-items: center;

    justify-content: center;

    text-align: center;

    border: 1px solid #E1DCD4;

    border-radius: 11px;

    background: #FFFFFF;

    color: #1D2023;

    font-family: inherit;

    font-size: 12px;

    line-height: 1.3;

    font-weight: 600;

    cursor: pointer;

    box-shadow:
        0 3px 8px rgba(20,25,30,.04);

    transition:
        background-color .25s ease,
        color .25s ease,
        border-color .25s ease,
        transform .25s ease;
}


.rv-topic:hover {
    border-color: #B99A6C;

    transform: translateY(-1px);
}


.rv-topic.is-active {
    background: #B99A6C;

    border-color: #B99A6C;

    color: #15181C;
}


/* SECONDARY OPTIONS */

.rv-topic-step {
    margin-top: 12px;

    padding: 17px 15px 15px;

    border: 1px solid #E5E0D8;

    border-radius: 13px;

    background: rgba(255,255,255,.30);
}


.rv-step-title {
    display: block;

    margin-bottom: 12px;

    color: #25282B;

    font-size: 12px;

    font-weight: 700;
}


.rv-topic-step[hidden] {
    display: none !important;
}


/* FAIR */

.rv-dated {
    min-height: 59px;

    flex-direction: column;
}


.rv-dated strong {
    display: block;

    font-size: 12px;

    font-weight: 700;
}


.rv-dated small {
    display: block;

    margin-top: 3px;

    color: #777;

    font-size: 10px;

    line-height: 1.3;
}


.rv-dated.is-active small {
    color: #332B20;
}


/* MESSAGE */

.rv-message-field {
    margin-top: 22px;
}


/* CONSENT */

.rv-consent {
    display: flex;

    align-items: flex-start;

    gap: 12px;

    margin-top: 20px;
}


.rv-consent input {
    width: 17px;
    height: 17px;

    margin: 2px 0 0;

    flex-shrink: 0;

    accent-color: #B99A6C;
}


.rv-consent span {
    color: #747474;

    font-size: 13px;

    line-height: 1.6;
}


/* HCAPTCHA */

.rv-captcha-wrap {
    width: 100%;
    margin: 22px 0 0;
    overflow: visible;
}

.rv-captcha-wrap .h-captcha {
    display: block;
    max-width: 100%;
}


/* SUBMIT */

.rv-send-button {
    width: 100%;

    min-height: 58px;

    margin: 28px 0 0 !important;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 11px;

    border: 1px solid #101820;

    border-radius: 35px;

    background: #101820;

    color: #FFFFFF;

    font-family: inherit;

    font-size: 14px;

    font-weight: 700;

    cursor: pointer;

    transition: .3s ease;
}


.rv-send-button svg {
    width: 20px;
    height: 20px;

    stroke-width: 2;
}


.rv-send-button:hover {
    background: #B99A6C;

    border-color: #B99A6C;

    color: #15181C;
}


.rv-send-button:disabled {
    opacity: .72;
    cursor: not-allowed;
}


/* STATUS */

.rv-form-status {
    display: none;

    margin-top: 14px;

    font-size: 13px;

    line-height: 1.5;
}


.rv-form-status.success {
    display: block;

    color: #527142;
}


.rv-form-status.error {
    display: block;

    color: #B24E4E;
}


.rv-sr-only {
    position: absolute !important;

    width: 1px;

    height: 1px;

    opacity: 0;

    pointer-events: none;
}


/* TABLET */

@media (max-width: 900px) {

    .rv-topic-row {
        grid-template-columns:
            repeat(2, minmax(0,1fr));
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .rv-contact-form-card {
        padding: 25px 18px;

        border-radius: 18px;
    }


    .rv-form-grid {
        grid-template-columns: 1fr;
    }


    .rv-full {
        grid-column: auto;
    }


    .rv-topic-row {
        grid-template-columns:
            repeat(2, minmax(0,1fr));
    }

    .rv-captcha-wrap {
        margin-top: 18px;
    }

}


@media (max-width: 480px) {

    .rv-topic-row {
        grid-template-columns: 1fr;
    }

}


/* Very narrow phones: keep the hCaptcha inside the card */

@media (max-width: 360px) {

    .rv-captcha-wrap {
        width: 108%;
        transform: scale(.92);
        transform-origin: left top;
        margin-bottom: -6px;
    }

}


/* =========================================
   FIX: LABELS + INPUT OUTLINE
========================================= */

.rv-contact-form-card .rv-field label {
    display: block !important;
    color: #6f6a63 !important;
    opacity: 1 !important;
    visibility: visible !important;

    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 1.4px !important;

    margin-bottom: 9px !important;
}


/* Inputs clearly visible */
.rv-contact-form-card .rv-field input,
.rv-contact-form-card .rv-field textarea {
    background: #ffffff !important;

    border: 1.5px solid #8f897f !important;
    outline: none !important;

    color: #15181c !important;

    box-shadow: none !important;
}


/* Input focus */
.rv-contact-form-card .rv-field input:focus,
.rv-contact-form-card .rv-field textarea:focus {
    border-color: #b99a6c !important;

    outline: 2px solid rgba(185, 154, 108, 0.16) !important;
    outline-offset: 1px !important;

    box-shadow: none !important;
}


/* =========================================
   FIX: TOPIC BUTTON COLORS
========================================= */

.rv-contact-form-card button.rv-topic {
    background: #ffffff !important;
    color: #1d2023 !important;

    border: 1px solid #e1dcd4 !important;

    box-shadow: 0 3px 8px rgba(20,25,30,.04) !important;
}


/* HOVER - NO BLUE */
.rv-contact-form-card button.rv-topic:hover,
.rv-contact-form-card button.rv-topic:focus,
.rv-contact-form-card button.rv-topic:focus-visible {
    background: #b99a6c !important;
    color: #15181c !important;

    border-color: #b99a6c !important;

    outline: none !important;

    box-shadow: none !important;
}


/* SELECTED BUTTON */
.rv-contact-form-card button.rv-topic.is-active {
    background: #b99a6c !important;
    color: #15181c !important;

    border-color: #b99a6c !important;

    box-shadow: none !important;
}


/* Keep selected button gold even on hover */
.rv-contact-form-card button.rv-topic.is-active:hover,
.rv-contact-form-card button.rv-topic.is-active:focus {
    background: #b99a6c !important;
    color: #15181c !important;

    border-color: #b99a6c !important;
}


/* =========================================
   SEND BUTTON - PREVENT THEME BLUE
========================================= */

.rv-contact-form-card .rv-send-button {
    background: #101820 !important;
    color: #ffffff !important;

    border-color: #101820 !important;
}


/* Send button hover */
.rv-contact-form-card .rv-send-button:hover,
.rv-contact-form-card .rv-send-button:focus {
    background: #b99a6c !important;
    color: #15181c !important;

    border-color: #b99a6c !important;

    outline: none !important;
}/* End custom CSS */