@charset "UTF-8";
@import url(main.css);
div:has(> .first-activity-div) { margin-bottom: 100px; }

.spacer { display: none !important; }

/*---------------------------Barre de navigation--------------------*/
nav.navbar { box-shadow: #87977e73 0px 25px 20px -20px; }

.animated-border-button:after { background-color: #948B5A; }

nav a.lalibela-btn { background-color: #222b15 !important; font-family: 'Petrona' !important; }

/***********************************************AJUSTEMENTS SEO**************************************/
#navbarSupportedContent > ul > li.dropdown.px-4 > div > a:nth-child(1) { font-size: 0.8em !important; }

#navbarSupportedContent > ul > li.dropdown.px-4 > div > ul a { transition: all 0.5s ease; }

#navbarSupportedContent > ul > li.dropdown.px-4 > div > ul a:hover { color: white !important; }

.seo-hero-title, .seo-section-heading h2 { color: #563820; font-weight: 500 !important; }

.seo-hero-button, .seo-button { color: white !important; }

.seo-reviews { padding-top: 100px; }

.seo-reviews #place-rating { color: #322209 !important; }

.seo-reviews div.photoTitleText::before { text-align: center; }

.seo-reviews .photoTitleText > div::before { display: none !important; }

.seo-faq-heading h2 { color: white !important; font-weight: 500 !important; }

/********************************************************************************** HERO */
.lalibela-hero { position: relative; display: flex; align-items: flex-end; min-height: 100vh; padding: 100px 0 150px; overflow: hidden; background-color: #34451F; }

/* --- IMAGE ET DÉGRADÉS --- */
.lalibela-hero__image, .lalibela-hero__shade { position: absolute; inset: 0; width: 100%; height: 100%; }

.lalibela-hero__image { object-fit: cover; object-position: center; transform: scale(1.02); }

.lalibela-hero__shade { background: linear-gradient(90deg, rgba(31, 40, 20, 0.97) 0%, rgba(37, 48, 23, 0.89) 39%, rgba(39, 49, 25, 0.47) 69%, rgba(39, 49, 25, 0.23) 100%), linear-gradient(0deg, rgba(28, 37, 18, 0.86) 0%, rgba(28, 37, 18, 0.12) 54%, rgba(28, 37, 18, 0.35) 100%); }

/* --- CONTENEUR --- */
.lalibela-hero__container { position: relative; z-index: 3; width: 100%; }

.lalibela-hero__layout { display: grid; grid-template-columns: 1.3fr 0.7fr; align-items: end; gap: 80px; }

/* --- CONTENU PRINCIPAL --- */
.lalibela-hero__content { max-width: 820px; padding-bottom: 38px; }

.lalibela-hero__logo { max-width: 300px; margin-bottom: 30px; }

.lalibela-hero h1 { max-width: 820px; margin: 0 0 27px; color: #FFFFFF; line-height: 1.02; }

@media (min-width: 1200px) { .h1, h1 { font-size: 3rem !important; } }

.lalibela-hero h1 strong, .lalibela-hero h1 span { color: #D8BD98; }

.lalibela-hero__content > p { max-width: 680px; margin: 0 0 34px; color: rgba(255, 255, 255, 0.88); line-height: 1.75; }

/* --- BOUTONS DU HERO --- */
.lalibela-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }

/***************SEPARATEUR***************/
.blc-sep { display: flex; align-items: center; gap: 0.7rem; margin: 0 0 1.8rem 0; transform: translateX(20px); transition: opacity 0.8s ease 0.6s, transform 0.8s ease 0.6s; }

.blc-sep-line-left { width: 36px; height: 1px; background: linear-gradient(90deg, #b96f3a, transparent); display: block; }

.blc-sep-line-right { width: 20px; height: 1px; background: linear-gradient(90deg, transparent, #b96f3a); display: block; }

.blc-sep-diamond { width: 5px; height: 5px; background: #b96f3a; transform: rotate(45deg); display: block; box-shadow: 0 0 8px rgba(218, 176, 69, 0.8); }

/* --- INFORMATIONS PRATIQUES --- */
.lalibela-hero__practical { display: grid; grid-template-columns: repeat(3, 1fr); background-color: rgba(31, 42, 19, 0.67); border: 1px solid rgba(255, 255, 255, 0.22); border-radius: 24px; box-shadow: 0 20px 60px rgba(22, 29, 14, 0.18); backdrop-filter: blur(16px); overflow: hidden; margin-top: 50px; }

.lalibela-hero__practical-item { position: relative; display: flex; align-items: center; gap: 1.5rem; min-height: 92px; padding: 19px 25px; color: #FFFFFF; text-decoration: none; }

.lalibela-hero__practical-item + .lalibela-hero__practical-item { border-left: 1px solid rgba(255, 255, 255, 0.18); }

.lalibela-hero__practical-icon { display: flex; align-items: center; justify-content: center; }

.lalibela-hero__practical-icon i { font-size: 2rem; color: #ffffff45; }

.lalibela-hero__practical-item > span { display: block; }

.lalibela-hero__practical-item strong { display: block; margin-bottom: 4px; color: #e3d8c4; font-size: 1.2rem; }

.lalibela-hero__practical-item--link { padding-right: 60px; transition: color 0.3s ease, background-color 0.3s ease; }

.lalibela-hero__practical-item--link:hover { color: #34451F; background-color: #F1E3CE; }

.lalibela-hero__practical-item--link:hover strong { color: #563820; }

.lalibela-hero__practical-item--link:hover i { color: #91696945 !important; }

.lalibela-hero__location-arrow { position: absolute; top: 50%; right: 24px; width: 19px; height: 19px; transform: translateY(-50%); transition: transform 0.3s ease; }

.lalibela-hero__practical-item--link:hover .lalibela-hero__location-arrow { transform: translate(4px, calc(-50% - 4px)); }

/********************************************************************************** BOUTONS */
.lalibela-btn:hover { transform: translateY(-3px); }

.lalibela-btn > span { position: relative; z-index: 2; }

.lalibela-btn__icon { position: relative; display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; flex: 0 0 auto; color: #34451F; background-color: #F1E3CE; border-radius: 50%; overflow: hidden; transition: color 0.3s ease, background-color 0.3s ease; }

.lalibela-btn__icon svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; transition: transform 0.35s ease, opacity 0.35s ease; }

/* --- TERRACOTTA --- */
.lalibela-btn--terracotta { color: #FFFFFF; background-color: #B96F3A; }

.lalibela-btn--terracotta:hover { color: #FFFFFF; background-color: #283623; }

/* --- CONTOUR CLAIR --- */
.lalibela-btn--outline { color: #FFFFFF; background-color: rgba(255, 255, 255, 0.08); border-color: rgba(255, 255, 255, 0.55); backdrop-filter: blur(8px); }

.lalibela-btn--outline:hover { color: #34451F; background-color: #FFFFFF; }

.lalibela-btn--outline .lalibela-btn__icon { color: #34451F; background-color: #FFFFFF; }

.lalibela-btn--outline:hover .lalibela-btn__icon { color: #FFFFFF; background-color: #34451F; }

/* --- FLÈCHE COULISSANTE --- */
.lalibela-btn--slide:hover .lalibela-btn__icon svg { animation: lalibela-arrow-slide 0.55s ease; }

@keyframes lalibela-arrow-slide { 0% { opacity: 1;
    transform: translateX(0); }
  45% { opacity: 0;
    transform: translateX(18px); }
  55% { opacity: 0;
    transform: translateX(-18px); }
  100% { opacity: 1;
    transform: translateX(0); } }

/* --- DOUBLE FLÈCHE --- */
.lalibela-btn--double .lalibela-btn__icon svg { position: absolute; }

.lalibela-btn__arrow-first { opacity: 1; transform: translateX(0); }

.lalibela-btn__arrow-second { opacity: 0; transform: translateX(-30px); }

.lalibela-btn--double:hover .lalibela-btn__arrow-first { opacity: 0; transform: translateX(30px); }

.lalibela-btn--double:hover .lalibela-btn__arrow-second { opacity: 1; transform: translateX(0); }

/********************************************************************************** RESPONSIVE DU HERO */
@media (max-width: 1100px) { .lalibela-hero { min-height: auto; padding: 160px 0 45px; } .lalibela-hero__layout { grid-template-columns: 1fr; gap: 35px; } .lalibela-hero__content { padding-bottom: 0; } .lalibela-hero__aside { max-width: 600px; margin: 0; } .lalibela-hero__practical { margin-top: 45px; } .lalibela-hero__circle, .lalibela-hero__plant { opacity: 0.55; } }

@media (max-width: 850px) { .lalibela-hero { padding: 145px 0 35px; } .lalibela-hero__shade { background: linear-gradient(90deg, rgba(31, 40, 20, 0.94) 0%, rgba(31, 40, 20, 0.73) 100%), linear-gradient(0deg, rgba(31, 40, 20, 0.88) 0%, rgba(31, 40, 20, 0.12) 65%); } .lalibela-hero__practical { grid-template-columns: 1fr; } .lalibela-hero__practical-item + .lalibela-hero__practical-item { border-top: 1px solid rgba(255, 255, 255, 0.18); border-left: 0; } }

@media (max-width: 600px) { .lalibela-hero { padding: 125px 0 25px; } .lalibela-hero__image { object-position: 62% center; } .lalibela-hero__content > p { line-height: 1.6; } .lalibela-actions { flex-direction: column; align-items: stretch; } .lalibela-btn { width: 100%; justify-content: space-between; } .lalibela-hero__aside { padding: 28px 23px 24px; border-radius: 26px 26px 6px 26px; } .lalibela-hero__practical { border-radius: 20px; } .lalibela-hero__practical-item { min-height: 84px; padding: 17px 18px; } .lalibela-hero__circle { display: none; } .lalibela-hero__plant { right: -100px; opacity: 0.35; } }

@media (prefers-reduced-motion: reduce) { .lalibela-btn, .lalibela-btn__icon, .lalibela-btn__icon svg, .lalibela-hero__location-arrow { transition: none; animation: none !important; } }

/*****************************************************PRESENTATION**********************************************************************************/
.lalibela-intro { position: relative; background: #FBF6ED; padding: 150px 0 130px; }

.lalibela-wave { position: absolute; left: 0; width: 100%; height: 90px; pointer-events: none; }

.lalibela-wave--cream { top: -80px; background: #FBF6ED; border-radius: 50% 45% 0 0/70% 60% 0 0; }

.lalibela-intro__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; align-items: center; }

.lalibela-intro__visual { position: relative; min-height: 610px; }

.lalibela-organic-frame { position: absolute; inset: 0 35px 10px 0; border-radius: 48% 48% 18% 18%/30% 30% 13% 13%; overflow: hidden; }

.lalibela-organic-frame img { width: 100%; height: 100%; object-fit: cover; }

.lalibela-intro__stamp { position: absolute; right: 0; bottom: 50px; width: 150px; height: 150px; border-radius: 50%; background: #B96F3A; color: #FFFFFF; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; box-shadow: 0 20px 50px rgba(86, 56, 32, 0.18); transform: rotate(7deg); }

.lalibela-intro__stamp svg { width: 32px; height: 32px; margin-bottom: 8px; }

.lalibela-intro__stamp span { line-height: 1.25; font-family: 'WindSong'; font-size: 1.7em; }

.lalibela-dots { position: absolute; left: -35px; top: 40px; width: 160px; fill: #D8BD98; }

.lalibela-copy { max-width: 600px; }

/********************************************************************REASSURANCE************************************************/
.lalibela-assurance { position: relative; background: #F1E3CE; padding: 90px 0 105px; border-radius: 60px 60px 0 0; }

.lalibela-assurance__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }

.lalibela-assurance__item { padding: 18px 16px; }

.lalibela-assurance__item > span { display: flex; align-items: center; justify-content: center; width: 62px; height: 62px; border-radius: 50% 50% 50% 15%; background: #34451F; color: #FFFFFF; margin-bottom: 22px; }

.lalibela-assurance__item svg { width: 28px; height: 28px; color: #6c815c; }

.lalibela-assurance__item h3 { color: #563820; margin: 0 0 13px; line-height: 1.25; }

.lalibela-assurance__item p { color: #303229; line-height: 1.65; margin: 0; }

/*******************************************************************PRESTATIONS*************************************************************/
.lalibela-services { position: relative; background: #FBF6ED; padding: 145px 0 150px; overflow: hidden; }

.lalibela-services .lalibela-kicker { font-size: 3rem; max-width: none; font-weight: 300; }

.lalibela-curve--top { position: absolute; top: -75px; left: -5%; width: 110%; height: 140px; background: #F1E3CE; border-radius: 0 0 50% 50%; transform: rotate(1deg); }

.lalibela-accordion { display: grid; gap: 16px; position: relative; }

.lalibela-service { border-radius: 28px; background: #F1E3CE; overflow: hidden; }

.lalibela-service__trigger { position: relative; width: 100%; height: 180px; border: 0; padding: 0; overflow: hidden; cursor: pointer; text-align: left; background: #34451F; }

.lalibela-service__trigger img, .lalibela-service__shade { position: absolute; inset: 0; width: 100%; height: 100%; }

.lalibela-service__trigger img { object-fit: cover; transition: transform .55s ease; }

.lalibela-service__trigger:hover img { transform: scale(1.035); }

.lalibela-service__shade { background: linear-gradient(90deg, rgba(52, 69, 31, 0.94), rgba(52, 69, 31, 0.52)); }

.lalibela-service__number, .lalibela-service__title, .lalibela-service__toggle { position: absolute; z-index: 2; color: #FFFFFF; }

.lalibela-service__number { left: 30px; top: 26px; color: #D8BD98; font-weight: 700; letter-spacing: 2px; }

.lalibela-service__title { left: 30px; bottom: 30px; display: flex; align-items: center; gap: 14px; line-height: 1.15; font-family: 'WindSong'; font-size: 4rem; }

.lalibela-service__title svg { width: 30px; height: 30px; }

.lalibela-service__toggle { right: 30px; top: 50%; transform: translateY(-50%); display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; border-radius: 50%; background: #FBF6ED; color: #34451F; transition: transform .35s ease,background-color .35s ease; }

.lalibela-service__trigger:hover .lalibela-service__toggle { background: #B96F3A; color: #FFFFFF; }

.lalibela-service.is-open .lalibela-service__toggle { transform: translateY(-50%) rotate(45deg); }

.lalibela-service__panel { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .5s ease; }

.lalibela-service.is-open .lalibela-service__panel { grid-template-rows: 1fr; }

.lalibela-service__inside { overflow: hidden; padding: 0 42px; }

.lalibela-service.is-open .lalibela-service__inside { padding-top: 38px; padding-bottom: 44px; }

.lalibela-service__inside h3 { color: #563820; line-height: 1.35; margin: 0 0 22px; max-width: 900px; }

.lalibela-service__inside h4 { color: #B96F3A; text-transform: uppercase; letter-spacing: 1.5px; margin: 30px 0 14px; }

.lalibela-service__inside p { color: #303229; line-height: 1.75; margin: 0 0 16px; }

.lalibela-service__inside ul { columns: 2; column-gap: 50px; margin: 10px 0 28px; padding-left: 22px; color: #303229; }

.lalibela-service__inside li { break-inside: avoid; margin-bottom: 10px; line-height: 1.6; }

.lalibela-service__inside li::marker { color: #B96F3A; }

/******************************************************************MAISON NURA************************************************/
.lalibela-nura { position: relative; background: #34451F; padding: 150px 0 155px; overflow: hidden; }

.lalibela-wave--nura { top: -2px; background: #FBF6ED; border-radius: 0 0 58% 42%/0 0 90% 80%; }

.lalibela-nura__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; align-items: center; }

.lalibela-nura__content h2, .lalibela-nura__content p { color: #FFFFFF; }

.lalibela-nura__content { max-width: 530px; }

.lalibela-nura__visual { position: relative; min-height: 650px; }

.lalibela-nura__image { position: absolute; top: 0; right: 0; width: 78%; height: 460px; border-radius: 45% 45% 16px 16px; overflow: hidden; }

.lalibela-nura__image img { width: 100%; height: 100%; object-fit: cover; }

.lalibela-nura__cards { position: absolute; left: 0; right: 35px; bottom: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }

.lalibela-nura__cards article { background: #FBF6ED; padding: 26px 20px; border-radius: 20px; box-shadow: 0 20px 40px rgba(20, 27, 11, 0.2); }

.lalibela-nura__cards article p { margin-bottom: 0 !important; }

.lalibela-nura__cards svg { color: #B96F3A; width: 28px; height: 28px; margin-bottom: 14px; }

.lalibela-nura__cards h3 { color: #563820; line-height: 1.25; margin: 0 0 10px; }

.lalibela-nura__cards p { color: #303229; line-height: 1.55; margin: 0; }

.lalibela-nura__line { position: absolute; left: -35px; top: 30px; width: 200px; fill: none; stroke: #D8BD98; stroke-width: 2; }

/***************************************************************TECHNOLOGIES**********************************************************/
.lalibela-tech { background: #F1E3CE; padding: 140px 0 150px; border-radius: 0 0 70px 70px; }

.lalibela-tech .lalibela-kicker { font-size: 3rem; max-width: none; font-weight: 300; }

.lalibela-tech__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }

.lalibela-tech__card { position: relative; background: #FBF6ED; padding: 38px; border-radius: 30px; min-height: 300px; border: 1px solid rgba(89, 99, 58, 0.18); }

.lalibela-tech__icon { display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; background: #34451F; color: #FFFFFF; border-radius: 50% 50% 50% 18%; margin-bottom: 30px; }

.lalibela-tech__icon svg { width: 28px; height: 28px; color: #6c815c; }

.lalibela-tech__index { position: absolute; right: 28px; top: 24px; color: #D8BD98; font-weight: 800; letter-spacing: 2px; }

.lalibela-tech__card h3 { color: #563820; margin: 0 0 14px; }

/******************************************************************VALEURS*************************************************/
.lalibela-values { position: relative; background: #FBF6ED; padding: 150px 0; overflow: hidden; }

.lalibela-values__shape { position: absolute; left: -170px; bottom: -240px; width: 560px; height: 560px; border-radius: 50%; border: 100px solid #F1E3CE; }

.lalibela-values__grid { display: grid; grid-template-columns: .88fr 1.12fr; gap: 90px; align-items: center; }

.lalibela-values__visual { position: relative; height: 720px; }

.lalibela-values__visual > img { width: 100%; height: 100%; object-fit: cover; border-radius: 48% 48% 18px 18px; }

.lalibela-values__quote { position: absolute; right: -35px; bottom: 45px; background: #B96F3A; color: #FFFFFF; padding: 24px 28px; border-radius: 24px; display: flex; align-items: center; gap: 14px; box-shadow: 0 18px 45px rgba(86, 56, 32, 0.2); }

.lalibela-values__quote svg { width: 28px; height: 28px; color: #6c815c; }

.lalibela-values__quote span { font-weight: 700; line-height: 1.4; }

.lalibela-values__list { display: grid; gap: 5px; margin-top: 30px; }

.lalibela-values__list article { display: grid; grid-template-columns: 58px 1fr; gap: 18px; padding: 19px 0; border-bottom: 1px solid #D8BD98; }

.lalibela-values__list article > span { display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 50%; background: #F1E3CE; color: #34451F; }

.lalibela-values__list svg { width: 24px; height: 24px; }

.lalibela-values__list h3 { color: #563820; margin: 0 0 7px; }

.lalibela-values__list p { margin: 0; line-height: 1.55; }

/****************************************************************************************************************************/
.lalibela-values { position: relative; background: #FBF6ED; padding: 150px 0; overflow: hidden; }

.lalibela-values__shape { position: absolute; left: -170px; bottom: -240px; width: 560px; height: 560px; border-radius: 50%; border: 100px solid #F1E3CE; }

.lalibela-values__grid { display: grid; grid-template-columns: .88fr 1.12fr; gap: 90px; align-items: center; }

.lalibela-values__visual { position: relative; height: 720px; }

.lalibela-values__visual > img { width: 100%; height: 100%; object-fit: cover; border-radius: 48% 48% 18px 18px; }

.lalibela-values__quote { position: absolute; right: -35px; bottom: 45px; background: #B96F3A; color: #FFFFFF; padding: 24px 28px; border-radius: 24px; display: flex; align-items: center; gap: 14px; box-shadow: 0 18px 45px rgba(86, 56, 32, 0.2); }

.lalibela-values__quote svg { width: 30px; height: 30px; }

.lalibela-values__quote span { font-weight: 700; line-height: 1.4; }

.lalibela-values__list { display: grid; gap: 5px; margin-top: 30px; }

.lalibela-values__list article { display: grid; grid-template-columns: 58px 1fr; gap: 18px; padding: 19px 0; border-bottom: 1px solid #D8BD98; }

.lalibela-values__list article > span { display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 50%; background: #F1E3CE; color: #34451F; }

.lalibela-values__list svg { width: 24px; height: 24px; }

.lalibela-values__list h3 { color: #563820; margin: 0 0 7px; }

.lalibela-values__list p { margin: 0; line-height: 1.55; }

/********************************************************************CTA CONTACT***************************************************************/
.lalibela-cta { background: #FBF6ED; padding: 110px 0; }

.lalibela-cta__box { position: relative; background: #F1E3CE; border-radius: 45% 45% 30px 30px/28% 28% 30px 30px; text-align: center; padding-top: 100px; padding-bottom: 90px; overflow: hidden; }

.lalibela-cta__box h2 { max-width: 780px; margin-left: auto; margin-right: auto; }

.lalibela-cta__box p { max-width: 700px; margin-left: auto; margin-right: auto; margin-bottom: 28px; }

.lalibela-cta__leaf { position: absolute; width: 200px; height: 360px; border: 2px solid rgba(89, 99, 58, 0.19); border-radius: 100% 0 100% 0; }

.lalibela-cta__leaf--left { left: -70px; bottom: -120px; transform: rotate(-25deg); }

.lalibela-cta__leaf--right { right: -70px; top: -120px; transform: rotate(155deg); }

/*******************************************************************************INFOS******************************************************/
.lalibela-info { background: #FBF6ED; padding: 50px 0 140px; }

.lalibela-info__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 80px; align-items: stretch; }

.lalibela-info__map { position: relative; min-height: 780px; border-radius: 48% 48% 25px 25px/25% 25% 25px 25px; overflow: hidden; }

.lalibela-info__map img { width: 100%; height: 100%; object-fit: cover; filter: saturate(0.72); }

.lalibela-map-pin { position: absolute; left: 50%; top: 50%; display: flex; align-items: center; justify-content: center; width: 80px; height: 80px; margin: -40px; background: #B96F3A; color: #FFFFFF; border-radius: 50%; box-shadow: 0 0 0 14px rgba(185, 111, 58, 0.25); }

.lalibela-map-pin svg { width: 34px; height: 34px; }

.lalibela-info__content { padding: 55px 0; }

.lalibela-info__address { display: flex; gap: 26px; align-items: center; background: #1f2a13; color: white !important; border-radius: 24px; padding: 20px 22px; margin: 28px 0 16px; }

.lalibela-info__address svg, .lalibela-info__modes svg { width: 30px; height: 30px; color: #5c6453; flex: 0 0 auto; }

.lalibela-info__address p, .lalibela-info__address strong, .lalibela-info__modes p, .lalibela-info__modes strong { display: block; margin: 0; }

.lalibela-info__address strong { display: block; margin-bottom: 4px; color: #e3d8c4; font-size: 1.2rem; }

.lalibela-info__modes { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }

.lalibela-info__modes > div { display: flex; gap: 12px; border: 1px solid #D8BD98; border-radius: 18px; padding: 18px; }

.lalibela-hours { margin: 80px 0; }

.lalibela-hours h3 { color: #563820; margin: 0 0 15px; }

.lalibela-hours ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; column-gap: 35px; }

.lalibela-hours li { display: flex; justify-content: space-between; gap: 15px; padding: 10px 0; border-bottom: 1px solid #D8BD98; color: #303229; }

.lalibela-hours strong { color: #34451F; }

/* --- ÉLÉMENTS PARTAGÉS --- */
* { box-sizing: border-box; }

.lalibela-wrap { width: 100%; max-width: 1340px; margin: 0 auto; padding-left: 28px; padding-right: 28px; z-index: 2; position: relative; }

.lalibela-kicker { display: inline-block; color: #B96F3A; font-family: 'WindSong'; margin-bottom: 18px; font-size: 2rem; font-weight: 600; line-height: 1; max-width: 400px; }

.lalibela-kicker--light { color: #F1E3CE; }

.lalibela-heading { max-width: 820px; margin-bottom: 52px; }

.lalibela-heading--center { text-align: center; margin-left: auto; margin-right: auto; }

.lalibela-heading--light h2, .lalibela-heading--light p { color: #FFFFFF; }

.lalibela-heading h2, .lalibela-copy h2, .lalibela-nura h2, .lalibela-values h2, .lalibela-cta h2, .lalibela-info h2 { color: #563820; line-height: 1.08; margin: 0 0 24px; font-size: 2.5rem !important; }

.lalibela-heading p, .lalibela-copy p, .lalibela-nura p, .lalibela-tech p, .lalibela-values p, .lalibela-cta p { color: #303229; line-height: 1.75; margin: 0 0 20px; }

.lalibela-actions { display: flex; flex-wrap: wrap; gap: 14px; }

.lalibela-btn { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 18px; min-height: 54px; padding: 8px 9px 8px 25px; color: #FFFFFF; text-decoration: none; background-color: #b96f3a !important; border: 1px solid #a15c31ba; border-radius: 100px; overflow: hidden; isolation: isolate; transition: color 0.35s ease, background-color 0.35s ease, border-color 0.35s ease, transform 0.35s ease; }

.lalibela-btn > span { position: relative; z-index: 2; }

.lalibela-btn-icon { position: relative; display: flex; align-items: center; justify-content: center; width: 39px; height: 39px; flex-shrink: 0; color: #34451F; background-color: #F1E3CE; border-radius: 50%; overflow: hidden; transition: color 0.35s ease, background-color 0.35s ease, transform 0.35s ease; }

.lalibela-btn-icon svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; transition: transform 0.35s ease, opacity 0.35s ease; }

/* ========================================================= PROPOSITION 1 — FLÈCHE COULISSANTE ========================================================= */
.lalibela-btn-slide:hover { background-color: #59633A; border-color: #59633A; transform: translateY(-2px); }

.lalibela-btn-slide:hover .lalibela-btn-icon svg { animation: lalibela-arrow-slide 0.55s ease; }

@keyframes lalibela-arrow-slide { 0% { transform: translateX(0);
    opacity: 1; }
  45% { transform: translateX(18px);
    opacity: 0; }
  55% { transform: translateX(-18px);
    opacity: 0; }
  100% { transform: translateX(0);
    opacity: 1; } }

/* ========================================================= PROPOSITION 6 — DOUBLE FLÈCHE ========================================================= */
.lalibela-btn-double { background-color: #B96F3A; border-color: #B96F3A; }

.lalibela-btn-double .lalibela-btn-icon { color: #563820; background-color: #FBF6ED; }

.lalibela-btn-double .lalibela-btn-icon svg { position: absolute; }

.lalibela-arrow-first { transform: translateX(0); opacity: 1; }

.lalibela-arrow-second { transform: translateX(-30px); opacity: 0; }

.lalibela-btn-double:hover { background-color: #563820; border-color: #563820; transform: translateY(-2px); }

.lalibela-btn-double:hover .lalibela-arrow-first { transform: translateX(30px); opacity: 0; }

.lalibela-btn-double:hover .lalibela-arrow-second { transform: translateX(0); opacity: 1; }

/* ========================================================= ACCESSIBILITÉ ========================================================= */
.lalibela-btn:focus-visible { outline: 3px solid #D8BD98; outline-offset: 4px; }

/* ========================================================= RESPONSIVE ========================================================= */
@media (max-width: 767px) { .lalibela-buttons { flex-direction: column; align-items: stretch; } .lalibela-btn { width: 100%; justify-content: space-between; } }

@media (prefers-reduced-motion: reduce) { .lalibela-btn, .lalibela-btn-icon, .lalibela-btn-icon svg { transition: none; animation: none !important; } }

.lalibela-text-link { display: inline-flex; align-items: center; gap: 10px; color: #34451F; font-weight: 700; text-decoration: none; border-bottom: 1px solid #59633A; padding-bottom: 5px; transition: color .3s ease,gap .3s ease; }

.lalibela-text-link:hover { color: #B96F3A; gap: 16px; }

.graphic-reveal { opacity: 0; transform: translateY(25px) scale(0.9); transition: opacity .9s ease,transform .9s ease; }

.graphic-reveal.is-visible { opacity: 1; transform: translateY(0) scale(1); }

/* --- TABLETTE --- */
@media (max-width: 991px) { .lalibela-hero { min-height: 800px; } .lalibela-hero__practical { grid-template-columns: 1fr; } .lalibela-hero__practical > div + div { border-left: 0; border-top: 1px solid rgba(255, 255, 255, 0.25); } .lalibela-intro__grid, .lalibela-nura__grid, .lalibela-values__grid, .lalibela-info__grid { grid-template-columns: 1fr; gap: 60px; } .lalibela-intro__visual { min-height: 560px; } .lalibela-assurance__grid, .lalibela-reviews__grid { grid-template-columns: repeat(2, 1fr); } .lalibela-nura__content { max-width: none; } .lalibela-nura__visual { min-height: 680px; } .lalibela-values__visual { height: 620px; max-width: 620px; width: 100%; margin: 0 auto; } .lalibela-tech__footer { align-items: flex-start; flex-wrap: wrap; } .lalibela-info__map { min-height: 540px; order: 2; } .lalibela-info__content { padding-bottom: 0; } .lalibela-service__inside ul { columns: 1; } }

/* --- MOBILE --- */
@media (max-width: 767px) { .lalibela-wrap { padding-left: 20px; padding-right: 20px; } .lalibela-hero { min-height: 900px; padding-top: 130px; padding-bottom: 55px; } .lalibela-hero__shade { background: linear-gradient(0deg, rgba(35, 47, 21, 0.96), rgba(35, 47, 21, 0.48)); } .lalibela-actions { flex-direction: column; align-items: stretch; } .lalibela-btn { width: 100%; } .lalibela-intro, .lalibela-services, .lalibela-nura, .lalibela-tech, .lalibela-values, .lalibela-reviews { padding-top: 110px; padding-bottom: 110px; } .lalibela-intro__visual { min-height: 440px; } .lalibela-organic-frame { right: 18px; } .lalibela-intro__stamp { width: 120px; height: 120px; } .lalibela-assurance { padding: 70px 0; } .lalibela-assurance__grid, .lalibela-tech__grid, .lalibela-reviews__grid { grid-template-columns: 1fr; } .lalibela-assurance__item { padding: 8px 0 25px; } .lalibela-services__botanical { width: 160px; opacity: .55; } .lalibela-service__trigger { height: 155px; } .lalibela-service__number { left: 20px; top: 20px; } .lalibela-service__title { left: 20px; bottom: 23px; right: 78px; font-size: 2rem !important; } .lalibela-service__toggle { right: 18px; width: 44px; height: 44px; } .lalibela-service__inside { padding-left: 22px; padding-right: 22px; } .lalibela-service.is-open .lalibela-service__inside { padding-top: 28px; padding-bottom: 30px; } .lalibela-nura__visual { min-height: 930px; } .lalibela-nura__image { width: 90%; height: 390px; } .lalibela-nura__cards { grid-template-columns: 1fr; right: 0; top: 350px; bottom: auto; } .lalibela-tech__card { padding: 30px 25px; min-height: 0; } .lalibela-values__visual { height: 500px; } .lalibela-values__quote { right: -8px; bottom: 25px; } .lalibela-cta { padding: 70px 0; } .lalibela-cta__box { border-radius: 90px 90px 25px 25px; padding-top: 80px; padding-bottom: 70px; } .lalibela-info { padding-bottom: 100px; } .lalibela-info__grid { gap: 35px; } .lalibela-info__modes, .lalibela-hours ul { grid-template-columns: 1fr; } .lalibela-info__map { min-height: 430px; } .lalibela-heading { margin-bottom: 38px; } }

@media (prefers-reduced-motion: reduce) { .graphic-reveal, .lalibela-btn, .lalibela-service__trigger img, .lalibela-service__panel { transition: none; } .graphic-reveal { opacity: 1; transform: none; } }

/********************************************AVIS CLIENTS********************************************************************/
/********************************************************************************** TITRE DU BLOC AVIS */
div#avis-clients.anchors { position: relative !important; top: -100px !important; visibility: hidden !important; }

div.photoTitleText { position: relative !important; width: 100% !important; max-width: 1000px !important; margin: 0 auto !important; padding: 80px 30px 40px !important; text-align: center !important; background-color: transparent !important; }

div.photoTitleText::before { display: block !important; margin-bottom: 15px !important; color: #B96F3A !important; content: "VOS TÉMOIGNAGES" !important; font-weight: 700 !important; letter-spacing: 0.16em !important; text-transform: uppercase !important; }

div.photoTitleText::after { display: block !important; width: 70px !important; height: 3px !important; margin: 25px auto 0 !important; content: "" !important; background-color: #B96F3A !important; border-radius: 999px !important; }

div.photoTitleText > div { margin: 0 !important; padding: 0 !important; color: #563820 !important; }

div.photoTitleText > div h2 { max-width: 850px !important; margin: 0 auto !important; padding: 0 !important; color: #563820 !important; line-height: 1.15 !important; }

div.photoTitleText > div h2 strong, div.photoTitleText > div h2 span { color: #B96F3A !important; }

/********************************************************************************** CONTENEUR GÉNÉRAL DES AVIS */
div.googleReviews-div { position: relative !important; width: 100% !important; margin: 0 !important; padding: 15px 0 120px !important; overflow: visible !important; }

div.googleReviews-div::before { position: absolute !important; top: 80px !important; left: -140px !important; width: 330px !important; height: 330px !important; content: "" !important; background-color: rgba(216, 189, 152, 0.22) !important; border-radius: 50% !important; pointer-events: none !important; }

div.googleReviews-div::after { position: absolute !important; right: -170px !important; bottom: -130px !important; width: 390px !important; height: 390px !important; content: "" !important; background-color: rgba(89, 99, 58, 0.09) !important; border-radius: 50% !important; pointer-events: none !important; }

/********************************************************************************** CARTE PRINCIPALE GOOGLE */
div.googleReviews-div > div.container { position: relative !important; z-index: 2 !important; width: calc(100% - 60px) !important; max-width: 1200px !important; margin: 0 auto 55px !important; padding: 0 !important; }

div.googleReviews-div > div.container > div.card { position: relative !important; margin: 0 !important; padding: 8px !important; overflow: hidden !important; background-color: #34451F !important; border: 1px solid rgba(255, 255, 255, 0.12) !important; border-radius: 30px !important; box-shadow: 0 25px 70px rgba(52, 69, 31, 0.18) !important; }

div.googleReviews-div > div.container > div.card::before { position: absolute !important; top: -120px !important; right: -60px !important; width: 290px !important; height: 290px !important; content: "" !important; border: 1px solid rgba(241, 227, 206, 0.18) !important; border-radius: 50% !important; pointer-events: none !important; }

div.googleReviews-div > div.container > div.card::after { position: absolute !important; right: 80px !important; bottom: -130px !important; width: 230px !important; height: 230px !important; content: "" !important; background-color: rgba(185, 111, 58, 0.16) !important; border-radius: 50% !important; pointer-events: none !important; }

div.googleReviews-div > div.container > div.card > div { position: relative !important; z-index: 2 !important; padding: 28px 32px !important; }

/********************************************************************************** IDENTITÉ DU SALON */
div.googleReviews-div div.d-lg-flex.align-items-lg-center { gap: 18px !important; }

div.googleReviews-div img.avatar-google-place { width: 82px !important; height: 82px !important; margin: 0 !important; padding: 6px !important; object-fit: contain !important; background-color: #FBF6ED !important; border: 3px solid #D8BD98 !important; border-radius: 50% !important; box-shadow: 0 12px 30px rgba(20, 26, 12, 0.25) !important; }

div.googleReviews-div div.align-items-lg-center h3 { margin: 0 0 8px !important; color: #FFFFFF !important; line-height: 1.2 !important; }

div.googleReviews-div div.align-items-lg-center span#place-rating { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 5px !important; color: #F1E3CE !important; }

div.googleReviews-div span#place-rating i.star { color: #D8BD98 !important; }

/********************************************************************************** BOUTON DE LA FICHE GOOGLE */
div.googleReviews-div div.justify-content-lg-end { position: relative !important; z-index: 3 !important; }

div.googleReviews-div a#maps-url { margin: 0 !important; color: #FFFFFF !important; background-color: #B96F3A !important; border-color: #B96F3A !important; box-shadow: 0 12px 30px rgba(20, 26, 12, 0.18) !important; }

div.googleReviews-div a#maps-url:hover { color: #34451F !important; background-color: #F1E3CE !important; border-color: #F1E3CE !important; }

/********************************************************************************** CARROUSEL DES AVIS */
div.googleReviews-div > div:last-child { position: relative !important; z-index: 2 !important; width: 100% !important; }

div.googleReviews-div div#google-reviews-widget { position: relative !important; width: 100% !important; max-width: 1500px !important; margin: 0 auto !important; padding: 10px 55px 40px !important; }

div.googleReviews-div div.owl-stage-outer { padding: 20px 0 35px !important; }

div.googleReviews-div div.owl-stage { display: flex !important; align-items: stretch !important; }

div.googleReviews-div div.owl-item { display: flex !important; height: auto !important; padding: 0 9px !important; }

div.googleReviews-div div.owl-item > div.card { position: relative !important; display: flex !important; flex-direction: column !important; width: 100% !important; min-height: 285px !important; margin: 0 !important; padding: 28px !important; overflow: hidden !important; background-color: #FFFFFF !important; border: 1px solid rgba(86, 56, 32, 0.12) !important; border-radius: 26px 26px 6px 26px !important; box-shadow: 0 18px 45px rgba(86, 56, 32, 0.09) !important; }

div.googleReviews-div div.owl-item > div.card::before { position: absolute !important; top: -50px !important; right: -50px !important; width: 130px !important; height: 130px !important; content: "" !important; background-color: rgba(216, 189, 152, 0.24) !important; border-radius: 50% !important; pointer-events: none !important; }

div.googleReviews-div div.owl-item > div.card::after { position: absolute !important; right: 24px !important; bottom: 17px !important; color: rgba(185, 111, 58, 0.16) !important; content: "“" !important; font-weight: 700 !important; line-height: 1 !important; pointer-events: none !important; }

/********************************************************************************** AUTEUR DE L’AVIS */
div.googleReviews-div div.owl-item div.d-flex { position: relative !important; z-index: 2 !important; justify-content: flex-start !important; margin: 0 0 22px !important; padding: 0 0 19px !important; border-bottom: 1px solid rgba(86, 56, 32, 0.1) !important; }

div.googleReviews-div img.avatar-google-reviews { width: 43px !important; height: 43px !important; margin: 0 !important; padding: 9px !important; object-fit: contain !important; background-color: #F1E3CE !important; border-radius: 50% !important; }

div.googleReviews-div div.owl-item div.d-flex > div { margin: 0 0 0 13px !important; color: #563820 !important; font-weight: 700 !important; text-align: left !important; }

div.googleReviews-div div.owl-item div.d-flex small { color: #59633A !important; font-weight: 400 !important; }

/********************************************************************************** CONTENU DES AVIS */
div.googleReviews-div div.owl-item div.card-body { position: relative !important; z-index: 2 !important; display: flex !important; flex: 1 !important; flex-direction: column !important; align-items: flex-start !important; padding: 0 !important; }

div.googleReviews-div div.owl-item div.card-body > span { display: flex !important; gap: 4px !important; margin-bottom: 17px !important; }

div.googleReviews-div div.owl-item div.card-body i.star { color: #B96F3A !important; }

div.googleReviews-div div.owl-item p.card-text { margin: 0 !important; color: #303229 !important; line-height: 1.65 !important; text-align: left !important; }

/********************************************************************************** FLÈCHES DU CARROUSEL */
div.googleReviews-div div.owl-nav { display: flex !important; align-items: center !important; justify-content: center !important; gap: 12px !important; margin-top: 5px !important; }

div.googleReviews-div div.owl-nav button.owl-prev, div.googleReviews-div div.owl-nav button.owl-next { position: relative !important; inset: auto !important; display: flex !important; align-items: center !important; justify-content: center !important; width: 50px !important; height: 50px !important; margin: 0 !important; color: #FFFFFF !important; background-color: #34451F !important; border: 1px solid #34451F !important; border-radius: 50% !important; box-shadow: none !important; transform: none !important; transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, transform 0.3s ease !important; }

div.googleReviews-div div.owl-nav button.owl-prev:hover, div.googleReviews-div div.owl-nav button.owl-next:hover { color: #FFFFFF !important; background-color: #B96F3A !important; border-color: #B96F3A !important; transform: translateY(-3px) !important; }

div.googleReviews-div div.owl-nav button.owl-prev span, div.googleReviews-div div.owl-nav button.owl-next span { display: block !important; color: inherit !important; margin-top: -4px; line-height: 0.7 !important; }

/********************************************************************************** RESPONSIVE */
@media (max-width: 991px) { div.photoTitleText { padding: 85px 25px 35px !important; } div.googleReviews-div { padding-bottom: 90px !important; } div.googleReviews-div > div.container > div.card > div { gap: 25px !important; padding: 25px !important; } div.googleReviews-div div.d-lg-flex.align-items-lg-center { justify-content: center !important; } div.googleReviews-div div.justify-content-lg-end { margin: 25px 0 0 !important; } div.googleReviews-div div#google-reviews-widget { padding-right: 25px !important; padding-left: 25px !important; } }

@media (max-width: 600px) { div.photoTitleText { padding: 70px 18px 30px !important; } div.googleReviews-div > div.container { width: calc(100% - 30px) !important; margin-bottom: 35px !important; } div.googleReviews-div > div.container > div.card { border-radius: 24px !important; } div.googleReviews-div > div.container > div.card > div { padding: 22px 16px !important; } div.googleReviews-div div.d-lg-flex.align-items-lg-center { flex-direction: column !important; } div.googleReviews-div div.align-items-lg-center span#place-rating { justify-content: center !important; } div.googleReviews-div a#maps-url { width: 100% !important; justify-content: space-between !important; } div.googleReviews-div div#google-reviews-widget { padding-right: 15px !important; padding-left: 15px !important; } div.googleReviews-div div.owl-item { padding: 0 4px !important; } div.googleReviews-div div.owl-item > div.card { min-height: 260px !important; padding: 23px !important; } }

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