.elementor-8 .elementor-element.elementor-element-a02b73b{--display:flex;}.elementor-8 .elementor-element.elementor-element-4e1c5c3{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-8 .elementor-element.elementor-element-dc44c9b{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-8 .elementor-element.elementor-element-9999d40{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-8 .elementor-element.elementor-element-01f0259{--display:flex;}.elementor-8 .elementor-element.elementor-element-fa727a1{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-8 .elementor-element.elementor-element-cc8ff2a{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-8 .elementor-element.elementor-element-161743c{--display:flex;}.elementor-8 .elementor-element.elementor-element-527b8f6{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-8 .elementor-element.elementor-element-81386d2{--display:flex;}.elementor-8 .elementor-element.elementor-element-d683f27{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-885b4a3 *//* Préloader Renaissance Végétale */

/* Conteneur plein écran */
.rv-preloader {
  position: fixed;
  inset: 0;
  background-color: #ffffff;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}

/* Contenu centré */
.rv-preloader__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  text-align: center;
}

/* Logo */
.rv-preloader__logo {
  width: 240px;
  max-width: 70vw;
  height: auto;
  opacity: 0;
  transform: translateY(12px) scale(0.92);
  animation: rvLogoReveal 1.1s ease forwards;
}

/* Bloc texte */
.rv-preloader__writing {
  opacity: 0;
  transform: translateY(8px);
  animation: rvTextReveal 0.7s ease forwards 1.1s;
}

/* Texte manuscrit */
.rv-preloader__writing-text {
  display: inline-block;
  font-family: 'Parisienne', cursive !important;
  font-size: clamp(26px, 3.7vw, 34px);
  line-height: 1.1;
  color: #6b3f2a;
  white-space: nowrap;
  letter-spacing: 0.18px;
  text-rendering: geometricPrecision;
}

/* Animations */
@keyframes rvLogoReveal {
  from {
    opacity: 0;
    transform: translateY(16px) scale(0.88);
  }
  60% {
    opacity: 1;
    transform: translateY(0) scale(1.03);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes rvTextReveal {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Disparition du préloader */
body.rv-loader-done {
  overflow: auto;
}

body.rv-loader-done .rv-preloader {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a5a52ac */:root{

--gold:#e6a33a;
--gold-dark:#c9791c;

--brown:#3f2a1d;
--cream:#f7f3eb;

--white:#ffffff;

--text-light:rgba(255,255,255,.9);

--shadow:
0 25px 70px rgba(0,0,0,.25);

}



/* =====================
RESET
===================== */


*,
*::before,
*::after{

box-sizing:border-box;

}



html,
body{

margin:0!important;

padding:0!important;

width:100%;

overflow-x:hidden;

background:#fff;

}



body{

font-family:Arial, sans-serif;

}



#page,
.site,
.site-content,
.wp-site-blocks,
main{

margin:0!important;

padding:0!important;

}





/* =====================
CONTAINER
===================== */


.rv-container{

width:min(1280px,calc(100% - 70px));

margin:auto;

}





/* =====================
HEADER GLOBAL
===================== */


.rv-site-header{

position:relative;

z-index:100;

width:100%;

background:#fff;

}



/* =====================
TOP BAR
===================== */


.rv-topbar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 42px;
    z-index: 9999;

    display: flex;
    align-items: center;

    background: #f7f3eb;
    border-bottom: 5px solid rgba(63, 42, 29, .08);
}



.rv-topbar__inner{

height:100%;

display:flex;

align-items:center;

justify-content:space-between;

}



.rv-topbar__tagline{

font-size:.78rem;

font-weight:700;

letter-spacing:.04em;

color:var(--brown);

}



.rv-topbar__info{

display:flex;

align-items:center;

gap:22px;

font-size:.82rem;

font-weight:600;

}



.rv-phone-link{

display:flex;
align-items:center;
gap:8px;
text-decoration:none;
color:#3f2a1d;
font-weight:800;
transition:.3s;

}


.rv-phone-link:hover{

color:#000;

}



.rv-phone-link:hover{

color:#23612b;

}



.rv-phone-icon{

width:17px;

height:17px;

}



.rv-hours{

color:rgba(63,42,29,.75);

}





/* =====================
LOGO AREA
===================== */


.rv-header-main{

padding:1px 0;

background:white;

    padding-top: 45px;
}





.rv-brand-wrap{

display:flex;

align-items:center;

gap:16px;

}



.rv-logo{

width:80px;

height:68px;

object-fit:contain;

}



.rv-brand-text strong{

font-family:'Cormorant Garamond',serif;

font-size:2rem;

font-weight:600;

line-height:1;

color:var(--brown);

}



.rv-brand-text span{

display:block;

margin-top:6px;

font-size:.7rem;

letter-spacing:.18em;

text-transform:uppercase;

color:rgba(63,42,29,.65);

}





/* =====================
MENU
===================== */


.rv-menu-bar{

background:white;

border-top:1px solid rgba(63,42,29,.06);

border-bottom:1px solid rgba(63,42,29,.08);

}



.rv-nav{

display:flex;

align-items:center;

gap:38px;

padding:14px 0;

}



.rv-nav a{

position:relative;

font-size:.92rem;

font-weight:600;

color:var(--brown);

text-decoration:none;

padding:5px 0;

transition:.3s;

}



.rv-nav a::after{

content:"";

position:absolute;

bottom:-5px;

left:0;

width:0;

height:2px;

background:var(--gold);

transition:.35s;

}



.rv-nav a:hover::after{

width:100%;

}





/* =====================
HERO
===================== */


.rv-hero-elegant{

position:relative;

width:100vw;

left:50%;

margin-left:-50vw;

height:calc(100vh - 155px);

min-height:650px;

overflow:hidden;

background:#15100b;

}



.rv-hero-elegant__bg{

position:absolute;

inset:0;

background:url('https://deepskyblue-wolf-693684.hostingersite.com/wp-content/uploads/2026/07/header-site-renaissance-vegetale.png')

center/cover no-repeat;

transform:scale(1.04);

}



.rv-hero-elegant__veil{

position:absolute;

inset:0;

background:

linear-gradient(
90deg,
rgba(10,8,6,.78),
rgba(20,15,10,.45),
rgba(0,0,0,.15)
);

}





.rv-hero-elegant__content{

position:relative;

z-index:2;

height:100%;

display:flex;

justify-content:center;

flex-direction:column;

max-width:850px;

color:white;

}





/* LABEL */


.rv-hero-elegant__kicker{

display:inline-flex;

align-self:flex-start;

padding:11px 18px;

border-radius:50px;

background:rgba(255,255,255,.12);

border:1px solid rgba(255,255,255,.35);

font-size:.72rem;

font-weight:800;

letter-spacing:.18em;

text-transform:uppercase;

color:white;

margin-bottom:28px;

backdrop-filter:blur(10px);

}





/* TITRE */


.rv-hero-elegant h1{

margin:0;

font-family:'Cormorant Garamond',serif;

font-size:clamp(3.4rem,5vw,5.8rem);

font-weight:500;

line-height:.95;

max-width:14ch;

letter-spacing:-.03em;

color:white;

text-shadow:

0 5px 30px rgba(0,0,0,.45);

}





/* TEXTE */


.rv-hero-elegant p{

margin:28px 0 0;

max-width:55ch;

font-size:1.08rem;

line-height:1.85;

color:rgba(255,255,255,.92);

text-shadow:

0 3px 15px rgba(0,0,0,.35);

}





/* =====================
BOUTONS
===================== */


.rv-hero-elegant__actions{

display:flex;

gap:16px;

margin-top:38px;

}



.rv-btn{

padding:16px 32px;

border-radius:50px;

font-weight:700;

text-decoration:none;

transition:.35s;

}



.rv-btn--primary{

background:

linear-gradient(
135deg,
#e6a33a,
#c9791c
);

color:white;

box-shadow:

0 15px 40px rgba(0,0,0,.35);

}



.rv-btn--ghost{

background:rgba(255,255,255,.12);

border:1px solid rgba(255,255,255,.35);

color:white;

backdrop-filter:blur(8px);

}



.rv-btn:hover{

transform:translateY(-4px);

}





/* =====================
RESPONSIVE
===================== */


@media(max-width:900px){


.rv-container{

width:calc(100% - 40px);

}



.rv-topbar{

height:auto;

}



.rv-topbar__inner{

padding:10px 0;

flex-direction:column;

align-items:flex-start;

gap:8px;

}



.rv-nav{

overflow-x:auto;

gap:25px;

}



.rv-hero-elegant{

height:calc(100vh - 180px);

}



}




@media(max-width:680px){


.rv-container{

width:calc(100% - 24px);

}



.rv-logo{

width:55px;

height:55px;

}



.rv-brand-text strong{

font-size:1.5rem;

}



.rv-nav a{

white-space:nowrap;

}



.rv-hero-elegant__content{

padding:0 0 40px;

}



.rv-hero-elegant h1{

font-size:3rem;

}



.rv-hero-elegant p{

font-size:1rem;

}



.rv-hero-elegant__actions{

flex-direction:column;

}



.rv-btn{

width:100%;

text-align:center;

}


}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d91c8a1 *//* =====================================
   SECTION CROQUIS
===================================== */

.rv-sketch{
  padding:120px 0;
  background:
    radial-gradient(circle at 20% 30%, rgba(230,163,58,.08), transparent 40%),
    radial-gradient(circle at 80% 70%, rgba(63,42,29,.06), transparent 40%),
    #f7f3eb;
  overflow:hidden;
}


/* =====================================
   GRID
===================================== */

.rv-sketch__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
  align-items:center;
}


/* =====================================
   CADRE IMAGE
===================================== */

.rv-sketch__visual{
  display:flex;
  justify-content:center;
}


.rv-sketch__frame{
  position:relative;
  width:100%;
  max-width:560px;
  aspect-ratio:4/3;

  border-radius:30px;

  background:rgba(255,255,255,.7);
  backdrop-filter:blur(14px);

  box-shadow:
    0 30px 80px rgba(0,0,0,.12),
    inset 0 1px 0 rgba(255,255,255,.5);

  overflow:hidden;
  padding:22px;

  transition:
    transform .6s ease,
    box-shadow .6s ease;
}


.rv-sketch__frame:hover{
  transform:translateY(-8px);

  box-shadow:
    0 45px 100px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.6);
}


/* =====================================
   EFFET LUMIERE
===================================== */

.rv-sketch__glow{

  position:absolute;

  width:240px;
  height:240px;

  background:
    radial-gradient(
      circle,
      rgba(230,163,58,.35),
      transparent 70%
    );

  top:-70px;
  right:-70px;

  filter:blur(45px);

  pointer-events:none;
}


/* =====================================
   LABEL
===================================== */

.rv-sketch__tag{

  display:inline-flex;

  padding:8px 14px;

  border-radius:999px;

  background:
    linear-gradient(
      135deg,
      #e6a33a,
      #d88a25
    );

  color:#fff;

  font-size:.7rem;

  font-weight:700;

  letter-spacing:.08em;

  text-transform:uppercase;

  position:relative;

  z-index:3;

  box-shadow:
    0 8px 20px rgba(0,0,0,.15);
}


/* =====================================
   SLIDER CROQUIS
===================================== */

.rv-sketch__slider{

  position:absolute;

  inset:84px 22px 22px;

  overflow:hidden;

  border-radius:22px;

  cursor:grab;

}


.rv-sketch__track{

  display:flex;

  width:max-content;

  animation:
    scrollSketch 65s linear infinite;

}


.rv-sketch__track img{

  width:420px;

  height:100%;

  object-fit:cover;

  border-radius:16px;

  margin-right:16px;

  opacity:.85;

  transition:
    transform .4s ease,
    opacity .4s ease;

}


.rv-sketch__track img:hover{

  transform:scale(1.05);

  opacity:1;

}


/* Animation boucle infinie */

@keyframes scrollSketch{

  from{
    transform:translateX(0);
  }

  to{
    transform:translateX(-50%);
  }

}


/* Pause au survol */

.rv-sketch__slider:hover 
.rv-sketch__track{

  animation-play-state:paused;

}



/* =====================================
   CONTENU TEXTE
===================================== */

.rv-sketch__content{

  max-width:560px;

}


.rv-section-kicker{

  display:inline-flex;

  padding:8px 14px;

  border-radius:999px;

  background:rgba(63,42,29,.06);

  border:1px solid rgba(63,42,29,.08);

  color:#3f2a1d;

  font-size:.75rem;

  font-weight:800;

  letter-spacing:.14em;

  text-transform:uppercase;

}



.rv-sketch__content h2{

  margin-top:20px;

  font-family:
    'Cormorant Garamond',
    serif;

  font-size:
    clamp(2.6rem,4vw,4.6rem);

  line-height:1.05;

  letter-spacing:-.03em;

  color:#3f2a1d;

}



.rv-sketch__lead{

  margin-top:20px;

  max-width:48ch;

  color:rgba(63,42,29,.82);

  font-size:1.05rem;

  line-height:1.9;

}



/* =====================================
   LISTE
===================================== */

.rv-sketch__list{

  margin:28px 0 0;

  padding:0;

  list-style:none;

  display:grid;

  gap:14px;

}



.rv-sketch__list li{

  position:relative;

  padding-left:30px;

  color:#3f2a1d;

  line-height:1.7;

}



.rv-sketch__list li:before{

  content:"";

  position:absolute;

  left:0;

  top:.55em;

  width:12px;

  height:12px;

  border-radius:50%;


  background:
    linear-gradient(
      135deg,
      #e6a33a,
      #d88a25
    );


  box-shadow:
    0 0 0 5px rgba(230,163,58,.15);

}



/* =====================================
   BOUTON
===================================== */

.rv-sketch__content .rv-btn {
    display: inline-block;
    margin-top: 45px;
}

.rv-btn--primary {
    transition:
        transform .4s ease,
        box-shadow .4s ease;
}

.rv-btn--primary:hover {
    transform: translateY(-3px);

    box-shadow:
        0 12px 15px rgba(0,0,0,.15);
}



/* =====================================
   ANIMATION APPARITION SCROLL
===================================== */

.rv-animate{

  opacity:0;

  transform:translateY(40px);

  transition:
    opacity .9s ease,
    transform .9s cubic-bezier(.16,1,.3,1);

}



.rv-animate.is-visible{

  opacity:1;

  transform:none;

}



/* =====================================
   RESPONSIVE TABLETTE
===================================== */

@media(max-width:900px){


  .rv-sketch{

    padding:90px 0;

  }


  .rv-sketch__grid{

    grid-template-columns:1fr;

    gap:40px;

  }


  .rv-sketch__content{

    max-width:none;

  }


}



/* =====================================
   RESPONSIVE MOBILE
===================================== */

@media(max-width:680px){


  .rv-sketch{

    padding:70px 0;

  }


  .rv-sketch__frame{

    aspect-ratio:auto;

    min-height:360px;

    padding:18px;

  }


  .rv-sketch__slider{

    inset:78px 18px 18px;

  }


  .rv-sketch__track img{

    width:300px;

  }


  .rv-sketch__content h2{

    font-size:2.8rem;

  }


}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-dbb7aa1 */.rv-section-before-project-after.rv-chic{
  padding:88px 0;
  background:#fff;
  color:#17120c;
}

.rv-section-before-project-after.rv-chic .rv-container{
  width:min(1240px, calc(100% - 32px));
  margin:0 auto;
}

.rv-section-before-project-after.rv-chic .rv-bpa-head{
  max-width:860px;
  margin-bottom:24px;
}

.rv-section-before-project-after.rv-chic .rv-kicker{
  margin:0 0 10px;
  display:inline-flex;
  padding:7px 11px;
  border-radius:999px;
  background:rgba(47,133,90,.08);
  color:#2f855a;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.rv-section-before-project-after.rv-chic .rv-bpa-head h2{
  margin:0;
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.1rem,3.2vw,4rem);
  line-height:.92;
  letter-spacing:-.04em;
  color:#17120c;
}

.rv-section-before-project-after.rv-chic .rv-text{
  margin:12px 0 0;
  max-width:72ch;
  line-height:1.78;
  color:rgba(23,18,12,.70);
}

.rv-section-before-project-after.rv-chic .rv-bpa-stage{
  position:relative;
  overflow:hidden;
  height:clamp(220px, 34vw, 360px);
  border-radius:28px;
  border:1px solid rgba(23,18,12,.06);
  box-shadow:0 14px 30px rgba(23,18,12,.05);
  background:#f7f7f5;
  user-select:none;
  touch-action:none;
  cursor:ew-resize;
}

.rv-section-before-project-after.rv-chic .rv-bpa-layer{
  position:absolute;
  inset:0;
}

.rv-section-before-project-after.rv-chic .rv-bpa-layer img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  pointer-events:none;
}

.rv-section-before-project-after.rv-chic .rv-bpa-after{
  z-index:1;
}

.rv-section-before-project-after.rv-chic .rv-bpa-before{
  z-index:3;
  clip-path:inset(0 48% 0 0);
  transition:clip-path .08s linear;
}

.rv-section-before-project-after.rv-chic .rv-bpa-badge{
  position:absolute;
  top:12px;
  left:12px;
  z-index:4;
  display:inline-flex;
  padding:7px 11px;
  border-radius:999px;
  background:rgba(255,255,255,.90);
  backdrop-filter:blur(10px);
  border:1px solid rgba(23,18,12,.07);
  font-size:.66rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#17120c;
}

.rv-section-before-project-after.rv-chic .rv-bpa-handle{
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:48px;
  height:100%;
  z-index:5;
  pointer-events:none;
}

.rv-section-before-project-after.rv-chic .rv-bpa-handle::before{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  width:1px;
  height:100%;
  background:rgba(255,255,255,.95);
  box-shadow:0 0 0 1px rgba(23,18,12,.16);
  transform:translateX(-50%);
}

.rv-section-before-project-after.rv-chic .rv-bpa-handle span{
  position:absolute;
  top:50%;
  left:50%;
  width:48px;
  height:48px;
  border-radius:50%;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(23,18,12,.08);
  transform:translate(-50%,-50%);
  box-shadow:0 8px 18px rgba(23,18,12,.10);
}

.rv-section-before-project-after.rv-chic .rv-bpa-handle span::before,
.rv-section-before-project-after.rv-chic .rv-bpa-handle span::after{
  content:"";
  position:absolute;
  top:50%;
  width:9px;
  height:9px;
  border-top:2px solid #17120c;
  border-right:2px solid #17120c;
}

.rv-section-before-project-after.rv-chic .rv-bpa-handle span::before{
  left:12px;
  transform:translateY(-50%) rotate(-135deg);
}

.rv-section-before-project-after.rv-chic .rv-bpa-handle span::after{
  right:12px;
  transform:translateY(-50%) rotate(45deg);
}

.rv-section-before-project-after.rv-chic .rv-bpa-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-top:16px;
}

.rv-section-before-project-after.rv-chic .rv-bpa-card{
  padding:18px;
  border-radius:20px;
  background:#fff;
  border:1px solid rgba(23,18,12,.07);
  box-shadow:0 10px 20px rgba(23,18,12,.04);
}

.rv-section-before-project-after.rv-chic .rv-bpa-card span{
  display:inline-flex;
  width:38px;
  height:38px;
  align-items:center;
  justify-content:center;
  margin-bottom:10px;
  border-radius:50%;
  background:rgba(47,133,90,.08);
  color:#2f855a;
  font-weight:800;
}

.rv-section-before-project-after.rv-chic .rv-bpa-card h3{
  margin:0 0 8px;
  font-size:1.02rem;
  color:#17120c;
}

.rv-section-before-project-after.rv-chic .rv-bpa-card p{
  margin:0;
  line-height:1.68;
  color:rgba(23,18,12,.70);
}

@media (max-width: 900px){
  .rv-section-before-project-after.rv-chic .rv-bpa-stage{
    height:300px;
  }

  .rv-section-before-project-after.rv-chic .rv-bpa-cards{
    grid-template-columns:1fr;
  }
}

@media (max-width: 520px){
  .rv-section-before-project-after.rv-chic{
    padding:72px 0;
  }

  .rv-section-before-project-after.rv-chic .rv-bpa-stage{
    height:240px;
    border-radius:22px;
  }

  .rv-section-before-project-after.rv-chic .rv-bpa-badge{
    top:10px;
    left:10px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7ce69d5 */.sep-memory{

background:#f5f1e8;

overflow:hidden;

color:#3d3025;

}



/* VIDEO */

.sep-video{

height:90vh;

min-height:650px;

position:relative;

display:flex;

align-items:center;

justify-content:center;

overflow:hidden;

}


.sep-video video{

position:absolute;

width:100%;
height:100%;

object-fit:cover;

}



.sep-overlay{

position:absolute;

inset:0;

background:
linear-gradient(
180deg,
rgba(20,15,10,.35),
rgba(20,15,10,.65)
);

}



.sep-hero-text{

position:relative;

z-index:2;

max-width:900px;

text-align:center;

color:white;

padding:30px;

}



.sep-kicker{

display:inline-block;

padding:10px 18px;

border-radius:40px;

background:rgba(255,255,255,.15);

backdrop-filter:blur(10px);

letter-spacing:.15em;

font-size:.75rem;

text-transform:uppercase;

}



.sep-hero-text h2{

font-family:
"Cormorant Garamond",
serif;

font-size:
clamp(3rem,6vw,6rem);

line-height:1;

margin:25px 0;

font-weight:500;

}



.sep-hero-text p{

font-size:1.3rem;

max-width:600px;

margin:auto;

line-height:1.7;

}



/* CONTAINER */

.sep-container{

max-width:1200px;

margin:auto;

padding:120px 30px;

}



/* INTRO */


.sep-intro{

display:grid;

grid-template-columns:1fr 1fr;

gap:80px;

align-items:center;

}



.sep-text h3{

font-family:
"Cormorant Garamond",
serif;

font-size:4rem;

line-height:1;

margin-bottom:25px;

}



.sep-text p{

font-size:1.15rem;

line-height:1.9;

}



.sep-text blockquote{

margin-top:40px;

padding-left:30px;

border-left:2px solid #c78b35;

font-family:
"Cormorant Garamond",
serif;

font-size:2rem;

font-style:italic;

}



/* IMAGES */

.sep-images{

position:relative;

height:600px;

}



.sep-img{

position:absolute;

object-fit:cover;

border-radius:30px;

box-shadow:
0 30px 80px rgba(0,0,0,.15);

}



.img-one{

width:75%;

height:430px;

top:0;

right:0;

}



.img-two{

width:55%;

height:330px;

bottom:0;

left:0;

border:12px solid #f5f1e8;

}



/* VALUES */


.sep-values{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

margin-top:120px;

}



.sep-card{

background:white;

padding:45px 35px;

border-radius:30px;

transition:.5s;

position:relative;

overflow:hidden;

}



.sep-card:hover{

transform:translateY(-10px);

box-shadow:
0 30px 70px rgba(0,0,0,.12);

}



.sep-card span{

font-size:.8rem;

letter-spacing:.2em;

color:#b07a2c;

}



.sep-card h4{

font-family:
"Cormorant Garamond",
serif;

font-size:3rem;

margin:20px 0;

}



.sep-card p{

line-height:1.8;

}





/* ANIMATION */

.sep-memory .sep-card,
.sep-images,
.sep-text{

opacity:0;

transform:translateY(50px);

transition:
1s cubic-bezier(.16,1,.3,1);

}



.sep-memory.active .sep-card,
.sep-memory.active .sep-images,
.sep-memory.active .sep-text{

opacity:1;

transform:none;

}




/* MOBILE */

@media(max-width:900px){


.sep-intro{

grid-template-columns:1fr;

}


.sep-text h3{

font-size:3rem;

}


.sep-images{

height:450px;

}


.sep-values{

grid-template-columns:1fr;

}


.sep-video{

height:80vh;

}


}

.sep-video .sep-hero-text h2{
  color:#ffffff !important;
}

.sep-video .sep-hero-text,
.sep-video .sep-hero-text h2,
.sep-video .sep-hero-text p,
.sep-video .sep-kicker{
  color:#ffffff !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-00dbd0e *//* ======================================================
   ROBOT TONDEUSE
====================================================== */

:root{
    
    --white:#ffffff;
    --text:#3f2a1d;
    --text-light:#6c5a49;
    --accent:#d88a25;
    --shadow:0 25px 70px rgba(0,0,0,.10);
    --radius:32px;
}

/* RESET */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

.robot-section{
    background:var(--bg);
    padding:120px 0;
    color:var(--text);
    overflow:hidden;
}

.robot-container{
    width:min(1200px,92%);
    margin:auto;
}

/* ======================================================
   HEADER
====================================================== */

.robot-header{
    text-align:center;
    max-width:820px;
    margin:auto;
}

.robot-kicker{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 18px;
    border-radius:50px;
    background:rgba(63,42,29,.08);
    font-size:.78rem;
    letter-spacing:.18em;
    text-transform:uppercase;
    font-weight:700;
}

.robot-header h2{
    margin:28px 0;
    font-family:"Cormorant Garamond",serif;
    font-size:clamp(3rem,5vw,5.2rem);
    line-height:1;
}

.robot-header p{
    max-width:720px;
    margin:auto;
    font-size:1.1rem;
    line-height:1.9;
    color:var(--text-light);
}

/* ======================================================
   PARTENAIRES
====================================================== */

.robot-brands{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:35px;
    margin:90px 0;
}

.brand-card{
    background:#fff;
    border-radius:28px;
    padding:45px;
    text-align:center;
    box-shadow:var(--shadow);
    transition:.45s ease;
}

.brand-card:hover{
    transform:translateY(-8px);
    box-shadow:0 35px 80px rgba(0,0,0,.14);
}

.brand-card img{
    width:auto;
    height:62px;
    max-width:180px;
    object-fit:contain;
    margin-bottom:28px;
    transition:.45s;
}

.brand-card:hover img{
    transform:scale(1.05);
}

.brand-card p{
    line-height:1.8;
    color:var(--text-light);
}

/* ======================================================
   VIDEO + TEXTE
====================================================== */

.robot-benefits{
    display:grid;
    grid-template-columns:480px 1fr;
    gap:90px;
    align-items:center;
    margin-top:110px;
}

/* VIDEO */

.robot-image{
    display:flex;
    justify-content:center;
    align-items:center;
}

.robot-image video{
    width:100%;
    height:640px;
    object-fit:cover;
    border-radius:35px;
    display:block;
    box-shadow:
        0 30px 80px rgba(0,0,0,.18);
    transition:transform .7s ease;
}

.robot-image:hover video{
    transform:scale(1.02);
}

/* TEXTE */

.robot-content h3{
    font-family:"Cormorant Garamond",serif;
    font-size:clamp(3rem,4vw,4.3rem);
    line-height:1.05;
    margin-bottom:35px;
}

.robot-content>p{
    line-height:1.9;
    color:var(--text-light);
    margin-bottom:45px;
}

.robot-content ul{
    list-style:none;
}

.robot-content li{
    position:relative;
    padding-left:35px;
    margin-bottom:30px;
}

.robot-content li::before{

    content:"";

    position:absolute;

    left:0;

    top:8px;

    width:12px;

    height:12px;

    border-radius:50%;

    background:var(--accent);

}

.robot-content strong{

    display:block;

    font-size:1.08rem;

    margin-bottom:8px;

}

.robot-content span{

    color:var(--text-light);

    line-height:1.8;

}

/* ======================================================
   CARTES
====================================================== */

.robot-cards{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

    margin-top:130px;

}

.robot-cards article{

    background:#fff;

    border-radius:30px;

    padding:45px 35px;

    box-shadow:var(--shadow);

    transition:.45s ease;

}

.robot-cards article:hover{

    transform:translateY(-10px);

    box-shadow:0 35px 80px rgba(0,0,0,.14);

}

.robot-cards span{

    display:block;

    color:var(--accent);

    font-weight:700;

    letter-spacing:.18em;

}

.robot-cards h4{

    margin:22px 0;

    font-family:"Cormorant Garamond",serif;

    font-size:2.3rem;

}

.robot-cards p{

    color:var(--text-light);

    line-height:1.8;

}

/* ======================================================
   ANIMATION
====================================================== */

.reveal{

    opacity:0;

    transform:translateY(60px);

    transition:
        opacity .9s ease,
        transform .9s ease;

}

.reveal.active{

    opacity:1;

    transform:none;

}

/* ======================================================
   TABLETTE
====================================================== */

@media(max-width:1100px){

.robot-benefits{

grid-template-columns:400px 1fr;

gap:60px;

}

.robot-cards{

grid-template-columns:repeat(2,1fr);

}

}

/* ======================================================
   MOBILE
====================================================== */

@media(max-width:900px){

.robot-section{

padding:80px 0;

}

.robot-brands,

.robot-benefits,

.robot-cards{

grid-template-columns:1fr;

}

.robot-benefits{

gap:50px;

margin-top:70px;

}

.robot-image video{

height:420px;

max-width:100%;

}

.robot-header h2{

font-size:3rem;

}

.robot-content h3{

font-size:2.7rem;

}

.robot-cards{

margin-top:80px;

}

}

@media(max-width:600px){

.robot-container{

width:92%;

}

.brand-card,

.robot-cards article{

padding:35px 25px;

}

.robot-image video{

height:350px;

border-radius:25px;

}

.robot-content h3{

font-size:2.2rem;

}

.robot-cards h4{

font-size:2rem;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3bcd5f2 */.rv-section-calculator{
  padding:110px 0;
  background:
    radial-gradient(circle at top left, rgba(47,133,90,.06), transparent 18%),
    radial-gradient(circle at right center, rgba(239,181,84,.08), transparent 22%),
    #fff;
  color:#17120c;
  box-sizing:border-box;
}

.rv-section-calculator .rv-container{
  width:min(1440px, calc(100% - 32px));
  margin:0 auto;
  box-sizing:border-box;
}

.rv-calc-head{
  max-width:860px;
  margin-bottom:28px;
}

.rv-kicker{
  margin:0 0 12px;
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(30,23,12,.06);
  background:rgba(30,23,12,.04);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#1e170c;
}

.rv-calc-head h2{
  margin:0;
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.4rem,3.6vw,4.6rem);
  line-height:.95;
  letter-spacing:-.04em;
  color:#17120c;
}

.rv-text{
  margin:14px 0 0;
  color:rgba(23,18,12,.72);
  line-height:1.85;
  font-size:1rem;
  max-width:68ch;
}

.rv-calc-layout{
  display:grid;
  gap:18px;
  align-items:start;
}

.rv-calc-image{
  overflow:hidden;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(23,18,12,.08);
  box-shadow:0 18px 42px rgba(23,18,12,.06);
}

.rv-calc-image img{
  width:100%;
  height:460px;
  display:block;
  object-fit:cover;
}

.rv-stats-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.rv-stat-card{
  padding:18px;
  border-radius:20px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(23,18,12,.08);
  box-shadow:0 12px 24px rgba(23,18,12,.04);
}

.rv-stat-card span{
  display:block;
  margin-bottom:8px;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(23,18,12,.58);
}

.rv-stat-card strong{
  display:block;
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2rem,2.6vw,2.7rem);
  line-height:1;
  color:#17120c;
}

.rv-calc-card{
  display:block;
}

.rv-calculator{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:14px;
  align-items:start;
  width:100%;
  padding:14px;
  border-radius:24px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(23,18,12,.08);
  box-shadow:0 18px 40px rgba(23,18,12,.05);
  box-sizing:border-box;
}

.rv-calc-panel,
.rv-calc-results{
  width:100%;
  min-width:0;
  padding:18px;
  border-radius:20px;
  background:rgba(255,255,255,.9);
  border:1px solid rgba(23,18,12,.06);
}

.rv-label{
  margin-bottom:12px;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(23,18,12,.6);
}

.rv-control{
  display:block;
  margin-bottom:10px;
  padding:14px;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(23,18,12,.06);
}

.rv-control-row{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
  color:#1e170c;
}

.rv-control-row span{
  font-weight:700;
  opacity:.75;
}

.rv-control-row strong{
  font-size:.96rem;
  line-height:1.2;
  text-align:right;
}

.rv-control input[type="range"]{
  width:100%;
  appearance:none;
  -webkit-appearance:none;
  background:transparent;
  height:10px;
  border-radius:999px;
  outline:none;
  cursor:pointer;
}

.rv-control input[type="range"]::-webkit-slider-runnable-track{
  height:10px;
  border-radius:999px;
  background:linear-gradient(90deg,#2f855a 0%, #2f855a 50%, rgba(30,23,12,.12) 50%, rgba(30,23,12,.12) 100%);
}

.rv-control input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none;
  appearance:none;
  width:22px;
  height:22px;
  margin-top:-6px;
  border-radius:50%;
  background:#fff;
  border:3px solid #2f855a;
  box-shadow:0 6px 14px rgba(47,133,90,.22);
}

.rv-control input[type="range"]::-moz-range-track{
  height:10px;
  border-radius:999px;
  background:linear-gradient(90deg,#2f855a 0%, #2f855a 50%, rgba(30,23,12,.12) 50%, rgba(30,23,12,.12) 100%);
}

.rv-control input[type="range"]::-moz-range-thumb{
  width:22px;
  height:22px;
  border-radius:50%;
  background:#fff;
  border:3px solid #2f855a;
  box-shadow:0 6px 14px rgba(47,133,90,.22);
}

.rv-control input[type="range"]:focus{
  outline:none;
}

.rv-calc-results{
  display:grid;
  gap:10px;
}

.rv-score-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}

.rv-score{
  padding:18px;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(23,18,12,.06);
}

.rv-score-big{
  min-height:178px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.rv-score span{
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(23,18,12,.6);
}

.rv-score strong{
  display:block;
  margin-top:6px;
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.4rem,3.8vw,3.9rem);
  line-height:.9;
  color:#1e170c;
}

.rv-score em{
  margin-top:10px;
  font-style:normal;
  line-height:1.65;
  color:rgba(23,18,12,.7);
}

.rv-score-accent{
  background:rgba(47,133,90,.08);
  border-color:rgba(47,133,90,.14);
}

@media (max-width: 1100px){
  .rv-calculator{
    grid-template-columns:1fr;
  }

  .rv-score-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 680px){
  .rv-section-calculator{
    padding:84px 0;
  }

  .rv-calc-image img{
    height:240px;
  }

  .rv-calc-panel,
  .rv-calc-results{
    padding:16px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-bcaf803 */.water-section{

background:#f4f1e8;

padding:120px 0;

color:#3f2a1d;

}


.water-container{

max-width:1200px;

width:92%;

margin:auto;

}



/* HEADER */


.water-header{

text-align:center;

max-width:850px;

margin:auto;

}


.water-kicker{

display:inline-block;

padding:8px 18px;

background:rgba(63,42,29,.08);

border-radius:50px;

font-size:.75rem;

font-weight:700;

letter-spacing:.15em;

text-transform:uppercase;

}



.water-header h2{

font-family:"Cormorant Garamond",serif;

font-size:clamp(3rem,5vw,5rem);

line-height:1;

margin:25px 0;

}



.water-header p{

font-size:1.15rem;

line-height:1.8;

color:#6b5948;

}



/* IMAGE TEXTE */


.water-content{

display:grid;

grid-template-columns:520px 1fr;

gap:90px;

align-items:center;

margin-top:100px;

}



.water-image img{

width:100%;

height:620px;

object-fit:cover;

border-radius:35px;

box-shadow:0 30px 80px rgba(0,0,0,.15);

transition:.8s;

}



.water-image:hover img{

transform:scale(1.03);

}



/* TEXTE */


.water-text h3{

font-family:"Cormorant Garamond",serif;

font-size:3.5rem;

line-height:1.05;

margin-bottom:30px;

}



.water-text>p{

line-height:1.8;

color:#665546;

}



.water-text ul{

list-style:none;

padding:0;

margin-top:40px;

}



.water-text li{

position:relative;

padding-left:35px;

margin-bottom:28px;

}



.water-text li:before{

content:"";

position:absolute;

left:0;

top:8px;

width:12px;

height:12px;

border-radius:50%;

background:#6c9b55;

}



.water-text strong{

display:block;

font-size:1.1rem;

}



.water-text span{

display:block;

color:#665546;

margin-top:8px;

line-height:1.7;

}



/* CARTES */


.water-cards{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

margin-top:120px;

}



.water-cards article{

background:white;

padding:45px 35px;

border-radius:30px;

box-shadow:0 25px 70px rgba(0,0,0,.08);

transition:.5s;

}



.water-cards article:hover{

transform:translateY(-10px);

}



.water-cards span{

color:#6c9b55;

font-weight:bold;

letter-spacing:.2em;

}



.water-cards h4{

font-family:"Cormorant Garamond",serif;

font-size:2.4rem;

margin:20px 0;

}



.water-cards p{

line-height:1.8;

color:#665546;

}



/* ANIMATION */


.reveal{

opacity:0;

transform:translateY(50px);

transition:1s ease;

}


.reveal.active{

opacity:1;

transform:none;

}



/* MOBILE */


@media(max-width:900px){


.water-content{

grid-template-columns:1fr;

gap:50px;

}



.water-image img{

height:420px;

}



.water-text h3{

font-size:2.7rem;

}



.water-cards{

grid-template-columns:1fr;

}



}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0bd4810 */.garden-section{


padding:100px 0;

}



.garden-container{

max-width:1240px;
width:90%;
margin:auto;

}



/* HEADER */

.garden-header{

max-width:780px;
margin-bottom:70px;

}



.garden-header h2{

font-family:"Cormorant Garamond",serif;
font-size:clamp(3rem,5vw,5rem);
line-height:.95;
margin:20px 0;

}



.garden-header p{

font-size:1.1rem;
line-height:1.7;
max-width:650px;

}



/* GRILLE */

.garden-projects{

display:grid;
grid-template-columns:repeat(2,1fr);
gap:45px;

}



/* IMAGE */


.garden-image{

height:520px;

}



.garden-image img{

width:100%;
height:100%;
object-fit:cover;

}



/* TEXTE */


.garden-meta{

padding-top:30px;

}



.garden-meta h3{

font-size:2.6rem;
line-height:1.05;
margin:15px 0;

}



.garden-meta p{

font-size:1rem;
line-height:1.7;

min-height:auto;

}



/* DETAILS */


.garden-services{

margin-top:30px;
padding-top:25px;

gap:15px;

}



.garden-services strong{

font-size:.95rem;

}


.garden-services span{

font-size:.85rem;

}



/* ANIMATION */

.reveal{

opacity:0;
transform:translateY(25px);

transition:.8s ease;

}



.reveal.active{

opacity:1;
transform:none;

}




@media(max-width:900px){


.garden-section{

padding:70px 0;

}


.garden-header{

margin-bottom:50px;

}


.garden-projects{

grid-template-columns:1fr;

gap:70px;

}


.garden-image{

height:430px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5cf628b */.rv-section-contact{
  padding:104px 0;
  background:#fcfcfa;
  color:#17120c;
}

.rv-section-contact .rv-container{
  width:min(1320px, calc(100% - 32px));
  margin:0 auto;
}

.rv-contact-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:28px;
  align-items:stretch;
}

.rv-contact-copy{
  padding:26px 0;
  max-width:560px;
}

.rv-kicker{
  margin:0 0 14px;
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(47,133,90,.08);
  color:#2f855a;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.rv-contact-copy h2{
  margin:0;
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.8rem,4.3vw,5rem);
  line-height:.88;
  letter-spacing:-.05em;
}

.rv-contact-copy .rv-lead{
  margin:18px 0 0;
  font-size:1.08rem;
  line-height:1.9;
  color:rgba(23,18,12,.78);
  max-width:42ch;
}

.rv-contact-info{
  display:grid;
  gap:12px;
  margin-top:28px;
}

.rv-contact-item{
  display:block;
  padding:18px 20px;
  border-radius:20px;
  background:#fff;
  border:1px solid rgba(23,18,12,.07);
  box-shadow:0 10px 22px rgba(23,18,12,.04);
  text-decoration:none;
  color:inherit;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.rv-contact-item:hover{
  transform:translateY(-2px);
  border-color:rgba(47,133,90,.18);
  box-shadow:0 16px 32px rgba(23,18,12,.06);
}

.rv-contact-item span{
  display:block;
  margin-bottom:6px;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#2f855a;
}

.rv-contact-item strong{
  font-size:1rem;
  line-height:1.5;
  color:#17120c;
}

.rv-contact-form-wrap{
  padding:22px;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(23,18,12,.07);
  box-shadow:0 18px 42px rgba(23,18,12,.06);
}

.rv-contact-form{
  display:grid;
  gap:14px;
}

.rv-field-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.rv-form-field{
  display:flex;
  flex-direction:column;
  gap:10px;
  width:100%;
}

.rv-form-field span{
  display:block;
  margin:0;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(23,18,12,.60);
  line-height:1.2;
}

.rv-contact-form input,
.rv-contact-form select,
.rv-contact-form textarea{
  width:100%;
  box-sizing:border-box;
  margin:0;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(23,18,12,.14) !important;
  background:#fff !important;
  color:#17120c !important;
  font:inherit;
  outline:none !important;
  box-shadow:none !important;
  -webkit-text-fill-color:#17120c;
}

.rv-contact-form input::placeholder,
.rv-contact-form textarea::placeholder{
  color:rgba(23,18,12,.72) !important;
  opacity:1 !important;
}

.rv-contact-form input:focus,
.rv-contact-form select:focus,
.rv-contact-form textarea:focus{
  background:#fff !important;
  color:#17120c !important;
  border-color:#2f855a !important;
  box-shadow:0 0 0 3px rgba(47,133,90,.10) !important;
  outline:none !important;
}

.rv-contact-form select{
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
}

.rv-contact-form select option{
  color:#17120c;
  background:#fff;
}

.rv-contact-form textarea{
  min-height:160px;
  resize:vertical;
}

.rv-btn-contact{
  margin-top:6px;
  padding:15px 20px;
  border:0;
  border-radius:999px;
  background:#17120c;
  color:#fff;
  font-weight:800;
  letter-spacing:.06em;
  cursor:pointer;
  transition:transform .2s ease, background .2s ease;
}

.rv-btn-contact:hover{
  transform:translateY(-2px);
  background:#2f855a;
}

@media (max-width: 900px){
  .rv-contact-grid{
    grid-template-columns:1fr;
  }

  .rv-contact-copy{
    padding:0;
    max-width:none;
  }
}

@media (max-width: 520px){
  .rv-section-contact{
    padding:82px 0;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-60757da */.rv-footer-hero{
  width:100vw;
  max-width:none;
  position:relative;
  left:50%;
  right:50%;
  margin-left:-50vw;
  margin-right:-50vw;
  color:#fff;
}

.rv-footer-hero-inner{
  width:100%;
  padding:42px 0 16px;
  background:
    radial-gradient(circle at top left, rgba(47,133,90,.08), transparent 18%),
    radial-gradient(circle at bottom right, rgba(214,158,46,.05), transparent 18%),
    linear-gradient(180deg, #0f0c08 0%, #17120c 100%);
  box-sizing:border-box;
}

.rv-footer-hero .rv-container{
  width:min(1800px, calc(100% - 64px));
  margin:0 auto;
  box-sizing:border-box;
}

.rv-footer-top{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:32px;
  align-items:start;
  padding-bottom:16px;
  border-bottom:1px solid rgba(255,255,255,.10);
}

.rv-footer-brand{
  max-width:720px;
}

.rv-footer-logo{
  display:inline-flex;
  align-items:center;
  margin-bottom:10px;
  text-decoration:none;
}

.rv-footer-logo img{
  display:block;
  width:auto;
  max-width:150px;
  max-height:56px;
  object-fit:contain;
}

.rv-kicker{
  margin:0 0 8px;
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#e8e2d7;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.rv-footer-brand h2{
  margin:0;
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(1.95rem,3vw,4rem);
  line-height:.92;
  letter-spacing:-.05em;
  color:#fff;
}

.rv-footer-text{
  margin:10px 0 0;
  max-width:54ch;
  line-height:1.62;
  color:rgba(255,255,255,.70);
  font-size:.96rem;
}

.rv-footer-links{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
  align-self:start;
}

.rv-footer-col{
  padding:14px 14px 10px;
  border-radius:16px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  backdrop-filter:blur(8px);
}

.rv-footer-col h3{
  margin:0 0 8px;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#d7cfbf;
}

.rv-footer-col a,
.rv-footer-col span{
  display:block;
  margin:0 0 6px;
  color:rgba(255,255,255,.80);
  text-decoration:none;
  line-height:1.45;
  transition:color .2s ease, transform .2s ease;
  font-size:.92rem;
}

.rv-footer-col a:hover{
  color:#9ad7b0;
  transform:translateX(2px);
}

.rv-footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding-top:12px;
  font-size:.84rem;
  color:rgba(255,255,255,.58);
}

.rv-footer-bottom p{
  margin:0;
}

.rv-footer-socials{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.rv-footer-socials a{
  color:rgba(255,255,255,.68);
  text-decoration:none;
}

.rv-footer-socials a:hover{
  color:#fff;
}

@media (max-width: 1100px){
  .rv-footer-hero-inner{
    padding:36px 0 14px;
  }

  .rv-footer-hero .rv-container{
    width:calc(100% - 32px);
  }

  .rv-footer-top{
    grid-template-columns:1fr;
    gap:18px;
  }

  .rv-footer-links{
    grid-template-columns:1fr 1fr;
  }

  .rv-footer-brand{
    max-width:none;
  }
}

@media (max-width: 520px){
  .rv-footer-hero-inner{
    padding:30px 0 14px;
  }

  .rv-footer-hero .rv-container{
    width:calc(100% - 20px);
  }

  .rv-footer-logo img{
    max-width:130px;
    max-height:50px;
  }

  .rv-footer-brand h2{
    font-size:clamp(1.8rem,9vw,2.7rem);
  }

  .rv-footer-text{
    font-size:.94rem;
  }

  .rv-footer-links{
    grid-template-columns:1fr;
  }

  .rv-footer-col{
    padding:12px;
  }

  .rv-footer-bottom{
    flex-direction:column;
    align-items:flex-start;
    gap:8px;
  }
}/* End custom CSS */