.elementor-kit-6{--e-global-color-primary:#0F1B2D;--e-global-color-secondary:#070E1C;--e-global-color-text:#1A2238;--e-global-color-accent:#C9A24A;--e-global-color-885be52:#04090F;--e-global-color-9a5ce5d:#16243F;--e-global-color-834482a:#C9A24A;--e-global-color-fdb914c:#E6C97A;--e-global-color-5099b9d:#A8842F;--e-global-color-8aac9f2:#F3ECDD;--e-global-color-720e11b:#E4D8BF;--e-global-color-78aa1bc:#FBF8F1;--e-global-color-5ebfdbf:#EEE7D8;--e-global-color-42b6b28:#6A7081;--e-global-color-afabefa:#7A746A;--e-global-color-be37228:#FBF8F1;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-size:88px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-line-height:88px;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-size:16px;--e-global-typography-secondary-font-weight:300;--e-global-typography-secondary-line-height:27px;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:15px;--e-global-typography-text-font-weight:300;--e-global-typography-text-line-height:24px;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:12px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:12px;--e-global-typography-accent-letter-spacing:2px;--e-global-typography-a5bf28a-font-family:"Inter";--e-global-typography-a5bf28a-font-size:16px;--e-global-typography-a5bf28a-font-weight:300;--e-global-typography-a5bf28a-line-height:27px;--e-global-typography-92dd381-font-family:"Cormorant Garamond";--e-global-typography-92dd381-font-size:96px;--e-global-typography-92dd381-font-weight:400;--e-global-typography-92dd381-line-height:91px;--e-global-typography-92dd381-letter-spacing:-3px;--e-global-typography-4bb7569-font-family:"Cormorant Garamond";--e-global-typography-4bb7569-font-size:136px;--e-global-typography-4bb7569-font-weight:400;--e-global-typography-4bb7569-line-height:128px;--e-global-typography-4bb7569-letter-spacing:-4px;--e-global-typography-1e0b002-font-family:"Cormorant";--e-global-typography-1e0b002-font-size:88px;--e-global-typography-1e0b002-font-weight:400;--e-global-typography-1e0b002-line-height:88px;--e-global-typography-1e0b002-letter-spacing:-2px;--e-global-typography-8a915ec-font-family:"Cormorant Garamond";--e-global-typography-8a915ec-font-size:46px;--e-global-typography-8a915ec-font-weight:400;--e-global-typography-8a915ec-line-height:46px;--e-global-typography-8a915ec-letter-spacing:-1px;--e-global-typography-9639d9a-font-family:"Cormorant Garamond";--e-global-typography-9639d9a-font-size:30px;--e-global-typography-9639d9a-font-weight:400;--e-global-typography-9639d9a-line-height:31px;--e-global-typography-9639d9a-letter-spacing:-1px;--e-global-typography-0436522-font-family:"Cormorant Garamond";--e-global-typography-0436522-font-size:35px;--e-global-typography-0436522-font-weight:400;--e-global-typography-0436522-font-style:italic;--e-global-typography-0436522-line-height:49px;--e-global-typography-0436522-letter-spacing:0px;--e-global-typography-1f8c45c-font-family:"Inter";--e-global-typography-1f8c45c-font-size:17px;--e-global-typography-1f8c45c-font-weight:300;--e-global-typography-1f8c45c-line-height:31px;--e-global-typography-1f8c45c-letter-spacing:0px;--e-global-typography-643520e-font-family:"Inter";--e-global-typography-643520e-font-size:12px;--e-global-typography-643520e-font-weight:500;--e-global-typography-643520e-text-transform:uppercase;--e-global-typography-643520e-line-height:14px;--e-global-typography-643520e-letter-spacing:4px;--e-global-typography-ef5bf91-font-family:"Cormorant Garamond";--e-global-typography-ef5bf91-font-size:24px;--e-global-typography-ef5bf91-font-weight:500;--e-global-typography-ef5bf91-font-style:italic;--e-global-typography-ef5bf91-line-height:24px;--e-global-typography-2c3852f-font-family:"Inter";--e-global-typography-2c3852f-font-size:12px;--e-global-typography-2c3852f-font-weight:500;--e-global-typography-2c3852f-text-transform:uppercase;--e-global-typography-2c3852f-line-height:12px;--e-global-typography-2c3852f-letter-spacing:2px;--e-global-typography-15a87a4-font-family:"Inter";--e-global-typography-15a87a4-font-size:13px;--e-global-typography-15a87a4-font-weight:400;--e-global-typography-15a87a4-line-height:13px;--e-global-typography-15a87a4-letter-spacing:1px;--e-global-typography-1129d08-font-family:"Cormorant Garamond";--e-global-typography-1129d08-font-weight:400;--e-global-typography-86ec264-font-family:"Cormorant Garamond";--e-global-typography-86ec264-font-size:80px;--e-global-typography-86ec264-font-weight:400;--e-global-typography-86ec264-line-height:80px;--e-global-typography-aa1ab51-font-family:"Inter";--e-global-typography-aa1ab51-font-size:13px;--e-global-typography-aa1ab51-font-weight:300;--e-global-typography-aa1ab51-line-height:20px;--e-global-typography-c0c9375-font-family:"Cormorant Garamond";--e-global-typography-c0c9375-font-size:316px;--e-global-typography-c0c9375-font-weight:500;--e-global-typography-c0c9375-line-height:221px;--e-global-typography-c0c9375-letter-spacing:-13px;--e-global-typography-0bdaf53-font-family:"Cormorant Garamond";--e-global-typography-0bdaf53-font-size:21px;--e-global-typography-0bdaf53-font-style:italic;--e-global-typography-0bdaf53-line-height:32px;--e-global-typography-1add22e-font-family:"Inter";--e-global-typography-1add22e-font-size:16px;--e-global-typography-1add22e-font-weight:600;--e-global-typography-1add22e-line-height:20px;--e-global-typography-9392937-font-family:"Inter";--e-global-typography-9392937-font-size:12px;--e-global-typography-9392937-font-weight:300;--e-global-typography-9392937-line-height:18px;--e-global-typography-a6e1289-font-family:"Inter";--e-global-typography-a6e1289-font-size:11px;--e-global-typography-a6e1289-font-weight:500;--e-global-typography-a6e1289-text-transform:uppercase;--e-global-typography-a6e1289-line-height:13px;--e-global-typography-a6e1289-letter-spacing:2px;--e-global-typography-db5cb8c-font-family:"Inter";--e-global-typography-db5cb8c-font-size:15px;--e-global-typography-db5cb8c-font-weight:300;--e-global-typography-db5cb8c-line-height:22px;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:var( --e-global-color-8aac9f2 );}.elementor-kit-6 a:hover{color:var( --e-global-color-5099b9d );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-6{--e-global-typography-a5bf28a-font-size:16px;--e-global-typography-92dd381-font-size:72px;--e-global-typography-92dd381-line-height:68px;--e-global-typography-92dd381-letter-spacing:-2px;--e-global-typography-4bb7569-font-size:87px;--e-global-typography-4bb7569-line-height:83px;--e-global-typography-4bb7569-letter-spacing:-3px;--e-global-typography-1e0b002-font-size:61px;--e-global-typography-1e0b002-line-height:61px;--e-global-typography-1e0b002-letter-spacing:-1px;--e-global-typography-8a915ec-font-size:31px;--e-global-typography-8a915ec-line-height:32px;--e-global-typography-8a915ec-letter-spacing:-1px;--e-global-typography-9639d9a-font-size:24px;--e-global-typography-9639d9a-line-height:25px;--e-global-typography-0436522-font-size:27px;--e-global-typography-0436522-line-height:38px;--e-global-typography-0436522-letter-spacing:0px;--e-global-typography-1f8c45c-font-size:16px;--e-global-typography-1f8c45c-line-height:29px;--e-global-typography-643520e-font-size:11px;--e-global-typography-643520e-line-height:13px;--e-global-typography-643520e-letter-spacing:3px;--e-global-typography-ef5bf91-font-size:22px;--e-global-typography-ef5bf91-line-height:22px;--e-global-typography-2c3852f-font-size:11px;--e-global-typography-2c3852f-line-height:11px;--e-global-typography-2c3852f-letter-spacing:2px;--e-global-typography-1129d08-font-size:36px;--e-global-typography-1129d08-line-height:43px;--e-global-typography-86ec264-font-size:61px;--e-global-typography-86ec264-line-height:61px;--e-global-typography-aa1ab51-font-size:13px;--e-global-typography-aa1ab51-line-height:20px;--e-global-typography-c0c9375-font-size:225px;--e-global-typography-c0c9375-line-height:158px;--e-global-typography-c0c9375-letter-spacing:-9px;--e-global-typography-0bdaf53-font-size:20px;--e-global-typography-0bdaf53-line-height:30px;--e-global-typography-1add22e-font-size:15px;--e-global-typography-1add22e-line-height:20px;--e-global-typography-9392937-font-size:12px;--e-global-typography-9392937-line-height:18px;--e-global-typography-a6e1289-font-size:11px;--e-global-typography-a6e1289-line-height:13px;--e-global-typography-a6e1289-letter-spacing:2px;--e-global-typography-db5cb8c-font-size:15px;--e-global-typography-db5cb8c-line-height:22px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{--e-global-typography-a5bf28a-font-size:15px;--e-global-typography-a5bf28a-line-height:25px;--e-global-typography-92dd381-font-size:52px;--e-global-typography-92dd381-line-height:52px;--e-global-typography-92dd381-letter-spacing:-1px;--e-global-typography-4bb7569-font-size:52px;--e-global-typography-4bb7569-line-height:52px;--e-global-typography-4bb7569-letter-spacing:-1px;--e-global-typography-1e0b002-font-size:42px;--e-global-typography-1e0b002-line-height:42px;--e-global-typography-1e0b002-letter-spacing:-1px;--e-global-typography-8a915ec-font-size:29px;--e-global-typography-8a915ec-line-height:30px;--e-global-typography-8a915ec-letter-spacing:0px;--e-global-typography-9639d9a-font-size:22px;--e-global-typography-9639d9a-line-height:24px;--e-global-typography-0436522-font-size:22px;--e-global-typography-0436522-line-height:31px;--e-global-typography-0436522-letter-spacing:0px;--e-global-typography-1f8c45c-font-size:15px;--e-global-typography-1f8c45c-line-height:26px;--e-global-typography-643520e-font-size:10px;--e-global-typography-643520e-line-height:12px;--e-global-typography-643520e-letter-spacing:2px;--e-global-typography-ef5bf91-font-size:20px;--e-global-typography-ef5bf91-line-height:20px;--e-global-typography-2c3852f-font-size:11px;--e-global-typography-2c3852f-line-height:11px;--e-global-typography-2c3852f-letter-spacing:1.5px;--e-global-typography-15a87a4-font-size:13px;--e-global-typography-1129d08-font-size:32px;--e-global-typography-1129d08-line-height:38px;--e-global-typography-86ec264-font-size:52px;--e-global-typography-86ec264-line-height:52px;--e-global-typography-aa1ab51-font-size:12px;--e-global-typography-aa1ab51-line-height:18px;--e-global-typography-c0c9375-font-size:90px;--e-global-typography-c0c9375-line-height:77px;--e-global-typography-c0c9375-letter-spacing:-3px;--e-global-typography-0bdaf53-font-size:19px;--e-global-typography-0bdaf53-line-height:29px;--e-global-typography-1add22e-font-size:14px;--e-global-typography-1add22e-line-height:19px;--e-global-typography-9392937-font-size:12px;--e-global-typography-9392937-line-height:18px;--e-global-typography-a6e1289-font-size:10px;--e-global-typography-a6e1289-line-height:12px;--e-global-typography-a6e1289-letter-spacing:1.5px;--e-global-typography-db5cb8c-font-size:14px;--e-global-typography-db5cb8c-line-height:21px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =====================================================
   REGARDS CROISÉS · Elementor integration layer
   À coller dans : Elementor > Réglages du site > CSS personnalisé
   ou dans le CSS personnalisé de la page.
   Objectif : compléter les réglages Elementor sans reconstruire toute la page en HTML.
   ===================================================== */

:root{
  --rc-bleu:#0F1B2D;
  --rc-bleu-deep:#070E1C;
  --rc-bleu-abyss:#04090F;
  --rc-bleu-mid:#16243F;
  --rc-or:#C9A24A;
  --rc-or-clair:#E6C97A;
  --rc-or-fonce:#A8842F;
  --rc-sable:#F3ECDD;
  --rc-sable-fonce:#E4D8BF;
  --rc-ivoire:#FBF8F1;
  --rc-pierre:#EEE7D8;
  --rc-texte:#1A2238;
  --rc-gris:#6A7081;
  --rc-gris-warm:#7A746A;
  --rc-serif:'Cormorant Garamond', Georgia, serif;
  --rc-sans:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --rc-rail:58px;
  --rc-max:1200px;
  --rc-gut:clamp(1.4rem, 6vw, 6rem);
  --rc-ease:cubic-bezier(.22,.61,.36,1);
}

html{scroll-behavior:smooth; scroll-padding-top:90px;}
body{background:var(--rc-bleu-deep); overflow-x:hidden;}
::selection{background:var(--rc-or); color:var(--rc-bleu-deep);}

/* ---------- Utilities à appliquer dans Elementor ---------- */
.rc-section{position:relative; overflow:hidden;}
.rc-pad{padding-top:clamp(6rem,13vw,12rem); padding-bottom:clamp(6rem,13vw,12rem);}
.rc-wrap{max-width:var(--rc-max); margin-inline:auto; padding-inline:var(--rc-gut); position:relative; z-index:2;}
.rc-dark{background:var(--rc-bleu-deep); color:var(--rc-ivoire);}
.rc-dark-blue{background:var(--rc-bleu); color:var(--rc-ivoire);}
.rc-abyss{background:var(--rc-bleu-abyss); color:var(--rc-ivoire);}
.rc-warm{background:var(--rc-ivoire); color:var(--rc-texte);}
.rc-sable{background:var(--rc-sable); color:var(--rc-texte);}
.rc-pierre{background:var(--rc-pierre); color:var(--rc-texte);}

.rc-display,
.rc-section h1.rc-display,
.rc-section .rc-display .elementor-heading-title{
  font-family:var(--rc-serif);
  font-size:clamp(3.2rem, 8.5vw, 8.6rem);
  line-height:.94;
  letter-spacing:-.03em;
  font-weight:400;
}
.rc-h2 .elementor-heading-title,
.rc-section h2.rc-h2{
  font-family:var(--rc-serif);
  font-size:clamp(2.6rem, 6vw, 5.6rem);
  line-height:1;
  letter-spacing:-.02em;
  font-weight:400;
}
.rc-h3 .elementor-heading-title,
.rc-section h3.rc-h3{
  font-family:var(--rc-serif);
  font-size:clamp(1.8rem, 3vw, 2.9rem);
  line-height:1;
  letter-spacing:-.02em;
  font-weight:400;
}
.rc-h4 .elementor-heading-title,
.rc-section h4.rc-h4{
  font-family:var(--rc-serif);
  font-size:clamp(1.35rem, 2vw, 1.85rem);
  line-height:1.05;
  letter-spacing:-.02em;
  font-weight:400;
}
.rc-lead,
.rc-lead .elementor-widget-container{
  font-family:var(--rc-serif);
  font-style:italic;
  font-size:clamp(1.4rem, 2.6vw, 2.2rem);
  line-height:1.4;
  font-weight:400;
}
.rc-body,
.rc-body .elementor-widget-container{
  font-family:var(--rc-sans);
  font-size:1.04rem;
  line-height:1.85;
  max-width:60ch;
}
.rc-dark .rc-body,
.rc-dark-blue .rc-body,
.rc-abyss .rc-body{color:rgba(245,239,226,.62);}
.rc-warm .rc-body,
.rc-sable .rc-body,
.rc-pierre .rc-body{color:var(--rc-gris-warm);}

/* Kicker : construire avec un conteneur horizontal + 2 widgets Titre/Texte */
.rc-kicker{display:inline-flex; align-items:center; gap:1rem; margin-bottom:2rem;}
.rc-kicker-num .elementor-heading-title,
.rc-kicker-num{
  font-family:var(--rc-serif);
  font-style:italic;
  font-size:1.5rem;
  line-height:1;
  letter-spacing:0;
  color:var(--rc-or);
  font-weight:500;
}
.rc-kicker-label,
.rc-kicker-label .elementor-widget-container,
.rc-kicker-label .elementor-heading-title{
  font-family:var(--rc-sans);
  font-size:.72rem;
  line-height:1.2;
  font-weight:500;
  letter-spacing:.34em;
  text-transform:uppercase;
  color:var(--rc-or-fonce);
}
.rc-dark .rc-kicker-label,
.rc-dark-blue .rc-kicker-label,
.rc-abyss .rc-kicker-label{color:var(--rc-or-clair);}

/* Mot géant en filigrane : widget Titre en position absolue + classe rc-ghost */
.rc-ghost{
  position:absolute!important;
  z-index:0!important;
  pointer-events:none;
  user-select:none;
  white-space:nowrap;
}
.rc-ghost .elementor-heading-title,
.rc-ghost{
  font-family:var(--rc-serif);
  font-weight:500;
  font-size:clamp(7rem,22vw,22rem);
  line-height:.7;
  letter-spacing:-.04em;
}
.rc-dark .rc-ghost .elementor-heading-title,
.rc-dark-blue .rc-ghost .elementor-heading-title,
.rc-abyss .rc-ghost .elementor-heading-title{color:rgba(201,162,74,.05);}
.rc-warm .rc-ghost .elementor-heading-title,
.rc-sable .rc-ghost .elementor-heading-title,
.rc-pierre .rc-ghost .elementor-heading-title{color:rgba(15,27,45,.045);}
.rc-ghost-left{top:2rem!important; left:-1rem!important;}
.rc-ghost-right{top:2rem!important; right:-1rem!important;}
.rc-ghost-center{top:2rem!important; left:50%!important; transform:translateX(-50%);}

/* Boutons Elementor : ajouter rc-btn + variante sur le widget Bouton */
.rc-btn .elementor-button{
  display:inline-flex;
  align-items:center;
  gap:.8rem;
  border-radius:99px;
  font-family:var(--rc-sans);
  font-size:.76rem;
  font-weight:500;
  letter-spacing:.18em;
  text-transform:uppercase;
  padding:1.05rem 2.2rem;
  transition:all .45s var(--rc-ease);
}
.rc-btn-gold .elementor-button{background:var(--rc-or); color:var(--rc-bleu-deep);}
.rc-btn-gold .elementor-button:hover{background:var(--rc-or-clair); color:var(--rc-bleu-deep);}
.rc-btn-line .elementor-button{background:transparent; color:var(--rc-ivoire); border:1px solid rgba(245,239,226,.4);}
.rc-btn-line .elementor-button:hover{border-color:var(--rc-or); color:var(--rc-or-clair);}
.rc-btn-line-dark .elementor-button{background:transparent; color:var(--rc-bleu); border:1px solid rgba(15,27,45,.28);}
.rc-btn-line-dark .elementor-button:hover{border-color:var(--rc-or-fonce); color:var(--rc-or-fonce);}

/* ---------- Header + rails HTML ---------- */
.rc-rail-l{position:fixed; top:0; left:0; bottom:0; width:var(--rc-rail); z-index:9990; display:flex; flex-direction:column; align-items:center; justify-content:space-between; padding:1.6rem 0;}
.rc-rail-l .mk{font-family:var(--rc-serif); font-style:italic; font-size:1.5rem; color:var(--rc-or);}
.rc-rail-l .soc{display:flex; flex-direction:column; gap:1.6rem; writing-mode:vertical-rl;}
.rc-rail-l .soc a{font-size:.68rem; letter-spacing:.22em; text-transform:uppercase; color:rgba(245,239,226,.55); transition:color .35s;}
.rc-rail-l .soc a:hover{color:var(--rc-or-clair);}
.rc-rail-l .ref{writing-mode:vertical-rl; font-size:.6rem; letter-spacing:.3em; color:rgba(245,239,226,.35); text-transform:uppercase;}
body.rc-on-warm .rc-rail-l .mk{color:var(--rc-or-fonce);}
body.rc-on-warm .rc-rail-l .soc a{color:rgba(26,34,56,.5);}
body.rc-on-warm .rc-rail-l .ref{color:rgba(26,34,56,.35);}

.rc-rail-r{position:fixed; top:50%; right:0; transform:translateY(-50%); width:var(--rc-rail); z-index:9990; display:flex; flex-direction:column; align-items:center; gap:.9rem;}
.rc-rail-r .dot{position:relative; display:flex; align-items:center; justify-content:flex-end; gap:.7rem; color:rgba(245,239,226,.4); transition:color .35s;}
.rc-rail-r .dot i{width:6px; height:6px; border-radius:50%; background:currentColor; transition:all .35s; flex:0 0 auto;}
.rc-rail-r .dot span{font-size:.62rem; letter-spacing:.12em; text-transform:uppercase; opacity:0; transform:translateX(6px); transition:all .35s; white-space:nowrap; position:absolute; right:16px; background:rgba(7,14,28,.85); padding:.3rem .6rem; border-radius:3px;}
.rc-rail-r .dot:hover span{opacity:1; transform:none;}
.rc-rail-r .dot.active{color:var(--rc-or);}
.rc-rail-r .dot.active i{transform:scale(1.7);}
body.rc-on-warm .rc-rail-r .dot{color:rgba(26,34,56,.35);}
body.rc-on-warm .rc-rail-r .dot.active{color:var(--rc-or-fonce);}
body.rc-on-warm .rc-rail-r .dot span{background:rgba(251,248,241,.92); color:var(--rc-texte);}

.rc-topbar{position:fixed; top:0; left:var(--rc-rail); right:var(--rc-rail); z-index:9980; display:flex; align-items:center; justify-content:space-between; padding:1.5rem clamp(1rem,3vw,2.4rem); transition:all .5s var(--rc-ease);}
.rc-topbar.scrolled{background:rgba(7,14,28,.8); backdrop-filter:blur(18px) saturate(160%); -webkit-backdrop-filter:blur(18px) saturate(160%); padding-top:.9rem; padding-bottom:.9rem; border-bottom:1px solid rgba(201,162,74,.12);}
.rc-tb-logo{display:flex; align-items:baseline; gap:.6rem; color:var(--rc-ivoire);}
.rc-tb-logo .m{font-family:var(--rc-serif); font-style:italic; font-size:1.7rem; color:var(--rc-or);}
.rc-tb-logo .n{font-family:var(--rc-serif); font-size:1.3rem; letter-spacing:.03em;}
.rc-tb-menu{display:flex; gap:2rem; list-style:none; margin:0 auto; padding:0;}
.rc-tb-menu a{font-family:var(--rc-sans); font-size:.82rem; letter-spacing:.05em; color:rgba(245,239,226,.82); position:relative; padding:.2rem 0; transition:color .3s;}
.rc-tb-menu a::after{content:""; position:absolute; left:0; bottom:-3px; width:0; height:1px; background:var(--rc-or); transition:width .4s var(--rc-ease);}
.rc-tb-menu a:hover{color:var(--rc-ivoire);}
.rc-tb-menu a:hover::after{width:100%;}
body.rc-on-warm .rc-topbar:not(.scrolled) .rc-tb-logo{color:var(--rc-bleu);}
body.rc-on-warm .rc-topbar:not(.scrolled) .rc-tb-logo .m{color:var(--rc-or-fonce);}
body.rc-on-warm .rc-topbar:not(.scrolled) .rc-tb-menu a{color:rgba(26,34,56,.78);}
body.rc-on-warm .rc-topbar:not(.scrolled) .rc-tb-menu a:hover{color:var(--rc-bleu);}
.rc-tb-right{display:flex; align-items:center; gap:1.8rem;}
.rc-tb-cta{font-size:.72rem; font-weight:500; letter-spacing:.14em; text-transform:uppercase; color:var(--rc-bleu-deep); background:var(--rc-or); padding:.8rem 1.4rem; border-radius:99px; transition:background .4s;}
.rc-tb-cta:hover{background:var(--rc-or-clair); color:var(--rc-bleu-deep);}
.rc-burger{display:none; flex-direction:column; gap:5px; width:28px; padding:6px 0; background:none; border:0;}
.rc-burger span{height:1.5px; background:var(--rc-ivoire); transition:.35s; display:block;}
body.rc-on-warm .rc-topbar:not(.scrolled) .rc-burger span{background:var(--rc-bleu);}
.rc-burger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.rc-burger.open span:nth-child(2){opacity:0;}
.rc-burger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
.rc-mobile-menu{position:fixed; inset:0; z-index:9970; background:rgba(7,14,28,.98); backdrop-filter:blur(20px); display:flex; flex-direction:column; justify-content:center; padding:0 var(--rc-gut); transform:translateY(-100%); transition:transform .6s var(--rc-ease);}
.rc-mobile-menu.open{transform:none;}
.rc-mobile-menu a{font-family:var(--rc-serif); font-size:2rem; color:var(--rc-ivoire); padding:.7rem 0; border-bottom:1px solid rgba(245,239,226,.08);}
.rc-mobile-menu a:last-child{border:0;}

/* ---------- Hero ---------- */
.rc-hero{min-height:100vh; min-height:100svh; display:flex; align-items:flex-end;}
.rc-hero::before{content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(4,9,15,.5) 0%, rgba(4,9,15,.12) 32%, rgba(4,9,15,.5) 70%, rgba(4,9,15,.94) 100%), linear-gradient(95deg, rgba(4,9,15,.62) 0%, rgba(4,9,15,.05) 60%); z-index:1; pointer-events:none;}
.rc-hero > .e-con-inner,
.rc-hero .rc-wrap{position:relative; z-index:2; width:100%; padding-bottom:clamp(3rem,7vw,6rem);}
.rc-hero-title .elementor-heading-title{text-shadow:0 4px 60px rgba(4,9,15,.45); max-width:16ch;}
.rc-hero-title em{font-style:italic; color:var(--rc-or-clair);}
.rc-hero-sub{max-width:30ch; color:rgba(245,239,226,.9);}
.rc-hero-meta .elementor-widget-container{display:flex; gap:2rem; flex-wrap:wrap;}
.rc-hero-meta span{font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; color:rgba(245,239,226,.6);}
.rc-hero-meta b{color:var(--rc-or-clair); font-weight:500;}

/* ---------- À propos ---------- */
.rc-principes{display:grid; grid-template-columns:repeat(3,1fr); gap:1.6rem; margin-top:2.8rem; padding-top:2.4rem; border-top:1px solid var(--rc-sable-fonce);}
.rc-principe-title .elementor-heading-title{font-family:var(--rc-serif); font-size:1.5rem; color:var(--rc-bleu); margin-bottom:.25rem;}
.rc-principe-text{font-size:.92rem; color:var(--rc-gris-warm); line-height:1.5;}
.rc-signatures{display:flex; gap:2.6rem; margin-top:2.4rem;}
.rc-signature-name .elementor-heading-title{font-family:var(--rc-serif); font-style:italic; font-size:1.7rem; color:var(--rc-or-fonce);}
.rc-signature-role{font-size:.7rem; letter-spacing:.2em; text-transform:uppercase; color:var(--rc-gris-warm);}
.rc-image-caption-card{position:relative; overflow:hidden; border-radius:2px;}
.rc-image-caption-card img{width:100%; aspect-ratio:4/5; object-fit:cover;}
.rc-img-tag{position:absolute!important; top:1.2rem!important; left:1.2rem!important; z-index:3; background:var(--rc-or); color:var(--rc-bleu-deep); font-size:.62rem; letter-spacing:.2em; text-transform:uppercase; font-weight:600; padding:.45rem .9rem;}
.rc-img-caption{position:absolute!important; left:1.2rem!important; right:1.2rem!important; bottom:1.2rem!important; z-index:3; background:rgba(7,14,28,.78); backdrop-filter:blur(6px); color:var(--rc-ivoire); padding:.9rem 1.1rem; border-left:2px solid var(--rc-or);}

/* ---------- Stats ---------- */
.rc-stats{background:var(--rc-bleu-abyss); border-top:1px solid rgba(201,162,74,.1); border-bottom:1px solid rgba(201,162,74,.1);}
.rc-stats::before{content:""; position:absolute; inset:0; background:var(--rc-stats-bg, none) center/cover; opacity:.16; z-index:0; pointer-events:none;}
.rc-stat{position:relative; text-align:center;}
.rc-stat + .rc-stat::before{content:""; position:absolute; left:-1rem; top:12%; height:76%; width:1px; background:rgba(201,162,74,.2);}
.rc-stat .elementor-counter-number-wrapper,
.rc-stat-number .elementor-heading-title{font-family:var(--rc-serif); font-size:clamp(3.2rem,6vw,5rem); color:var(--rc-or); line-height:1;}
.rc-stat-label{font-size:.82rem; color:rgba(245,239,226,.62); max-width:22ch; margin:.6rem auto 0; line-height:1.5;}

/* ---------- Savoir-faire ---------- */
.rc-savoir::before,
.rc-methode::before,
.rc-contact::before{content:""; position:absolute; inset:0; background:var(--rc-leaf-bg, none) right top/60% no-repeat; opacity:.10; z-index:0; pointer-events:none;}
.rc-service-row{display:grid!important; grid-template-columns:auto 1fr auto; gap:clamp(1.2rem,3vw,2.4rem); align-items:baseline; padding:2.2rem 0; border-top:1px solid rgba(245,239,226,.13); transition:all .5s var(--rc-ease);}
.rc-service-row:last-child{border-bottom:1px solid rgba(245,239,226,.13);}
.rc-service-row:hover{padding-left:1rem;}
.rc-service-number .elementor-heading-title{font-family:var(--rc-serif); font-size:1.5rem; color:var(--rc-or);}
.rc-service-title .elementor-heading-title{color:var(--rc-ivoire); transition:color .4s;}
.rc-service-row:hover .rc-service-title .elementor-heading-title{color:var(--rc-or-clair);}
.rc-service-text{font-size:.96rem; color:rgba(245,239,226,.6); margin-top:.6rem; line-height:1.7;}
.rc-service-arrow{font-size:1.4rem; color:rgba(245,239,226,.3); transition:all .45s var(--rc-ease);}
.rc-service-row:hover .rc-service-arrow{color:var(--rc-or); transform:translateX(8px);}

/* ---------- Réalisations ---------- */
.rc-gallery-card{position:relative; overflow:hidden; border-radius:2px; height:clamp(360px,46vw,560px); background:var(--rc-bleu-deep);}
.rc-gallery-card img{width:100%; height:100%; object-fit:cover; filter:brightness(.82) saturate(.95); transition:transform 1.1s var(--rc-ease);}
.rc-gallery-card:hover img{transform:scale(1.08);}
.rc-gallery-card::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(4,9,15,.35) 0%, transparent 30%, rgba(4,9,15,.9) 100%); pointer-events:none;}
.rc-gallery-index{position:absolute!important; top:1.1rem!important; left:1.1rem!important; z-index:2; font-family:var(--rc-serif); font-size:1.5rem; color:var(--rc-or-clair);}
.rc-gallery-vertical{position:absolute!important; top:1.1rem!important; right:1.1rem!important; z-index:2; writing-mode:vertical-rl; font-size:.62rem; letter-spacing:.24em; text-transform:uppercase; color:rgba(245,239,226,.7);}
.rc-gallery-caption{position:absolute!important; left:1.2rem!important; right:1.2rem!important; bottom:1.2rem!important; z-index:2;}
.rc-gallery-type{font-size:.62rem; letter-spacing:.16em; text-transform:uppercase; color:var(--rc-or-clair);}
.rc-gallery-name .elementor-heading-title{color:var(--rc-ivoire); font-size:1.3rem; line-height:1.05; margin-top:.2rem;}
.rc-gallery-place{font-size:.72rem; color:rgba(245,239,226,.55);}

/* ---------- Étude de cas ---------- */
.rc-case-card{position:relative; border-radius:2px; overflow:hidden;}
.rc-case-card img{width:100%; aspect-ratio:3/4; object-fit:cover;}
.rc-case-label{position:absolute!important; top:.9rem!important; left:.9rem!important; z-index:2; font-size:.62rem; letter-spacing:.2em; text-transform:uppercase; padding:.4rem .8rem; font-weight:600;}
.rc-case-before .rc-case-label{background:rgba(7,14,28,.8); color:var(--rc-ivoire);}
.rc-case-after{margin-top:2.4rem;}
.rc-case-after .rc-case-label{background:var(--rc-or); color:var(--rc-bleu-deep);}
.rc-case-meta{display:flex; gap:2.4rem; margin-top:2.2rem; padding-top:1.8rem; border-top:1px solid var(--rc-sable-fonce);}
.rc-case-meta-label{display:block; font-size:.66rem; letter-spacing:.18em; text-transform:uppercase; color:var(--rc-or-fonce); margin-bottom:.25rem;}
.rc-case-meta-value .elementor-heading-title{font-family:var(--rc-serif); font-size:1.5rem; color:var(--rc-bleu);}

/* ---------- Offres ---------- */
.rc-offer-card{background:var(--rc-ivoire); border:1px solid var(--rc-sable-fonce); padding:2.6rem 2rem; transition:all .5s var(--rc-ease);}
.rc-offer-card:hover{transform:translateY(-6px); box-shadow:0 26px 54px rgba(15,27,45,.13);}
.rc-offer-featured{background:var(--rc-bleu-deep); border-color:var(--rc-bleu-deep); transform:scale(1.03);}
.rc-offer-featured:hover{transform:scale(1.03) translateY(-6px);}
.rc-pill{align-self:flex-start; font-size:.6rem; letter-spacing:.2em; text-transform:uppercase; font-weight:600; padding:.4rem .85rem; border-radius:99px; background:var(--rc-sable-fonce); color:var(--rc-or-fonce); margin-bottom:1.4rem;}
.rc-offer-featured .rc-pill{background:var(--rc-or); color:var(--rc-bleu-deep);}
.rc-offer-featured .rc-h3 .elementor-heading-title{color:var(--rc-ivoire);}
.rc-offer-price{font-size:.86rem; letter-spacing:.04em; color:var(--rc-or-fonce); margin-bottom:1.3rem; font-weight:500;}
.rc-offer-featured .rc-offer-price{color:var(--rc-or-clair);}
.rc-offer-featured .rc-body{color:rgba(245,239,226,.7);}
.rc-offer-card .elementor-icon-list-item{align-items:flex-start!important;}
.rc-offer-card .elementor-icon-list-text{font-size:.92rem; line-height:1.5;}
.rc-offer-featured .elementor-icon-list-text{color:rgba(245,239,226,.78)!important;}

/* ---------- Méthode ---------- */
.rc-step-number .elementor-heading-title{font-family:var(--rc-serif); font-size:clamp(3rem,5vw,4.4rem); color:rgba(201,162,74,.4); line-height:1; margin-bottom:1rem;}
.rc-step-text{font-size:.93rem; color:rgba(245,239,226,.6); line-height:1.7;}

/* ---------- Zones ---------- */
.rc-zone-pill{font-size:.82rem; color:rgba(245,239,226,.78); padding:.5rem 1rem; border:1px solid rgba(245,239,226,.16); border-radius:99px; transition:all .35s;}
.rc-zone-pill:hover{border-color:var(--rc-or); color:var(--rc-or-clair);}
.rc-country-label{font-size:.72rem; letter-spacing:.22em; text-transform:uppercase; color:var(--rc-or-clair); margin:1.8rem 0 .9rem;}

/* ---------- Avis ---------- */
.rc-review-card{background:var(--rc-ivoire); padding:2.4rem 2rem; position:relative;}
.rc-review-card::before{content:"\201C"; position:absolute; top:.4rem; left:1.3rem; font-family:var(--rc-serif); font-size:5rem; color:var(--rc-sable-fonce); line-height:1;}
.rc-review-quote{font-family:var(--rc-serif); font-style:italic; font-size:1.3rem; line-height:1.5; color:var(--rc-bleu); position:relative; z-index:1; margin-bottom:1.4rem;}
.rc-review-name{font-weight:600; font-size:.92rem; color:var(--rc-texte);}
.rc-review-detail{font-size:.78rem; color:var(--rc-gris-warm);}

/* ---------- Contact / Formulaire Elementor Pro ---------- */
.rc-contact{background:var(--rc-bleu-abyss);}
.rc-contact::before{background:var(--rc-leaf-bg, none) center/cover; opacity:.22;}
.rc-contact::after{content:""; position:absolute; inset:0; background:linear-gradient(100deg, var(--rc-bleu-abyss) 35%, rgba(4,9,15,.55) 100%); z-index:1; pointer-events:none;}
.rc-contact > .e-con-inner,
.rc-contact .rc-wrap{position:relative; z-index:2;}
.rc-tel-big .elementor-heading-title,
.rc-tel-big a{font-family:var(--rc-serif); font-size:clamp(1.9rem,3.4vw,2.8rem); color:var(--rc-or-clair); line-height:1.25;}
.rc-contact-label{font-size:.7rem; letter-spacing:.2em; text-transform:uppercase; color:rgba(245,239,226,.5); margin:2rem 0 .4rem;}
.rc-contact-value{font-size:1.05rem; color:var(--rc-ivoire);}
.rc-form-dark{background:rgba(251,248,241,.04); border:1px solid rgba(245,239,226,.12); border-radius:3px; padding:clamp(1.8rem,3vw,2.6rem); backdrop-filter:blur(8px);}
.rc-form-dark .elementor-field-label{font-size:.68rem; letter-spacing:.16em; text-transform:uppercase; color:var(--rc-or-clair); margin-bottom:.55rem;}
.rc-form-dark .elementor-field,
.rc-form-dark .elementor-field-textual{
  background:rgba(4,9,15,.45)!important;
  border:1px solid rgba(245,239,226,.18)!important;
  border-radius:2px!important;
  color:var(--rc-ivoire)!important;
  font-family:var(--rc-sans)!important;
  font-size:.95rem!important;
  padding:.95rem 1rem!important;
}
.rc-form-dark .elementor-field::placeholder{color:rgba(245,239,226,.35)!important;}
.rc-form-dark .elementor-field:focus{border-color:var(--rc-or)!important; box-shadow:none!important;}
.rc-form-dark .elementor-button{width:100%; background:var(--rc-or); color:var(--rc-bleu-deep); font-size:.8rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; padding:1.1rem; border-radius:99px;}
.rc-form-dark .elementor-button:hover{background:var(--rc-or-clair); color:var(--rc-bleu-deep);}
.rc-rgpd{font-size:.74rem; color:rgba(245,239,226,.45); margin-top:1.2rem; line-height:1.5;}
.rc-rgpd a{color:var(--rc-or-clair); text-decoration:underline;}

/* ---------- Footer ---------- */
.rc-footer{background:#03070D; padding:clamp(4rem,7vw,6rem) 0 2.5rem;}
.rc-footer-text{font-size:.92rem; color:rgba(245,239,226,.55); line-height:1.7; max-width:34ch;}
.rc-footer-title{font-size:.72rem; letter-spacing:.2em; text-transform:uppercase; color:var(--rc-or-clair); margin-bottom:1.2rem; font-weight:600;}
.rc-footer-link a,
.rc-footer-link{font-size:.92rem; color:rgba(245,239,226,.6); transition:color .3s;}
.rc-footer-link a:hover{color:var(--rc-or-clair);}
.rc-footer-bottom{margin-top:3.5rem; padding-top:2rem; border-top:1px solid rgba(245,239,226,.1); font-size:.8rem; color:rgba(245,239,226,.45);}

@media(max-width:1024px){
  :root{--rc-rail:0px;}
  .rc-rail-l,.rc-rail-r{display:none;}
  .rc-topbar{left:0; right:0;}
  .rc-tb-menu{display:none;}
  .rc-burger{display:flex;}
  .rc-principes{grid-template-columns:1fr 1fr;}
}
@media(max-width:767px){
  .rc-pad{padding-top:clamp(4.5rem,16vw,6rem); padding-bottom:clamp(4.5rem,16vw,6rem);}
  .rc-principes{grid-template-columns:1fr;}
  .rc-signatures{gap:1.8rem;}
  .rc-stat:nth-child(odd)::before{display:none;}
  .rc-service-row{grid-template-columns:auto 1fr;}
  .rc-service-arrow{display:none;}
  .rc-gallery-card{height:62vh;}
  .rc-case-after{margin-top:1.4rem;}
  .rc-case-meta{flex-wrap:wrap; gap:1.2rem 2rem;}
  .rc-offer-featured{transform:none;}
  .rc-offer-featured:hover{transform:translateY(-6px);}
  .rc-hero-meta .elementor-widget-container{gap:1rem;}
}

@media(prefers-reduced-motion:reduce){
  *{animation:none!important; transition:none!important;}
  html{scroll-behavior:auto;}
}


/* === Largeurs colonnes (sections importees) === */
.rc-q{width:23%!important;flex:0 0 auto!important}
.rc-t{width:31%!important;flex:0 0 auto!important}
.rc-h{width:48%!important;flex:0 0 auto!important}
.rc-step{width:22%!important;flex:0 0 auto!important}
.rc-meta{width:31%!important;flex:0 0 auto!important}
@media(max-width:1024px){.rc-q,.rc-t,.rc-step{width:48%!important}}
@media(max-width:767px){.rc-q,.rc-t,.rc-h,.rc-step,.rc-meta{width:100%!important}}/* End custom CSS */