/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Mar 03 2026 | 10:22:11 */
@import url('https://fonts.googleapis.com/css2?family=Ms+Madi&display=swap');
.melvi-brand{
  font-family:'Ms Madi',cursive;
  font-weight:400;
  line-height:1;
}


.melvi-nav .wp-block-navigation-item__content,
.melvi-nav .wp-block-navigation-item__content:visited{
  text-decoration:none !important;
  border-bottom:2px solid transparent;
  padding-bottom:6px;
  transition:color .2s ease,border-color .2s ease;
}

.melvi-nav .wp-block-navigation-item__content:hover,
.melvi-nav .wp-block-navigation-item__content:focus-visible{
  color:#27364a !important;
  border-bottom-color:#27364a;
}

.melvi-nav .wp-block-navigation-item__content[aria-current="page"],
.melvi-nav .current-menu-item > .wp-block-navigation-item__content,
.melvi-nav .current_page_item > .wp-block-navigation-item__content,
.melvi-nav .current-menu-ancestor > .wp-block-navigation-item__content,
.melvi-nav .current-menu-parent > .wp-block-navigation-item__content{
  border-bottom-color:#8aadc9;
}

.nav-bar .header-contact-btn.wp-block-button > .wp-block-button__link,
.nav-bar .header-contact-btn.wp-block-button > .wp-element-button{
  background:transparent !important;
  color:#F8F3E5 !important;
  border:2px solid #F8F3E5 !important;
  box-shadow:none !important;
  text-decoration:none !important;
  font-family:Inter,sans-serif !important;
  font-weight:600 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  padding:12px 22px !important;
  border-radius:2px !important;
  transition:background-color .16s ease,color .16s ease,border-color .16s ease;
}

.nav-bar .header-contact-btn.wp-block-button > .wp-block-button__link:hover,
.nav-bar .header-contact-btn.wp-block-button > .wp-element-button:hover,
.nav-bar .header-contact-btn.wp-block-button > .wp-block-button__link:focus-visible,
.nav-bar .header-contact-btn.wp-block-button > .wp-element-button:focus-visible{
  background-color:#F8F3E5 !important;
  color:#27364A !important;
  border-color:#F8F3E5 !important;
}

.nav-bar .header-contact-btn.wp-block-button > .wp-block-button__link:focus-visible,
.nav-bar .header-contact-btn.wp-block-button > .wp-element-button:focus-visible{
  outline:2px solid #FEFEFF !important;
  outline-offset:3px !important;
}

.nav-bar .wp-block-buttons .wp-block-button__link,
.nav-bar .wp-block-buttons .wp-element-button{
  background-color:transparent !important;
  color:#F8F3E5 !important;
  border:2px solid #F8F3E5 !important;
  border-radius:10px !important;
  box-shadow:none !important;
}

.wp-block-button__link:hover {
  background-color:#F8F3E5 !important;
  color:#27364A !important;
  border-color:#F8F3E5 !important;
}

.wp-block-button__link:focus-visible{
  outline:2px solid #FEFEFF !important;
  outline-offset:3px !important;
}

.melvi-collage{
  position:relative;
  max-width:520px;
  margin-left:auto;
  margin-right:auto;
}

.melvi-collage .melvi-collage-main img{
  width:100%;
  border-radius:18px;
  display:block;
}

.melvi-collage .melvi-collage-overlay{
  position:absolute;
  left:-56px;
  bottom:-56px;
  width:56%;
}

.melvi-collage .melvi-collage-overlay img{
  width:100%;
  border-radius:18px;
  display:block;
  border:4px solid #F8F3E5;
}

.melvi-collage.is-right .melvi-collage-overlay{
  left:auto !important;
  right:-56px !important;
  bottom:-56px !important;
}

@media (min-width:781px){
  	.melvi-collage.collage-right {
    	margin-left: 100px;
  	}

	.melvi-collage.collage-left {
    	margin-right: 100px;
  	}
}

@media (max-width:781px){
  .melvi-collage.is-right .melvi-collage-overlay{
    right:-24px !important;
    bottom:-24px !important;
  }
}


.melvi-arrow .wp-element-button,
.melvi-arrow .wp-block-button__link{
  width:44px !important;
  height:44px !important;
  padding:0 !important;
  border-radius:999px !important;
  background:#27364A !important;
  color:#FEFEFF !important;
  border:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:1 !important;
  font-size:18px !important;
}

.melvi-arrow .wp-element-button:hover,
.melvi-arrow .wp-block-button__link:hover{
  background:#384E6A !important;
  color:#FEFEFF !important;
}

.melvi-services {
	padding-bottom: 40px;
}

.about-menu{
  margin-left:auto !important;
}

.about-menu .about-menu-row{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
  padding:18px 0 !important;
  transition:transform .18s ease !important;
}

.about-menu .about-menu-row:hover{
  transform:translateX(6px) !important;
}

.about-menu .about-menu-row p{
  margin:0 !important;
  color:#27364A !important;
  font-family:Inter,sans-serif !important;
  font-weight:600 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.about-menu .about-menu-row:hover p{
  color:#384E6A !important;
}

.about-menu .about-menu-row .wp-block-buttons{
  margin:0 !important;
}

.about-menu .about-menu-row .wp-block-button__link,
.about-menu .about-menu-row .wp-element-button{
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  padding:0 !important;
  border-radius:9999px !important;
  background-color:#27364A !important;
  color:#F8F3E5 !important;
  border:2px solid #27364A !important;
  box-shadow:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:1 !important;
  font-size:18px !important;
  transition:background-color .16s ease,color .16s ease,border-color .16s ease,transform .16s ease !important;
}

.about-menu .about-menu-row:hover .wp-block-button__link,
.about-menu .about-menu-row:hover .wp-element-button{
  background-color:#F8F3E5 !important;
  color:#27364A !important;
  border-color:#27364A !important;
  transform:scale(1.04) !important;
}

.about-menu .wp-block-separator{
  margin:0 !important;
  border:none !important;
  height:1px !important;
  background-color:rgba(39,54,74,.35) !important;
}

.about-menu .about-menu-row:hover + .wp-block-separator{
  height:2px !important;
  background-color:#27364A !important;
}

.about-menu .about-menu-row .wp-block-button__link:focus-visible,
.about-menu .about-menu-row .wp-element-button:focus-visible{
  outline:2px solid #FEFEFF !important;
  outline-offset:3px !important;
}

@media (max-width:781px) {
  .about-menu{
    max-width:100% !important;
    margin-left:0 !important;
  }
  .about-menu .about-menu-row{
    padding:14px 0 !important;
    transform:none !important;
  }
}

.separator-right {
	width: 50%;
	margin-left: 50% !important;
	margin-top: 50px;
}

.separator-left {
	width: 50%;
	margin-right: 50% !important;
	margin-top: 50px;
}

.separator-middle {
	width: 50%;
	margin-top: 50px;
}

.method-section{
  padding-top:60px !important;
  padding-bottom:60px !important;
}

.method-section > .wp-block-heading{
  text-align:center !important;
  color:#27364A !important;
  letter-spacing:.10em !important;
  text-transform:uppercase !important;
}

.method-timeline{
  position:relative !important;
  max-width:760px !important;
  margin:30px auto 0 auto !important;
  padding:10px 0 !important;
}

.method-timeline::before{
  content:"" !important;
  position:absolute !important;
  left:22px !important;
  top:0 !important;
  bottom:0 !important;
  width:2px !important;
  background:rgba(39,54,74,.35) !important;
  z-index:0 !important;
}

.method-item{
  position:relative !important;
  padding-left:78px !important;
  margin:0 0 56px 0 !important;
  z-index:1 !important;
}

.method-item:last-child{
  margin-bottom:0 !important;
}

.method-item::before{
  content:"" !important;
  position:absolute !important;
  left:14px !important;
  top:6px !important;
  width:18px !important;
  height:18px !important;
  border-radius:9999px !important;
  background:#27364A !important;
  box-shadow:0 0 0 6px #F8F3E5 !important;
  z-index:2 !important;
}

@media (max-width:781px){
  .method-timeline{
    max-width:100% !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  .method-timeline::before{
    left:16px !important;
  }
  .method-item{
    padding-left:58px !important;
  }
  .method-item::before{
    left:8px !important;
  }
}


.about-menu-arrow a:hover{
  background-color:#8aadc9 !important;
}

.about-menu-arrow a:focus-visible{
  background-color:#8aadc9 !important;
}


.single-realisation .attachment-post-thumbnail,
.single-realisation .wp-block-post-featured-image{
  display:none;
}

/* Melvi-header accueil effect */
:root{--header-h:110px;}

.melvi-header{background:transparent !important;}
.melvi-header.is-scrolled{background:#fff !important;}


.melvi-header{
position:fixed;
top:0;
left:0;
right:0;
z-index:9999;
background:transparent;
transition:background .25s ease, box-shadow .25s ease;
}

.melvi-header.is-scrolled{
background:var(--wp--preset--color--base) !important;
box-shadow:0 8px 24px rgba(0,0,0,.10);
}

body{padding-top:var(--header-h);}

.home .home-hero {
margin-top:calc(var(--header-h) * -1);
}

.page-id-21 .home-hero {
margin-top:calc(var(--header-h) * -1);
}

body.admin-bar .melvi-header{top:32px;}
@media (max-width:782px){
body.admin-bar .melvi-header{top:46px;}
}

body.home .melvi-header{
  position:fixed;
  left:0;
  right:0;
  top:0;
  z-index:99999;
  background:transparent !important;
  transition:background-color .2s ease, box-shadow .2s ease;
}

body.home.admin-bar .melvi-header{ top:32px; }
@media (max-width:782px){
  body.home.admin-bar .melvi-header{ top:46px; }
}

body.home .melvi-header.is-scrolled{
  background:var(--wp--preset--color--base) !important;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
}

body.home .n2-section-smartslider{
  margin-top: calc(var(--header-h) * -1);
}


body.page-id-21 .melvi-header{
  position:fixed;
  left:0;
  right:0;
  top:0;
  z-index:99999;
  background:transparent !important;
  transition:background-color .2s ease, box-shadow .2s ease;
}

body.page-id-21.admin-bar .melvi-header{ top:32px; }
@media (max-width:782px){
  body.page-id-21.admin-bar .melvi-header{ top:46px; }
}

body.page-id-21 .melvi-header.is-scrolled{
  background:var(--wp--preset--color--base) !important;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
}

body.page-id-21 .n2-section-smartslider{
  margin-top: calc(var(--header-h) * -1);
}

/* ================================
   MELVI — Témoignages (Strong Testimonials)
   Objectif : même largeur que les sections (container),
   centré, pas de débordement horizontal, flèches visibles.
================================ */
body.home .strong-view.melvi-testimonials{
  width:100%;
  max-width:var(--wp--style--global--content-size, 1100px);
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
  position:relative;
}

body.home .strong-view.melvi-testimonials.alignfull,
body.home .strong-view.melvi-testimonials.alignwide{
  width:100% !important;
  max-width:var(--wp--style--global--content-size, 1100px) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body.home .strong-view.melvi-testimonials .wpmslider-wrapper{
  position:relative;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  overflow:visible;
}

body.home .strong-view.melvi-testimonials .wpmslider-viewport{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  overflow:hidden;
  height: 600px !important;
}

body.home .strong-view.melvi-testimonials .wpmslider-content{
  box-sizing:border-box;
}

body.home .strong-view.melvi-testimonials .wpmtst-testimonial.t-slide{
  float:left !important;
  box-sizing:border-box;
}

body.home .strong-view.melvi-testimonials.controls-type-sides-outside .wpmslider-controls-direction{
  position:absolute !important;
  top:50% !important;
  left:-18px !important;
  right:-18px !important;
  transform:translateY(-50%) !important;
  z-index:50 !important;
  display:flex !important;
  justify-content:space-between !important;
  pointer-events:none !important;
  opacity:1 !important;
  visibility:visible !important;
}

body.home .strong-view.melvi-testimonials.controls-type-sides-outside .wpmslider-controls-direction *{
  pointer-events:auto !important;
}

/* FAQ */
.home .melvi-faq{
  max-width:var(--wp--style--global--content-size, 1100px);
  margin-left:auto;
  margin-right:auto;
}

.home .melvi-faq details{
  background:var(--wp--preset--color--custom-color-1, #ffffff) !important;
  border:1px solid rgba(39,54,74,0.20) !important;
  border-radius:16px !important;
  overflow:hidden !important;
  margin:16px 0 !important;
  box-shadow:0 10px 28px rgba(28,35,48,0.06);
}

.home .melvi-faq summary{
  list-style:none !important;
  cursor:pointer !important;
  padding:18px 58px 18px 20px !important;
  color:var(--wp--preset--color--contrast, #27364a) !important;
  font-weight:600 !important;
  position:relative !important;
  background:transparent !important;
}

.home .melvi-faq details:hover summary{
  background:rgba(138,173,201,0.10) !important;
}

.home .melvi-faq summary::-webkit-details-marker{
  display:none !important;
}

.home .melvi-faq summary::after{
  content:"+" !important;
  position:absolute !important;
  right:16px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:34px !important;
  height:34px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:var(--wp--preset--color--primary, #8aadc9) !important;
  color:var(--wp--preset--color--contrast, #27364a) !important;
  font-weight:800 !important;
  line-height:1 !important;
}

.home .melvi-faq details[open] summary{
  background:rgba(138,173,201,0.16) !important;
}

.home .melvi-faq details[open] summary::after{
  content:"–" !important;
  background:var(--wp--preset--color--secondary, #384e6a) !important;
  color:var(--wp--preset--color--base, #f8f3e5) !important;
}

.home .melvi-faq details > *:not(summary){
  padding:0 20px 18px 20px !important;
  color:rgba(39,54,74,0.90) !important;
  line-height:1.65 !important;
}

.home .melvi-faq details > *:not(summary) p{
  margin:10px 0 0 0 !important;
}

.home .melvi-faq summary:focus{
  outline:none !important;
}

.home .melvi-faq summary:focus-visible{
  outline:2px solid var(--wp--preset--color--custom-color-4, #efcf7a) !important;
  outline-offset:3px !important;
  border-radius:14px !important;
}

/* CTA Final */
.melvi-cta-final{
  min-height:520px;
  padding:clamp(48px, 6vw, 88px) 22px;
}

@media (max-width:781px){
.melvi-cta-final{min-height:420px;}
}

.melvi-cta-final .wp-block-cover__background{
  background:linear-gradient(135deg, rgba(39,54,74,.78), rgba(39,54,74,.40)) !important;
  opacity:1 !important;
}

.melvi-cta-final__card{
  max-width:920px;
  margin-left:auto;
  margin-right:auto;
  padding:clamp(26px, 4vw, 44px);
  border-radius:20px;
  background:rgba(248,243,229,.92);
  border:1px solid rgba(248,243,229,.45);
  box-shadow:0 22px 60px rgba(28,35,48,.35);
}

.melvi-cta-final__card p:first-child{
  margin:0 0 12px 0;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--wp--preset--color--secondary, #384e6a);
}

.melvi-cta-final__card h2{
  margin:0 0 12px 0;
  color:var(--wp--preset--color--contrast, #27364a);
}

.melvi-cta-final__card p{
  margin:0 0 22px 0;
  color:rgba(39,54,74,.88);
  max-width:62ch;
}

.melvi-cta-final__card .wp-block-buttons{
  gap:14px;
  margin:0 0 14px 0;
}

.melvi-cta-final__card .wp-block-button__link{
  padding:14px 22px !important;
  border-radius:12px !important;
  font-weight:700 !important;
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
  box-shadow:none !important;
}

.melvi-cta-final__card .wp-block-button:first-child .wp-block-button__link{
  background:var(--wp--preset--color--contrast, #27364a) !important;
  color:var(--wp--preset--color--base, #f8f3e5) !important;
  border:2px solid var(--wp--preset--color--contrast, #27364a) !important;
}

.melvi-cta-final__card .wp-block-button:first-child .wp-block-button__link:hover{
  background:var(--wp--preset--color--secondary, #384e6a) !important;
  border-color:var(--wp--preset--color--secondary, #384e6a) !important;
  color:var(--wp--preset--color--base, #f8f3e5) !important;
}

.melvi-cta-final__card .wp-block-button:last-child .wp-block-button__link{
  background:transparent !important;
  color:var(--wp--preset--color--contrast, #27364a) !important;
  border:2px solid var(--wp--preset--color--contrast, #27364a) !important;
}

.melvi-cta-final__card .wp-block-button:last-child .wp-block-button__link:hover{
  background:var(--wp--preset--color--contrast, #27364a) !important;
  color:var(--wp--preset--color--base, #f8f3e5) !important;
  border-color:var(--wp--preset--color--contrast, #27364a) !important;
}

.melvi-cta-final__card p:last-child{
  margin:0;
  font-size:14px;
  color:rgba(56,78,106,.90);
}

.to-display-none {
	display:none;
}

.about-menu-arrow a{
  border-radius:999px !important;
}

/* Effet bouton hero */
/* Hover bouton "Me contacter" du hero (Smart Slider) */
.btn-main-hero .n2-ss-button-container a:hover,
.btn-main-hero .n2-ss-button-container a:focus-visible{
  background-color:#27364A !important;
  border-color:#F8F3E5 !important;
  color:#F8F3E5 !important;
}

/* Si le texte du bouton est dans un div/span interne */
.btn-main-hero .n2-ss-button-container a:hover *,
.btn-main-hero .n2-ss-button-container a:focus-visible *{
  color:#F8F3E5 !important;
}

/* Hover bouton "Me contacter" du hero (Smart Slider) */
.main-btn-hero-accueil .n2-ss-button-container a:hover,
.main-btn-hero-accueil .n2-ss-button-container a:focus-visible{
  background-color:#27364A !important;
  border-color:#F8F3E5 !important;
  color:#F8F3E5 !important;
}

/* Si le texte du bouton est dans un div/span interne */
.main-btn-hero-accueil .n2-ss-button-container a:hover *,
.main-btn-hero-accueil .n2-ss-button-container a:focus-visible *{
  color:#F8F3E5 !important;
}

/* Effet photo Mes réalisation blanc */
.effect-filter-white{
  position:relative;
  overflow:hidden;
  border-radius:18px;
}

.effect-filter-white a{
  display:block;
}

.effect-filter-white img{
  width:100%;
  height:auto;
  display:block;
  transition:transform .35s ease;
}

.effect-filter-white::before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(255,255,255,.60);
  opacity:0;
  transition:opacity .22s ease;
  z-index:2;
  pointer-events:none;
}

.effect-filter-white::after{
  content:attr(data-melvi-title);
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  text-align:center;
  color:#27364A;
  font-weight:600;
  letter-spacing:.10em;
  text-transform:uppercase;
  line-height:1.35;
  white-space:normal;
  opacity:0;
  transform:translateY(6px);
  transition:opacity .22s ease, transform .22s ease;
  z-index:3;
  pointer-events:none;
}

.effect-filter-white:hover::before,
.effect-filter-white:focus-within::before{
  opacity:1;
}

.effect-filter-white:hover::after,
.effect-filter-white:focus-within::after{
  opacity:1;
  transform:translateY(0);
}

.effect-filter-white:hover img,
.effect-filter-white:focus-within img{
  transform:scale(1.03);
}

/* Effet galerie photo Lightbox */ 
.melvi-gallery figure,
.melvi-gallery .wp-block-image,
.melvi-gallery .blocks-gallery-item{
  position:relative;
  overflow:hidden;
  border-radius:18px;
  cursor:zoom-in;
}

.melvi-gallery a{
  display:block;
}

.melvi-gallery img{
  width:100%;
  height:auto;
  display:block;
  transition:transform .35s ease;
  transform:scale(1);
}

.melvi-gallery figure:hover img,
.melvi-gallery .wp-block-image:hover img,
.melvi-gallery .blocks-gallery-item:hover img,
.melvi-gallery a:hover img{
  transform:scale(1.035);
}

.melvi-lightbox{
  position:fixed;
  inset:0;
  background:rgba(39,54,74,.92);
  display:none;
  align-items:center;
  justify-content:center;
  padding:22px;
  z-index:1000000;
}

.melvi-lightbox.is-open{
  display:flex;
}

.melvi-lightbox__stage{
  position:relative;
  width:min(1200px, 92vw);
  height:min(86vh, 860px);
  display:flex;
  align-items:center;
  justify-content:center;
}

.melvi-lightbox__img{
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  border-radius:18px;
  box-shadow:0 24px 80px rgba(0,0,0,.45);
}

.melvi-lightbox__caption{
  position:absolute;
  left:0;
  right:0;
  bottom:-14px;
  transform:translateY(100%);
  color:rgba(248,243,229,.95);
  font-size:14px;
  line-height:1.35;
  text-align:center;
  padding:10px 12px;
}

.melvi-lightbox__close{
  position:absolute;
  top:14px;
  right:14px;
  width:44px;
  height:44px;
  border-radius:999px;
  border:2px solid rgba(248,243,229,.70);
  background:rgba(39,54,74,.55);
  color:#F8F3E5;
  font-size:28px;
  line-height:1;
  display:grid;
  place-items:center;
  cursor:pointer;
}

.melvi-lightbox__close:hover{
  background:rgba(56,78,106,.85);
}

.melvi-lightbox__nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:48px;
  height:48px;
  border-radius:999px;
  border:2px solid rgba(248,243,229,.70);
  background:rgba(39,54,74,.40);
  color:#F8F3E5;
  display:grid;
  place-items:center;
  cursor:pointer;
}

.melvi-lightbox__nav:hover{
  background:rgba(56,78,106,.85);
}

.melvi-lightbox__prev{ left:14px; }
.melvi-lightbox__next{ right:14px; }

html.melvi-lightbox-open,
body.melvi-lightbox-open{
  overflow:hidden;
}

/* Vidéo */
.video-rang {
	text-align: center;
}

.n2-font-1bee203e506a9e5f621be603fd07e0bc-paragraph {
	padding-left: 0px!important;
	padding-right: 0px!important;
}

.n2-ss-section-main-content {
	gap: 20px;
}

.main-btn-hero-accueil {
	padding-left: 55px;
}

.main-paragraph-hero-accueil {
	padding-left: 55px;
}

/* ====== HEADER RESPONSIVE (Melvi) ====== */
:root{
  --melvi-beige:#f8f3e5;
  --melvi-blue:#384e6a;
  --melvi-navy:#27364a;
}

.melvi-header{
  position:sticky;
  top:0;
  z-index:999;
}

.melvi-header .wp-block-site-title,
.melvi-header .wp-block-site-title a{
  white-space:nowrap;
}

.melvi-header .melvi-brand{
  white-space:nowrap;
  display:inline-block;
  line-height:1.05;
}

@media (max-width:1024px){
  .melvi-header .melvi-brand{
    font-size:clamp(22px,3.2vw,34px);
  }
}

@media (min-width:1025px){
  .melvi-header .melvi-nav-mobile-only{ display:none !important; }
}

@media (max-width:1024px){
  .melvi-header .melvi-nav-mobile-only{ display:block !important; }
  .melvi-header .melvi-cta-desktop-only{ display:none !important; }
}

@media (max-width:1024px){
  .melvi-header .wp-block-navigation__container{ display:none !important; }
  .melvi-header .wp-block-navigation__responsive-container-open{ display:flex !important; }
}

@media (max-width:1024px){
  .melvi-header .wp-block-navigation{
    display:flex;
    justify-content:flex-end;
    width:100%;
  }

  .melvi-header .wp-block-navigation__responsive-container-open{
    margin-left:auto;
    margin-right:6px;
    padding:10px 12px;
    border-radius:12px;
    border:1px solid rgba(56,78,106,0.35);
    background:rgba(255,255,255,0.55);
  }

  .melvi-header .wp-block-navigation__responsive-container-open svg{
    width:28px;
    height:28px;
  }

  .melvi-header .wp-block-navigation__responsive-container-open svg,
  .melvi-header .wp-block-navigation__responsive-container-open svg *{
    fill:var(--melvi-blue);
    stroke:var(--melvi-blue);
  }
}

.melvi-header .wp-block-navigation__responsive-container.is-menu-open{
  background:var(--melvi-beige) !important;
}

.melvi-header .wp-block-navigation__responsive-container.is-menu-open
.wp-block-navigation__responsive-container-content{
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}

.melvi-header .wp-block-navigation__responsive-container.is-menu-open
.wp-block-navigation__container{
  display:flex !important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:18px;
  text-align:center;
}

.melvi-header .wp-block-navigation__responsive-container.is-menu-open
.wp-block-navigation-item a{
  color:var(--melvi-blue) !important;
  text-decoration:none;
}

@media (max-width:1024px){
  .melvi-header .wp-block-navigation__responsive-container-open{
    margin-right:-50px !important;
  }
}

/* ===== FINAL FIX HEADER <= 782px : Brand à gauche + Hamburger à droite sur 1 ligne ===== */
@media (max-width:782px){

  /* Ligne principale du header : 2 colonnes (brand / nav) */
  #nav-bar.melvi-header > .wp-block-group.alignwide > .wp-block-columns{
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
  }

  /* Annule le width:100% global sur les colonnes du header */
  #nav-bar.melvi-header > .wp-block-group.alignwide > .wp-block-columns > .wp-block-column{
    width:auto !important;
    flex-basis:auto !important;
  }

  /* Colonne gauche (logo + texte) */
  #nav-bar.melvi-header > .wp-block-group.alignwide > .wp-block-columns > .wp-block-column:first-child{
    flex:1 1 auto !important;
    min-width:0 !important;
  }

  /* Colonne droite (hamburger) + suppression padding-right inline */
  #nav-bar.melvi-header > .wp-block-group.alignwide > .wp-block-columns > .wp-block-column:last-child{
    flex:0 0 auto !important;
    margin-left:auto !important;
    padding-right:0 !important;
  }

  /* Dans la colonne gauche : vos 2 sous-colonnes (logo / texte) restent en ROW */
  #nav-bar.melvi-header > .wp-block-group.alignwide > .wp-block-columns > .wp-block-column:first-child .wp-block-columns{
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:10px !important;
  }

  /* Neutralise alignright + marges du bloc image */
  #nav-bar.melvi-header figure.wp-block-image,
  #nav-bar.melvi-header figure.wp-block-image.alignright{
    float:none !important;
    margin:0 !important;
  }

  /* Logo : override le width inline (114px) */
  #nav-bar.melvi-header figure.wp-block-image img{
    width:36px !important;
    height:auto !important;
    display:block !important;
    object-fit:contain !important;
  }

  /* Texte brand */
  #nav-bar.melvi-header .melvi-brand{
    margin:0 !important;
    white-space:nowrap !important;
    line-height:1 !important;
    font-size:18px !important;
  }

  /* Hamburger bien à droite */
  #nav-bar.melvi-header .wp-block-navigation{
    display:flex !important;
    justify-content:flex-end !important;
    width:auto !important;
  }
  #nav-bar.melvi-header .wp-block-navigation__responsive-container-open{
    margin:0 !important;
  }
}

@media (max-width:782px){

  /* Brand (logo + texte) collé à gauche */
  #nav-bar.melvi-header
  > .wp-block-group.alignwide
  > .wp-block-columns
  > .wp-block-column:first-child{
    display:flex !important;
    justify-content:flex-start !important;
    align-items:center !important;
  }

  /* Le sous-bloc (logo / texte) */
  #nav-bar.melvi-header
  > .wp-block-group.alignwide
  > .wp-block-columns
  > .wp-block-column:first-child .wp-block-columns{
    justify-content:flex-start !important;
  }

  /* Enlève l’alignright WordPress sur le logo */
  #nav-bar.melvi-header figure.wp-block-image.alignright{
    margin-left:0 !important;
    margin-right:10px !important;
  }

  /* Texte aligné à gauche */
  #nav-bar.melvi-header .melvi-brand{
    text-align:left !important;
  }
}

@media (max-width:782px){

  /* Réduit l'écart entre logo et texte */
  #nav-bar.melvi-header
  > .wp-block-group.alignwide
  > .wp-block-columns
  > .wp-block-column:first-child
  .wp-block-columns{
    gap:6px !important;
  }

  /* Colonne logo = largeur auto (ne prend plus 50% / largeur inutile) */
  #nav-bar.melvi-header
  > .wp-block-group.alignwide
  > .wp-block-columns
  > .wp-block-column:first-child
  .wp-block-columns
  > .wp-block-column:first-child{
    flex:0 0 auto !important;
    flex-basis:auto !important;
    width:auto !important;
    min-width:0 !important;
  }

  /* Colonne texte = prend le reste */
  #nav-bar.melvi-header
  > .wp-block-group.alignwide
  > .wp-block-columns
  > .wp-block-column:first-child
  .wp-block-columns
  > .wp-block-column:last-child{
    flex:1 1 auto !important;
    flex-basis:auto !important; /* override le flex-basis:50% inline */
    min-width:0 !important;
  }

  /* Logo : enlève toute marge résiduelle */
  #nav-bar.melvi-header figure.wp-block-image{
    margin:0 !important;
  }
}

@media (max-width: 1284px) {
	#modal-1-content {
		/*display: none;*/
	}

	  .melvi-header .melvi-cta-desktop-only {
    		display: none !important;
  		}
	  .melvi-header .wp-block-navigation__responsive-container-open {
    		display: flex !important;
  		}
		.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
			background-color: inherit;
			display: block;
			position: relative;
			width: 100%;
			z-index: auto;
		  }
}


@media (max-width:1284px){
  /* H1 du hero (Smart Slider) : wrap + largeur 80% */
  #n2-ss-2item1{
    width:80% !important;
    max-width:80% !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    word-break:normal !important;
  }
}

#n2-ss-2item1 {
	font-family: var(--wp--preset--font-family--inter)!important;
}

.n2-font-1bee203e506a9e5f621be603fd07e0bc-paragraph {
	font-family: var(--wp--preset--font-family--inter)!important;
}

#n2-ss-2 .n2-ss-button-container,
#n2-ss-2 .n2-ss-button-container *{
  font-family: var(--wp--preset--font-family--inter) !important;
}

.main-btn-hero-accueil {
	font-family: var(--wp--preset--font-family--inter)!important;
}

.melvi-cta-final__card {
	padding-top:5%;
}

/* Responsive design */
@media (max-width:1284px){
	#nav-bar.melvi-header .melvi-brand{
		font-size: 28px!important;
	  }
	
	#n2-ss-2item1 {
		font-size: 42px!important;
	}

	#n2-ss-3item1 {
		font-size: 25px!important;
		width:80% !important;
		max-width:80% !important;
		white-space:normal !important;
		overflow-wrap:anywhere !important;
		word-break:normal !important;
		margin-top: 80px;
	}
	.main-paragraph-hero-accueil {
		width: 80%!important;
	}

	.about-hero-row {
		display:flex !important;
    	flex-direction:column !important;
	}

	#hero-a-propos {
		margin-top: -50px;
	}
	.has-global-padding {
		padding-top:0px;
		margin-top: -50px;
	}

	.img-melvi-hero-a-propos {
		width: 50%;
		margin-bottom: 0px!important;
	}

	.txt-hero-a-propos {
		padding-bottom:50px;
	}

	.hero-prestation {
		padding-top: 50px;
	}

	#titlemesrealisations {
  		padding-bottom: 50px;
	}

	.section-realisations {
		margin-left: 5%;
		margin-right: 5%;
	}

	#sb_instagram {
		padding-top: 50px;
	}

	#faq {
		padding-top: 100px;
		margin-left: 5%;
		margin-right: 5%;
	}
}


@media (max-width:700px){
	#n2-ss-2item1 {
		font-size: 28px!important;
		padding-bottom: 5px!important;
	}
	.n2-ss-section-main-content {
		padding-left: 0px!important;
	}

	.main-paragraph-hero-accueil p {
		font-size: 18px!important;
		padding-bottom: 0px!important;
	}

	#sb_instagram {
		padding-right: 2% !important;
  		padding-left: 2% !important;
	}
	
	#melvi-collage-accueil-1 {
		margin-left: 15%;
		margin-right: 5%;
	}

	#melvi-collage-accueil-2 {
		margin-right: 15%;
		margin-left: 5%;
	}
	
	#melvi-collage-accueil-3 {
		margin-left: 15%;
		margin-right: 5%;
	}

	.melvi-photos-first-mobile {
    	display:flex !important;
    	flex-direction:column-reverse !important;
  	}
	.has-global-padding {
		padding-top:0px;
		padding-right:0px;
		padding-left:0px;
		margin-top: -50px;
	}

	.about-mission {
		margin-left: 5%;
		margin-right: 5%;
	}

	#methode {
		margin-left: 5%;
		margin-right: 5%;
	}
	
	.img-melvi-hero-a-propos {
		width: 100%;
		margin-top: 0px!important;
		margin-left: 0px!important;
		margin-right: 0px!important;
	}

	.titletoshow {
		padding-top: 80px;
	}
	.about-menu-item {
		max-width: 100%;
		width: 270px;
	}


	.presta-section {
		margin-left: 5%;
		margin-right: 5%;
	}

	#last-paragraph-presta {
		margin-top: 100px;
	}

	.melvi-cta-final {
		padding-top: 100px;
	}
	#n2-ss-3item1 {
		font-size: 18px!important;
		margin-top: 100px;
		width: 100%!important;
	}
}

	/* Page Réalisations (page-id-21) : pas de padding left/right sur le contenu */
/* ===== FIX MOBILE - PAGES RÉALISATION ===== */
@media (max-width:781px) {

  body.single-realisation{
    overflow-x:hidden !important;
  }

  /* 1) Le contenu doit occuper toute la largeur */
  body.single-realisation .wp-site-blocks,
  body.single-realisation main,
  body.single-realisation .entry-content{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    overflow-x:hidden !important;
  }

  /* 2) Neutralise les alignwide/alignfull qui créent des débords */
  body.single-realisation .alignwide,
  body.single-realisation .wp-block-group.alignwide,
  body.single-realisation .wp-block-columns.alignwide,
  body.single-realisation .alignfull,
  body.single-realisation .wp-block-group.alignfull{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  /* 3) Embeds / iframes (LinkedIn, vidéos) = 100% responsive */
  body.single-realisation .wp-block-embed,
  body.single-realisation .wp-block-embed__wrapper{
    max-width:100% !important;
    overflow:hidden !important;
  }

  body.single-realisation iframe,
  body.single-realisation .wp-block-embed iframe{
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    aspect-ratio:16/9 !important;
    display:block !important;
  }

  /* cas LinkedIn (souvent la cause du débordement) */
  body.single-realisation .wp-block-embed-linkedin,
  body.single-realisation .wp-block-embed-linkedin .wp-block-embed__wrapper,
  body.single-realisation blockquote{
    max-width:100% !important;
    overflow:hidden !important;
  }

  /* 4) CTA boutons en colonne (mobile) */
  body.single-realisation .wp-block-buttons{
    flex-direction:column !important;
    align-items:stretch !important;
    gap:12px !important;
  }
  body.single-realisation .wp-block-button__link{
    width:100% !important;
    text-align:center !important;
  }

	/* Single Réalisation : marges latérales 5% sur le conteneur principal */
	.domargin{
		margin-left: 5%!important;
		margin-right: 5%!important;
  	}
}


.single-realisation {
	padding-top:0px!important;
}

body.single-realisation #nav-bar.melvi-header{
  background:#f8f3e5 !important;
}

.page-id-18 {
	padding-top:0px!important;
}

body.page-id-18 #nav-bar.melvi-header{
  background:#f8f3e5 !important;
}

.page-id-19 {
	padding-top:0px!important;
}

body.page-id-19 #nav-bar.melvi-header{
  background:#f8f3e5 !important;
}

.page-id-20 {
	padding-top:0px!important;
}

body.page-id-20 #nav-bar.melvi-header{
  background:#f8f3e5 !important;
}

.page-id-3 {
	padding-top:0px!important;
}

body.page-id-3 #nav-bar.melvi-header{
  background:#f8f3e5 !important;
}

.page-id-344 {
	padding-top:0px!important;
}

body.page-id-344 #nav-bar.melvi-header{
  background:#f8f3e5 !important;
}

.melvi-cta-final__card {
	padding-left:5%!important;
	padding-right:5%!important;
	padding-top:5%;
	margin-top:5%;
}
