@charset "UTF-8";
@import url(main.css);
#tally-duplication-form-section { padding-top: 0 !important; }

@media (max-width: 1000px) { .polaroid { display: none; } }

.polaroid { --scroll-y: 0px; --float-y: 0px; --float-r: 0deg; will-change: transform; animation: polaroidFloat 6s ease-in-out infinite; transform: translateY(calc(var(--scroll-y) + var(--float-y))) rotate(var(--float-r)); }

.polaroid:nth-of-type(2n) { animation-duration: 7.5s; animation-delay: -1.4s; }

.polaroid:nth-of-type(3n) { animation-duration: 8.5s; animation-delay: -2.2s; }

@keyframes polaroidFloat { 0%, 100% { --float-y: -10px;
    --float-r: -0.6deg; }
  50% { --float-y: 10px;
    --float-r: 0.6deg; } }

/*------------Bloc actu------------------------------*/
#news-posts-bloc { margin-top: 150px !important; margin-bottom: 150px !important; }

/**********************************AJUSTEMENTS SEO********************************/
.first-activity-div h2, .second-activity-div h2, .third-activity-div h2 { color: #3357b7; text-transform: uppercase; letter-spacing: 0.055em; line-height: 1.12; font-weight: 400; }

.first-activity-div p, .second-activity-div p, .third-activity-div p { color: #3357b7; line-height: 1.85; letter-spacing: 0.01em; }

div:has(> .first-activity-div) { padding: 100px 0; position: relative; }

div:has(> .first-activity-div)::before { content: ""; position: absolute; left: -2vw; top: 0; transform: translateY(-50%); z-index: 999; width: 50%; height: 200px; pointer-events: none; background-image: url(https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FMENeXSmasnMPiSmHKQUXsusQ5xf1%2Fimages%2FCharte_graphique_3_v4bk.webp); background-repeat: no-repeat; background-size: contain; background-position: top left; opacity: 0.65; }

#navbarSupportedContent > ul > li.dropdown.px-4 > div > a:nth-child(1) { font-size: 0.8em !important; color: #3357b7 !important; }

#navbarSupportedContent > ul > li.dropdown.px-4 > div > ul a { transition: all 0.5s ease; font-size: 0.8rem !important; }

.first-banner-seo-page .background-image-div-opacity { background-image: url("https://firebasestorage.googleapis.com/v0/b/refpro-app-ca244.appspot.com/o/customers%2FMENeXSmasnMPiSmHKQUXsusQ5xf1%2Fimages%2FCharte_graphique_2_rwre.webp?alt=media&token=d1ddd542-4dd4-44b6-a509-94411a5aa5af") !important; background-position: center; opacity: 1 !important; }

.first-banner-seo-page-title h1 { color: #3357b7; width: 80%; font-size: 2rem; margin: auto !important; }

#bandeau-title-seo .titles { font-weight: 300 !important; width: 80%; margin: auto !important; font-size: 1.8rem; color: #3357b7; }

#photo-text-seo-page h2.titles, #seo-text-images h2.titles { font-weight: 300 !important; font-size: 1.8rem !important; color: #3357b7; }

.first-activity-div .card-cover a, .second-activity-div .card-cover a, .third-activity-div .card-cover a { font-weight: 300 !important; font-size: 1.4rem !important; color: white !important; transition: all 0.3s ease; }

#navbarSupportedContent > ul > li.dropdown.px-4 { display: none !important; }

/******************NAVBAR*********************************************************/
nav.navbar { margin: 10px; border-radius: 4px; }

nav.navbar ul { color: #3357b7; }

nav.navbar li { padding-right: 1.2rem !important; padding-left: 1.2rem !important; }

.animated-border-button { transition: all 0.5s ease; }

.animated-border-button:hover { color: #ad9c88; }

.navbar-brand, .logo_nav { height: 13vh !important; max-height: 55px !important; }

/******************************************************************RESERVATION************************************************/
.vm-booking { position: relative; padding: 50px 6vw; overflow: visible; color: #3357b7; background: radial-gradient(circle at 12% 18%, rgba(185, 197, 225, 0.24), transparent 28%), radial-gradient(circle at 88% 74%, rgba(51, 87, 183, 0.08), transparent 30%), #faf6f1; z-index: 999; }

.vm-booking::before { content: ""; position: absolute; left: -2vw; top: 0; transform: translateY(-50%); width: 42%; height: 190px; pointer-events: none; background-image: url("https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FMENeXSmasnMPiSmHKQUXsusQ5xf1%2Fimages%2FCharte_graphique_3_v4bk.webp"); background-repeat: no-repeat; background-size: contain; background-position: top left; opacity: 0.42; }

.vm-booking::after { content: ""; position: absolute; right: -2vw; bottom: 0; transform: translateY(50%); width: 42%; height: 190px; pointer-events: none; background-image: url("https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FMENeXSmasnMPiSmHKQUXsusQ5xf1%2Fimages%2FCharte_graphique_3_v4bk.webp"); background-repeat: no-repeat; background-size: contain; background-position: top left; opacity: 0.42; }

.vm-booking__inner { position: relative; z-index: 1; max-width: 1180px; margin: 0 auto; }

.vm-booking__head { max-width: 760px; margin: 0 auto 58px; text-align: center; }

.vm-booking__title { margin: 0; color: #3357b7; text-transform: uppercase; letter-spacing: 0.055em; line-height: 1.12; font-weight: 400; }

div.vm-booking__line { margin-left: auto !important; margin-right: auto !important; }

div.vm-booking__text { max-width: 680px; margin: 0 auto !important; }

.vm-booking__frame { position: relative; overflow: hidden; background: #fbf9f7; border: 3px solid #fbf9f7; box-shadow: 0 28px 70px rgba(51, 87, 183, 0.12); clip-path: polygon(18px 0, calc(100% - 18px) 0, 100% 18px, 100% calc(100% - 18px), calc(100% - 18px) 100%, 18px 100%, 0 calc(100% - 18px), 0 18px); width: 500px; margin: auto; }

.vm-booking__frame iframe { position: relative; z-index: 1; width: 100%; height: 720px; display: block; border: none; background: #fbf9f7; }

@media (max-width: 900px) { .vm-booking { padding: 80px 28px; } .vm-booking::before, .vm-booking::after { display: none; } .vm-booking__head { margin-bottom: 38px; } .vm-booking__frame iframe { height: 760px; width: 300px !important; } vm-booking__frame { width: 400px; } }

/*******************************************************Bannière d'accueil***************************************/
.vm-hero { position: relative; min-height: 100vh; padding: 90px 6vw; overflow: hidden; color: #3357b7; background-color: #faf6f1; background-image: url(https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FMENeXSmasnMPiSmHKQUXsusQ5xf1%2Fimages%2FCharte_graphique_2_rwre.webp); background-repeat: no-repeat; background-size: contain; background-position: center right; display: flex; align-items: center; }

.vm-hero__content { position: relative; z-index: 2; max-width: 760px; }

.vm-hero__eyebrow { position: relative; display: inline-flex; align-items: center; gap: 14px; margin-bottom: 48px; padding: 13px 16px; color: #fbf9f7; text-transform: uppercase; letter-spacing: 0.18em; background: #ad9c88; clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px), 0 10px); font-family: 'Libre Baskerville'; font-size: 0.7rem; }

.vm-hero__title { margin: 0; max-width: 720px; color: #3357b7; text-transform: uppercase; letter-spacing: 0.055em; line-height: 1.12; font-weight: 400; }

.vm-hero__line { width: 120px; height: 1px; margin: 38px 0 34px; background: linear-gradient(90deg, #3357b7 0%, rgba(51, 87, 183, 0.45) 48%, rgba(185, 197, 225, 0) 100%); }

.vm-hero__text { max-width: 550px; margin: 0; color: #3357b7; line-height: 1.85; letter-spacing: 0.01em; }

.vm-hero__text em { font-style: italic; }

.vm-hero__actions { display: flex; flex-wrap: wrap; gap: 28px; margin-top: 46px; }

.vm-btn { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 18px; padding: 19px 18px; text-decoration: none; text-transform: uppercase; letter-spacing: 0.17em; line-height: 1; transition: transform 0.35s ease, background-color 0.35s ease, color 0.35s ease; }

.vm-btn:hover { transform: translateY(-2px); }

.vm-btn--primary { color: #fbf9f7 !important; background-color: #3357b7 !important; box-shadow: 0 18px 35px rgba(51, 87, 183, 0.18); clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px), 0 10px); }

.vm-btn--primary:hover { background-color: #b9c5e1 !important; color: #3357b7 !important; }

.vm-btn--secondary { color: #3357b7 !important; background: #b9c5e1 !important; box-shadow: 0 18px 35px rgba(51, 87, 183, 0.18); clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px), 0 10px); }

.vm-btn--secondary:hover { color: #fbf9f7 !important; background: #3357b7 !important; }

@media (max-width: 1500px) { .vm-hero__text { max-width: 400px !important; } }

@media (max-width: 900px) { .vm-hero { padding: 70px 28px; background-position: bottom; } .vm-hero__eyebrow { font-size: 0.5rem; } .vm-hero__content { max-width: 100%; } .vm-hero__actions { gap: 16px; } .vm-btn { width: 100%; } }

.vm-hero__gallery { position: absolute; z-index: 3; top: 50%; right: 4vw; height: auto; max-width: 260px; min-width: 190px; transform: translateY(-50%); display: grid; gap: 18px; pointer-events: none; }

.vm-hero__photo { position: relative; aspect-ratio: 1 / 1; max-width: 260px; max-height: 260px; overflow: hidden; background: #fbf9f7; border: 3px solid #fbf9f7; opacity: 0; transform: translateX(24px) scale(0.96); transition: opacity 0.55s ease, transform 0.55s ease, box-shadow 0.55s ease; }

.vm-hero__photo img { width: 100%; height: 100%; display: block; object-fit: cover; transform: scale(1.04); transition: transform 0.8s ease; }

.vm-hero:hover .vm-hero__photo { opacity: 1; transform: translateX(0) scale(1); }

.vm-hero:hover .vm-hero__photo--one { transition-delay: 0.05s; }

.vm-hero:hover .vm-hero__photo--two { transition-delay: 0.16s; }

.vm-hero:hover .vm-hero__photo--three { transition-delay: 0.27s; }

.vm-hero:hover .vm-hero__photo--four { transition-delay: 0.38s; }

.vm-hero:hover .vm-hero__photo img { transform: scale(1); }

.vm-hero:hover .vm-hero__photo:hover { box-shadow: 0 28px 60px rgba(51, 87, 183, 0.24); }

@media (max-width: 1300px) { .vm-hero__gallery { display: none; } }

/**********************************intro*********************************************/
.vm-intro { position: relative; padding: 100px 6vw; overflow: hidden; background: radial-gradient(circle at 12% 18%, rgba(185, 197, 225, 0.28), transparent 28%), radial-gradient(circle at 88% 74%, rgba(51, 87, 183, 0.08), transparent 30%), #faf6f1; color: #3357b7; }

.vm-intro::after { content: ""; position: absolute; top: 42px; right: 6vw; width: 170px; height: 170px; border: 1px solid rgba(51, 87, 183, 0.22); border-radius: 50%; background: radial-gradient(circle, transparent 48%, rgba(185, 197, 225, 0.22) 49%, transparent 51%); pointer-events: none; }

.vm-intro__inner { position: relative; z-index: 1; max-width: 980px; margin: 0 auto; text-align: center; }

.vm-intro__title { margin: 0; color: #3357b7; text-transform: uppercase; letter-spacing: 0.055em; line-height: 1.12; font-weight: 400; }

.vm-intro__svg { position: relative; width: 520px; max-width: 100%; height: 44px; margin: 22px auto 34px; overflow: hidden; }

.vm-intro__svg svg { position: absolute; inset: 0; width: 100%; height: 100%; }

.vm-intro__text { max-width: 860px; margin: 0 auto; }

@media (max-width: 900px) { .vm-intro { padding: 80px 28px; } .vm-intro::after { display: none; } .vm-intro__eyebrow { margin-bottom: 22px; } .vm-intro__svg { margin-bottom: 28px; } }

/****************************************LES CHAMBRES*******************************/
.vm-rooms { position: relative; padding: 130px 6vw; overflow: hidden; color: #3357b7; background-image: url(https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FMENeXSmasnMPiSmHKQUXsusQ5xf1%2Fimages%2FCharte_graphique_1_593s.webp); background-size: cover; background-repeat: no-repeat; background-position: top; }

.vm-events { background-image: url(https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FMENeXSmasnMPiSmHKQUXsusQ5xf1%2Fimages%2FCharte_graphique_4_v9q5.webp); }

.vm-rooms::before { content: ""; position: absolute; left: 6vw; bottom: 70px; width: 170px; height: 170px; border: 1px solid rgba(51, 87, 183, 0.18); border-radius: 50%; background: radial-gradient(circle, transparent 48%, rgba(185, 197, 225, 0.22) 49%, transparent 51%); pointer-events: none; }

.vm-rooms__inner { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 0.85fr) minmax(420px, 1fr); gap: 70px; align-items: center; max-width: 1380px; margin: 0 auto; }

.vm-rooms__content { max-width: 620px; }

.vm-rooms__eyebrow { margin-bottom: 34px; }

.vm-rooms__title { margin: 0; color: #3357b7; text-transform: uppercase; letter-spacing: 0.055em; line-height: 1.12; font-weight: 400; }

.vm-rooms__text { max-width: 560px; }

.vm-rooms__slider { position: relative; }

.vm-rooms__track { position: relative; aspect-ratio: 1.18 / 1; min-height: 520px; overflow: hidden; background: #fbf9f7; box-shadow: 0 28px 70px rgba(51, 87, 183, 0.14); clip-path: polygon(18px 0, calc(100% - 18px) 0, 100% 18px, 100% calc(100% - 18px), calc(100% - 18px) 100%, 18px 100%, 0 calc(100% - 18px), 0 18px); }

.vm-rooms__track::before { content: ""; position: absolute; inset: 14px; z-index: 3; border: 1px solid rgba(251, 249, 247, 0.78); pointer-events: none; clip-path: polygon(14px 0, calc(100% - 14px) 0, 100% 14px, 100% calc(100% - 14px), calc(100% - 14px) 100%, 14px 100%, 0 calc(100% - 14px), 0 14px); }

.vm-rooms__slide { position: absolute; inset: 0; opacity: 0; transform: scale(1.04); transition: opacity 0.65s ease, transform 1.2s ease; pointer-events: none; }

.vm-rooms__slide.is-active { opacity: 1; transform: scale(1); pointer-events: auto; }

.vm-rooms__slide::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(51, 87, 183, 0.04), rgba(51, 87, 183, 0.18)), linear-gradient(135deg, rgba(51, 87, 183, 0.18), transparent 42%); pointer-events: none; }

.vm-rooms__slide img { width: 100%; height: 100%; display: block; object-fit: cover; }

.vm-rooms__name { position: absolute; right: 28px; bottom: 28px; z-index: 4; display: inline-flex; align-items: center; justify-content: center; padding: 13px 18px; color: #fbf9f7; background: #ad9c88; text-transform: uppercase; letter-spacing: 0.18em; line-height: 1; font-family: 'Libre Baskerville'; font-size: 0.7rem; clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px), 0 10px); }

.vm-rooms__controls { display: flex; align-items: center; justify-content: flex-end; gap: 18px; margin-top: 26px; }

.vm-rooms__arrow { width: 56px; height: 56px; border: none; color: #fbf9f7; background: #3357b7; cursor: pointer; box-shadow: 0 18px 35px rgba(51, 87, 183, 0.16); transition: transform 0.35s ease, background-color 0.35s ease, color 0.35s ease; clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px), 0 10px); }

.vm-rooms__arrow:hover { transform: translateY(-2px); color: #3357b7; background: #b9c5e1; }

.vm-rooms__counter { display: inline-flex; align-items: center; gap: 12px; color: #3357b7; letter-spacing: 0.16em; }

.vm-rooms__counter span:nth-child(2) { display: block; width: 54px; height: 1px; background: rgba(51, 87, 183, 0.42); }

@media (max-width: 1050px) { .vm-rooms__inner { grid-template-columns: 1fr; gap: 48px; } .vm-rooms__content { max-width: 100%; } .vm-rooms__text { max-width: 760px; } .vm-rooms__track { min-height: 420px; } }

@media (max-width: 700px) { .vm-rooms { padding: 80px 28px; } .vm-rooms::before, .vm-rooms::after { display: none; } .vm-rooms__track { aspect-ratio: 1 / 1.08; min-height: auto; } .vm-rooms__controls { justify-content: center; } .vm-rooms__name { right: 20px; bottom: 20px; } }

/*************************************************LA VILLA*********************************************/
.vm-location { position: relative; display: grid; grid-template-columns: minmax(210px, 0.72fr) minmax(360px, 1fr) minmax(210px, 0.72fr); gap: 46px; align-items: center; padding: 130px 6vw; overflow: visible; color: #3357b7; background: radial-gradient(circle at 16% 20%, rgba(185, 197, 225, 0.24), transparent 28%), radial-gradient(circle at 84% 78%, rgba(51, 87, 183, 0.07), transparent 30%), #faf6f1; }

.vm-location::after { content: ""; position: absolute; right: 7vw; bottom: 68px; width: 165px; height: 165px; border: 1px solid rgba(51, 87, 183, 0.18); border-radius: 50%; background: radial-gradient(circle, transparent 48%, rgba(185, 197, 225, 0.2) 49%, transparent 51%); pointer-events: none; }

.vm-location__content { position: relative; z-index: 2; text-align: center; }

.vm-location__eyebrow { margin-bottom: 30px; }

.vm-location__title { margin: 0; color: #3357b7; text-transform: uppercase; letter-spacing: 0.055em; line-height: 1.12; font-weight: 400; }

.vm-location__svg { width: 420px; max-width: 100%; margin: 22px auto 34px; }

.vm-location__text { max-width: 680px; margin: 0 auto; }

.vm-location__image { position: relative; z-index: 1; aspect-ratio: 3 / 4; overflow: hidden; background: #fbf9f7; box-shadow: 0 28px 70px rgba(51, 87, 183, 0.13); clip-path: polygon(18px 0, calc(100% - 18px) 0, 100% 18px, 100% calc(100% - 18px), calc(100% - 18px) 100%, 18px 100%, 0 calc(100% - 18px), 0 18px); }

.vm-location__image::before { content: ""; position: absolute; inset: 14px; z-index: 2; border: 1px solid rgba(251, 249, 247, 0.72); pointer-events: none; clip-path: polygon(14px 0, calc(100% - 14px) 0, 100% 14px, 100% calc(100% - 14px), calc(100% - 14px) 100%, 14px 100%, 0 calc(100% - 14px), 0 14px); }

.vm-location__image img { width: 100%; height: 100%; display: block; object-fit: cover; transform: scale(1.04); transition: transform 0.8s ease; }

.vm-location:hover .vm-location__image img { transform: scale(1); }

@media (max-width: 1050px) { .vm-location { grid-template-columns: 1fr; gap: 34px; padding: 90px 6vw; } .vm-location__content { order: -1; } .vm-location__image { aspect-ratio: 16 / 10; max-height: 420px; } .vm-location__image--left, .vm-location__image--right { transform: none; } }

@media (max-width: 700px) { .vm-location { padding: 80px 28px; } .vm-location::before, .vm-location::after { display: none; } .vm-location__image { aspect-ratio: 1 / 1; } }

.vm-location, .vm-location * { box-sizing: border-box; }

.vm-location { max-width: 100%; }

.vm-location__content, .vm-location__image, .vm-location__svg, .vm-location__text { min-width: 0; }

.vm-location__image, .vm-location__image img { max-width: 100%; }

@media (max-width: 700px) { .vm-location { width: 100%; max-width: 100%; overflow: hidden; padding: 70px 20px; } .vm-location__title { max-width: 100%; word-break: normal; overflow-wrap: anywhere; } .vm-location__svg { width: 100%; max-width: 320px; } .vm-location__text { max-width: 100%; } .vm-location__image { width: 100%; max-width: 100%; } }

/************************************Galerie villa accueil*********************************/
.vm-location__gallery { position: relative; z-index: 2; grid-column: 1 / -1; display: grid; grid-template-columns: repeat(5, 1fr); gap: 18px; margin-top: 34px; }

.vm-location__thumb { position: relative; display: block; aspect-ratio: 1 / 1; overflow: hidden; border-radius: 0; border: 3px solid #fbf9f7; background: #fbf9f7; box-shadow: 0 18px 45px rgba(51, 87, 183, 0.12); opacity: 0; transform: translateY(26px); transition: opacity 0.65s ease, transform 0.65s ease, box-shadow 0.45s ease; }

.vm-location__thumb.is-visible { opacity: 1; transform: translateY(0); }

.vm-location__thumb:nth-child(1) { transition-delay: 0.05s; }

.vm-location__thumb:nth-child(2) { transition-delay: 0.15s; }

.vm-location__thumb:nth-child(3) { transition-delay: 0.25s; }

.vm-location__thumb:nth-child(4) { transition-delay: 0.35s; }

.vm-location__thumb:nth-child(5) { transition-delay: 0.45s; }

.vm-location__thumb::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(51, 87, 183, 0.02), rgba(51, 87, 183, 0.16)); pointer-events: none; transition: opacity 0.45s ease; }

.vm-location__thumb:hover { box-shadow: 0 24px 60px rgba(51, 87, 183, 0.2); }

.vm-location__thumb:hover::after { opacity: 0; }

.vm-location__thumb img { width: 100%; height: 100%; display: block; object-fit: cover; transform: scale(1.04); transition: transform 0.7s ease; }

.vm-location__thumb:hover img { transform: scale(1); }

.vm-location__lightbox { position: fixed; inset: 0; z-index: 9999; display: none; align-items: center; justify-content: center; padding: 34px; background: rgba(51, 87, 183, 0.28); backdrop-filter: blur(8px); }

.vm-location__lightbox.is-open { display: flex; }

.vm-location__lightbox img { width: fit-content; max-width: 92vw; max-height: 86vh; display: block; object-fit: contain; border: 3px solid #fbf9f7; box-shadow: 0 30px 80px rgba(13, 27, 51, 0.25); }

.vm-location__lightbox-close { position: fixed; top: 24px; right: 24px; width: 52px; height: 52px; border: none; cursor: pointer; color: #fbf9f7; background: #3357b7; line-height: 1; clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px), 0 10px); }

@media (max-width: 900px) { .vm-location__gallery { grid-template-columns: repeat(2, 1fr); } .vm-location__thumb:last-child { grid-column: 1 / -1; max-width: calc(50% - 9px); width: 100%; justify-self: center; } }

@media (max-width: 560px) { .vm-location__gallery { grid-template-columns: 1fr; } .vm-location__thumb:last-child { max-width: none; } }

/**************************************Description chambres***************************/
.vm-room-details { position: relative; padding: 130px 6vw; overflow: visible; color: #3357b7; background: radial-gradient(circle at 12% 18%, rgba(185, 197, 225, 0.24), transparent 28%), radial-gradient(circle at 88% 74%, rgba(51, 87, 183, 0.08), transparent 30%), #faf6f1; }

.vm-room-details::after { content: ""; position: absolute; right: 6vw; bottom: 70px; width: 170px; height: 170px; border: 1px solid rgba(51, 87, 183, 0.18); border-radius: 50%; background: radial-gradient(circle, transparent 48%, rgba(185, 197, 225, 0.22) 49%, transparent 51%); pointer-events: none; }

.vm-room-details__inner { position: relative; z-index: 1; max-width: 1320px; margin: 0 auto; }

.vm-room-details__head { max-width: 760px; text-align: center; margin: auto; }

.vm-room-details__title { margin: 0; color: #3357b7; text-transform: uppercase; letter-spacing: 0.055em; line-height: 1.12; font-weight: 400; }

.vm-room-details__layout { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 44px; align-items: stretch; }

.vm-room-details__nav { display: grid; gap: 14px; align-content: center; }

.vm-room-details__tab { position: relative; width: 100%; padding: 18px 20px; border: none; cursor: pointer; color: #3357b7; background: rgba(185, 197, 225, 0.42); text-align: left; text-transform: uppercase; letter-spacing: 0.14em; line-height: 1; transition: transform 0.35s ease, color 0.35s ease, background-color 0.35s ease; clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px), 0 10px); }

.vm-room-details__tab:hover, .vm-room-details__tab.is-active { transform: translateX(6px); color: #fbf9f7; background: #3357b7; }

.vm-room-details__card { position: relative; min-height: 560px; padding: 48px; overflow: hidden; background: rgba(251, 249, 247, 0.74); border: 3px solid #fbf9f7; box-shadow: 0 28px 70px rgba(51, 87, 183, 0.12); clip-path: polygon(18px 0, calc(100% - 18px) 0, 100% 18px, 100% calc(100% - 18px), calc(100% - 18px) 100%, 18px 100%, 0 calc(100% - 18px), 0 18px); }

.vm-room-details__card::before { content: ""; position: absolute; inset: 16px; border: 1px solid rgba(51, 87, 183, 0.16); pointer-events: none; clip-path: polygon(14px 0, calc(100% - 14px) 0, 100% 14px, 100% calc(100% - 14px), calc(100% - 14px) 100%, 14px 100%, 0 calc(100% - 14px), 0 14px); }

.vm-room-details__content { position: absolute; inset: 48px; opacity: 0; transform: translateY(18px); pointer-events: none; transition: opacity 0.45s ease, transform 0.45s ease; }

.vm-room-details__content.is-active { position: relative; inset: auto; opacity: 1; transform: translateY(0); pointer-events: auto; }

.vm-room-details__content h3 { margin: 0 0 22px; color: #3357b7; text-transform: uppercase; letter-spacing: 0.055em; line-height: 1.12; font-weight: 400; }

.vm-room-details__content p { max-width: 760px; margin: 0 0 34px; color: #3357b7; line-height: 1.85; letter-spacing: 0.01em; }

.vm-room-details__content img { height: 50vh; width: 100%; object-fit: cover; clip-path: polygon(10px 0px, calc(100% - 10px) 0px, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0px calc(100% - 10px), 0px 10px); margin-top: 50px; }

.vm-room-details__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-top: 38px; }

.vm-room-details__grid div { display: flex; align-items: center; gap: 12px; min-height: 68px; padding: 15px; color: #3357b7; background: rgba(185, 197, 225, 0.28); border: 1px solid rgba(51, 87, 183, 0.12); }

.vm-room-details__grid span { display: inline-flex; align-items: center; justify-content: center; min-width: 28px; color: #3357b7; }

.vm-room-details__grid span svg { width: 22px; height: 22px; display: block; stroke: currentColor; }

@media (max-width: 1050px) { .vm-room-details__layout { grid-template-columns: 1fr; } .vm-room-details__nav { grid-template-columns: repeat(5, 1fr); } .vm-room-details__tab { text-align: center; padding: 16px 12px; } .vm-room-details__tab:hover, .vm-room-details__tab.is-active { transform: translateY(-3px); } .vm-room-details__grid { grid-template-columns: repeat(2, 1fr); } }

@media (max-width: 700px) { .vm-room-details { padding: 80px 28px; } .vm-room-details::before, .vm-room-details::after { display: none; } .vm-room-details__head { margin-bottom: 38px; } .vm-room-details__nav { grid-template-columns: 1fr; } .vm-room-details__card { min-height: auto; padding: 30px; } .vm-room-details__content { inset: 30px; } .vm-room-details__grid { grid-template-columns: 1fr; } }

/**************************************BOUTONS*************************************/
a.button_header, a.button_homepageScreen, a.button_homepageDoubleScreen, a.phone-number-button { position: relative !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 12px !important; padding: 19px !important; text-decoration: none !important; text-transform: uppercase !important; letter-spacing: 0.17em !important; line-height: 1 !important; color: #fbf9f7 !important; background-color: #3357b7 !important; box-shadow: 0 18px 35px rgba(51, 87, 183, 0.18) !important; border: none !important; transition: transform 0.35s ease, background-color 0.35s ease, color 0.35s ease !important; border-radius: 0 !important; clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px), 0 10px) !important; }

nav a.button_header { padding: 10px 19px !important; }

a.button_header:hover, a.button_homepageScreen:hover, a.button_homepageDoubleScreen:hover, a.phone-number-button:hover { transform: translateY(-2px) !important; background-color: #b9c5e1 !important; color: #3357b7 !important; }

#navbarSupportedContent > div > a.button_header { letter-spacing: 0.13em !important; font-size: 0.9rem !important; }

/************************************TRANSITION**********************************/
.vm-hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 120px; z-index: 1; pointer-events: none; background: linear-gradient(180deg, rgba(250, 246, 241, 0) 0%, rgba(250, 246, 241, 0.55) 55%, #faf6f1 100%); }

.vm-intro::before { content: ""; position: absolute; left: 0; right: 0; top: -1px; height: 120px; z-index: 1; pointer-events: none; background: linear-gradient(180deg, #faf6f1 0%, rgba(250, 246, 241, 0.55) 45%, rgba(250, 246, 241, 0) 100%); }

.vm-location::before { content: ""; position: absolute; left: -2vw; top: 0; transform: translateY(-50%); z-index: 999; width: 50%; height: 200px; pointer-events: none; background-image: url(https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FMENeXSmasnMPiSmHKQUXsusQ5xf1%2Fimages%2FCharte_graphique_3_v4bk.webp); background-repeat: no-repeat; background-size: contain; background-position: top left; opacity: 0.65; }

.vm-room-details::before { content: ""; position: absolute; left: -2vw; top: 0; transform: translateY(-50%); z-index: 999; width: 50%; height: 200px; pointer-events: none; background-image: url(https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FMENeXSmasnMPiSmHKQUXsusQ5xf1%2Fimages%2FCharte_graphique_3_v4bk.webp); background-repeat: no-repeat; background-size: contain; background-position: top left; opacity: 0.65; }

/*************************************BLOC MAPS*************************************/
.vm-map { position: relative; padding: 120px 6vw; background: radial-gradient(circle at 12% 18%, rgba(185, 197, 225, 0.28), transparent 28%), radial-gradient(circle at 88% 74%, rgba(51, 87, 183, 0.08), transparent 30%), #faf6f1; color: #3357b7; }

.vm-map::before { content: ""; position: absolute; left: -2vw; top: 0; transform: translateY(-50%); z-index: 999; width: 50%; height: 200px; pointer-events: none; background-image: url(https://storage.googleapis.com/refpro-app-ca244.appspot.com/customers%2FMENeXSmasnMPiSmHKQUXsusQ5xf1%2Fimages%2FCharte_graphique_3_v4bk.webp); background-repeat: no-repeat; background-size: contain; background-position: top left; opacity: 0.65; }

.vm-map__inner { display: grid; grid-template-columns: 1fr 1.3fr; gap: 60px; align-items: center; max-width: 1200px; margin: 0 auto; }

.vm-map__title { margin: 10px 0 24px; text-transform: uppercase; letter-spacing: 0.05em; font-weight: 400; }

.vm-map__text { margin-bottom: 30px; line-height: 1.7; }

.vm-map__btn { display: inline-flex; align-items: center; gap: 14px; padding: 16px 22px; background: #3357b7; color: #fbf9f7; text-decoration: none; text-transform: uppercase; letter-spacing: 0.12em; clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px), 0 10px); transition: 0.3s ease; }

.vm-map__btn:hover { background: #b9c5e1; color: #3357b7; transform: translateY(-2px); }

.vm-map__btn svg { width: 20px; height: 20px; }

.vm-map__iframe { position: relative; overflow: hidden; border: 3px solid #fbf9f7; clip-path: polygon(18px 0, calc(100% - 18px) 0, 100% 18px, 100% calc(100% - 18px), calc(100% - 18px) 100%, 18px 100%, 0 calc(100% - 18px), 0 18px); box-shadow: 0 28px 70px rgba(51, 87, 183, 0.12); }

.vm-map__iframe iframe { width: 100%; height: 420px; border: none; display: block; }

@media (max-width: 900px) { .vm-map__inner { grid-template-columns: 1fr; } .vm-map { padding: 80px 28px; } }

/*# sourceMappingURL=custom.css.map */