/* Celine: animated hero test, scoped to the home banner. */
body.home .cl-hero-video-test {
  background-color:#faf7f2!important;
  background-size:contain!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
}
body.home .cl-hero-video-test #rev_slider_1_1_wrapper,
body.home .cl-hero-video-test #rev_slider_1_1,
body.home .cl-hero-video-test #rev_slider_1_1 rs-slide,
body.home .cl-hero-video-test #rev_slider_1_1 rs-slides {
  background:transparent!important;
}
body.home .cl-hero-video-test #rev_slider_1_1 rs-sbg-px,
body.home .cl-hero-video-test #rev_slider_1_1 rs-sbg-wrap,
body.home .cl-hero-video-test #rev_slider_1_1 rs-sbg,
body.home .cl-hero-video-test #rev_slider_1_1 img.rev-slidebg {
  visibility:hidden!important;
}
body.home .cl-hero-video-test .cl-hero-video-media {
  position:absolute!important;inset:0!important;
  width:100%!important;height:100%!important;
  margin:0!important;z-index:0!important;pointer-events:none;
}
body.home .cl-hero-video-media .elementor-widget-container,
body.home .cl-hero-video-media .elementor-wrapper {
  width:100%!important;height:100%!important;padding:0!important;background:#faf7f2!important;
}
body.home .cl-hero-video-media video {
  display:block;width:100%!important;height:100%!important;background:#faf7f2!important;
  object-fit:contain!important;object-position:center top!important;
}
body.home .cl-hero-video-test .elementor-widget-slider_revolution {position:relative;z-index:1;}
@media (max-width:767px) {
  body.home .cl-hero-video-test {background-size:cover!important;}
  body.home .cl-hero-video-media video {object-fit:cover!important;}
}
@media (prefers-reduced-motion:reduce) {
  body.home .cl-hero-video-test .cl-hero-video-media {display:none!important;}
}
/* End Celine animated hero test. */

/* Celine hero message styling. */
  /* Reservation button text and icon match the champagne border. */
  #rev_slider_1_1_wrapper #slider-1-slide-1-layer-1,
  #rev_slider_1_1_wrapper #slider-1-slide-1-layer-1:hover,
  #rev_slider_1_1_wrapper #slider-1-slide-1-layer-1 i {
    color: rgb(201, 180, 143) !important;
  }
body.home .cl-hero-video-test #slider-1-slide-1-layer-0.rs-layer {
  font-family: Lato, Arial, sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  color: #F3E9D9 !important;
  -webkit-text-stroke: .35px rgba(35, 29, 24, .8) !important;
  text-shadow: 0 2px 6px rgba(0, 0, 0, .8) !important;
}
@media only screen and (max-width: 767px) {
  body.home .cl-hero-video-test #slider-1-slide-1-layer-0.rs-layer {
    font-size: 18px !important;
    color: #F3E9D9 !important;
    line-height: 22px !important;
    max-width: 425px !important;
  }
  .elementor-social-icon.elementor-social-icon-tiktok i {
    font-size: 20px !important;
    line-height: 20px !important;
    transform: none !important;
  }
  /* Footer social icons: keep Instagram and TikTok identical on mobile and desktop */
  .elementor-repeater-item-ec5b3bd.elementor-social-icon,
  .elementor-repeater-item-9f88af4.elementor-social-icon {
    width: 40px !important;
    height: 40px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    vertical-align: middle !important;
  }
  .elementor-repeater-item-ec5b3bd.elementor-social-icon i.fab.fa-instagram,
  .elementor-repeater-item-9f88af4.elementor-social-icon i.fab.fa-tiktok {
    display: block !important;
    width: auto !important;
    height: auto !important;
    font-size: 20px !important;
    line-height: 1 !important;
    transform: none !important;
  }
  .elementor-social-icon.elementor-social-icon-tiktok.elementor-repeater-item-41da0fc i {
    font-size: 14px !important;
    line-height: 14px !important;
    transform: none !important;
  }
}
@media only screen and (max-width: 767px) {
  body.page-id-142 .elementor-element-b6294ec > .elementor-container {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  body.page-id-142 .elementor-element-b6294ec .elementor-column {
    width: 100% !important;
  }
  body.page-id-142 .elementor-element-b6294ec .elementor-widget-heading,
  body.page-id-142 .elementor-element-b6294ec .elementor-widget-text-editor,
  body.page-id-142 .elementor-element-b6294ec .elementor-widget-social-icons,
  body.page-id-142 .elementor-element-b6294ec .elementor-widget-text-editor p {
    text-align: center !important;
  }
  body.page-id-142 .elementor-element-b6294ec .elementor-widget-heading .elementor-heading-title {
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 26px !important;
    line-height: 1.25 !important;
    font-weight: 400 !important;
    color: #2C2925 !important;
  }
  body.page-id-142 .elementor-element-b6294ec .elementor-widget-text-editor,
  body.page-id-142 .elementor-element-b6294ec .elementor-widget-text-editor p {
    font-family: "Helvetica Neue", Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
    color: #5C5348 !important;
  }
}

@media only screen and (max-width: 767px) {
    .whb-general-header {
        border-color: #ffff !important;
        border-bottom-width: 0px !important;
        border-bottom-style: none !important;
    }
	.wd-tools-element .wd-tools-text{
		display: none;
	}
	label.woocommerce-form-login__rememberme span{
		font-size: 13px;
		vertical-align: middle;
	}
	/* Mobile logo: modest enlargement, centered between controls. */
	body .whb-header .whb-mobile-center .site-logo img {
		transform: scale(1.35) !important;
		transform-origin: center center !important;
	}
	.page-id-8 form .woocommerce-FormRow label{
		font-size: 15px;
	}
}


/* Celine checkout: keep express wallets visible in the final payment step. */
/* Hide Stripe express wallets while the customer is entering information. */
body.woocommerce-checkout:not(.celine-payment-visible) .woolentor-checkout__section.woolentor-step--info #wc-stripe-express-checkout-element,
body.woocommerce-checkout:not(.celine-payment-visible) .woolentor-checkout__section.woolentor-step--info #wc-stripe-express-checkout-button-separator {
  display: none !important;
}
body.woocommerce-checkout.celine-payment-visible .woolentor-checkout__box.woolentor-step--payment .woolentor-checkout__section.woolentor-step--info {
  display: block !important;
  height: auto !important;
  max-height: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin: 0 0 20px !important;
}
body.woocommerce-checkout.celine-payment-visible .woolentor-checkout__box.woolentor-step--payment .woolentor-checkout__section.woolentor-step--info > :not(#wc-stripe-express-checkout-element) {
  display: none !important;
}
body.woocommerce-checkout.celine-payment-visible #wc-stripe-express-checkout-element {
  display: flex !important;
  width: 100% !important;
  margin: 0 0 18px !important;
}


/* Celine home: subtle logo enlargement. */
@media only screen and (max-width: 767px) {
  body.home .whb-header .whb-mobile-center .site-logo img {
    transform: scale(1.42) !important;
  }
}
@media only screen and (min-width: 768px) {
  body.home .whb-header .wd-main-logo img {
    max-width: 315px !important;
  }
}


/* Celine home: warm ivory page background. */
body.home .website-wrapper,
body.home .whb-general-header,
body.home .whb-header-bottom,
body.home .main-page-wrapper,
body.home .cl-hero-video-test {
  background-color: #faf7f2 !important;
}
/* Keep the hero media visible above the page background. */
body.home .cl-hero-video-test #rev_slider_1_1_wrapper,
body.home .cl-hero-video-test #rev_slider_1_1,
body.home .cl-hero-video-test #rev_slider_1_1 rs-slide,
body.home .cl-hero-video-test #rev_slider_1_1 rs-slides {
  background-color: transparent !important;
}


/* Celine home: blend logo into the warm ivory background. */
body.home .whb-general-header .site-logo img,
body.home .whb-mobile-center .site-logo img,
body.home .whb-sticky-header .site-logo img {
  mix-blend-mode: multiply !important;
}


/* Celine desktop: soften header separator lines. */
@media only screen and (min-width: 768px) {
  body.home .whb-general-header,
  body.home .whb-header-bottom {
    border-bottom-color: #E7DED0 !important;
  }
}


/* Celine sitewide: warm ivory background outside content cards. */
body:not(.woocommerce-checkout),
body:not(.woocommerce-checkout) .website-wrapper,
body:not(.woocommerce-checkout) .whb-general-header,
body:not(.woocommerce-checkout) .whb-header-bottom,
body:not(.woocommerce-checkout) .main-page-wrapper {
  background-color: #faf7f2 !important;
}
body:not(.woocommerce-checkout) .whb-general-header .site-logo img,
body:not(.woocommerce-checkout) .whb-mobile-center .site-logo img,
body:not(.woocommerce-checkout) .whb-sticky-header .site-logo img {
  mix-blend-mode: multiply !important;
}
body:not(.woocommerce-checkout) .cart-widget-side {
  background-color: #faf7f2 !important;
}
@media only screen and (min-width: 768px) {
  body:not(.woocommerce-checkout) .whb-general-header,
  body:not(.woocommerce-checkout) .whb-header-bottom {
    border-bottom-color: #E7DED0 !important;
  }
}


/* Celine checkout: match the sitewide ivory background. */
body.woocommerce-checkout {
  background-color: #faf7f2 !important;
}


/* Celine desktop: remove the unwanted header separator and center hero copy. */
@media only screen and (min-width: 768px) {
  body.home .whb-general-header,
  body.home .whb-header-bottom {
    border-bottom-color: transparent !important;
    border-bottom-width: 0 !important;
    border-bottom-style: none !important;
  }
  body.home #rev_slider_1_1 .rs-parallax-wrap:has(> #slider-1-slide-1-layer-0),
  body.home #rev_slider_1_1 .rs-parallax-wrap:has(> #slider-1-slide-1-layer-1) {
    left: 50% !important;
    transform: translateX(-50%) !important;
  }
}

/* Celine desktop preview: use the hero space more naturally. */
@media only screen and (min-width: 768px) {
  body.home .cl-hero-video-media video {
    object-fit: contain !important;
    object-position: center top !important;
  }
  body.home .cl-hero-video-test #slider-1-slide-1-layer-0.rs-layer {
    max-width: 760px !important;
    white-space: normal !important;
  }
}

/* Celine desktop: unify the main navigation across the site. */
@media only screen and (min-width: 768px) {
  body:not(.woocommerce-checkout) .wd-header-main-nav #menu-main-menu {
    display: inline-flex !important;
    align-items: center !important;
    width: max-content !important;
    margin-left: auto !important;
    margin-right: auto !important;
    gap: 2px !important;
    padding: 4px !important;
    border: 1px solid #E7DED0 !important;
    border-radius: 14px !important;
    background: #faf7f2 !important;
    box-shadow: 0 2px 10px rgba(80, 60, 40, .06) !important;
  }
  body:not(.woocommerce-checkout) .wd-header-main-nav #menu-main-menu > li > a {
    border-radius: 9px !important;
    padding: 10px 14px !important;
    background: transparent !important;
    color: #333333 !important;
  }
  body:not(.woocommerce-checkout) .wd-header-main-nav #menu-main-menu > li.current-menu-item > a {
    background: #E7DED0 !important;
    color: #5C4832 !important;
  }
  body:not(.woocommerce-checkout) .wd-header-main-nav {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
  }
  body.page-id-142 .elementor-element-b6294ec > .elementor-container {
    width: 100% !important;
    max-width: 1040px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  body.page-id-142 .elementor-element-b6294ec .elementor-column {
    width: 100% !important;
  }
  body.page-id-142 .elementor-element-b6294ec .elementor-widget-heading,
  body.page-id-142 .elementor-element-b6294ec .elementor-widget-text-editor,
  body.page-id-142 .elementor-element-b6294ec .elementor-widget-social-icons {
    text-align: center !important;
  }
  body.page-id-142 .elementor-element-b6294ec .elementor-widget-text-editor p {
    text-align: center !important;
  }
  body.page-id-142 .elementor-element-b6294ec .elementor-widget-heading .elementor-heading-title {
    font-family: Georgia, "Times New Roman", serif !important;
    font-weight: 400 !important;
    letter-spacing: .15px !important;
    color: #2C2925 !important;
  }
  body.page-id-142 .elementor-element-b6294ec .elementor-widget-text-editor,
  body.page-id-142 .elementor-element-b6294ec .elementor-widget-text-editor p {
    font-family: "Helvetica Neue", Arial, sans-serif !important;
    font-size: 17px !important;
    line-height: 1.7 !important;
    color: #5C5348 !important;
  }
  .elementor-social-icon.elementor-social-icon-tiktok i {
    font-size: 20px !important;
    line-height: 20px !important;
    transform: none !important;
  }
  /* Footer social icons: keep Instagram and TikTok identical on mobile and desktop */
  .elementor-repeater-item-ec5b3bd.elementor-social-icon,
  .elementor-repeater-item-9f88af4.elementor-social-icon {
    width: 40px !important;
    height: 40px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    vertical-align: middle !important;
  }
  .elementor-repeater-item-ec5b3bd.elementor-social-icon i.fab.fa-instagram,
  .elementor-repeater-item-9f88af4.elementor-social-icon i.fab.fa-tiktok {
    display: block !important;
    width: auto !important;
    height: auto !important;
    font-size: 20px !important;
    line-height: 1 !important;
    transform: none !important;
  }
  .elementor-social-icon.elementor-social-icon-tiktok.elementor-repeater-item-41da0fc i {
    font-size: 14px !important;
    line-height: 14px !important;
    transform: none !important;
  }
  body:not(.woocommerce-checkout) .wd-header-main-nav #menu-main-menu > li.current-menu-item > a,
  body:not(.woocommerce-checkout) .wd-header-main-nav #menu-main-menu > li.current_page_item > a {
    background: #24221F !important;
    color: #FFFFFF !important;
  }
}

/* Final footer social alignment: one consistent size everywhere */
body .elementor-element-3bb6b0eb .elementor-social-icons-wrapper {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
}
body .elementor-element-3bb6b0eb .elementor-social-icon.elementor-repeater-item-ec5b3bd,
body .elementor-element-3bb6b0eb .elementor-social-icon.elementor-repeater-item-9f88af4 {
  width: 40px !important;
  height: 40px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
}
body .elementor-element-3bb6b0eb .elementor-social-icon.elementor-repeater-item-ec5b3bd i.fab.fa-instagram,
body .elementor-element-3bb6b0eb .elementor-social-icon.elementor-repeater-item-9f88af4 i.fab.fa-tiktok {
  display: block !important;
  width: auto !important;
  height: auto !important;
  font-size: 20px !important;
  line-height: 20px !important;
  transform: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Test accueil : petite bulle de messages capillaires */
body.home::after {
  content: "Vos cheveux gonflent dès qu'il pleut ?";
  position: fixed;
  right: 24px;
  bottom: 92px;
  z-index: 9999;
  width: min(270px, calc(100vw - 40px));
  box-sizing: border-box;
  padding: 12px 16px;
  border: 1px solid #C9B48F;
  border-radius: 18px 18px 5px 18px;
  background: #E7DED0;
  color: #24221F;
  box-shadow: 0 6px 20px rgba(36, 34, 31, .18);
  font-family: Lato, Arial, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
  text-align: center;
  opacity: 0;
  pointer-events: none;
  animation: celinePainBubble 28s ease-in-out infinite;
}
@keyframes celinePainBubble {
  0%, 4% { opacity: 0; transform: translateY(8px); content: "Vos cheveux gonflent dès qu'il pleut ?"; }
  7%, 17% { opacity: 1; transform: translateY(0); content: "Vos cheveux gonflent dès qu'il pleut ?"; }
  20%, 21% { opacity: 0; transform: translateY(8px); content: "Vous passez trop de temps à les coiffer ?"; }
  24%, 34% { opacity: 1; transform: translateY(0); content: "Vous passez trop de temps à les coiffer ?"; }
  37%, 38% { opacity: 0; transform: translateY(8px); content: "Vos cheveux sont secs malgré vos soins ?"; }
  41%, 51% { opacity: 1; transform: translateY(0); content: "Vos cheveux sont secs malgré vos soins ?"; }
  54%, 55% { opacity: 0; transform: translateY(8px); content: "Votre lissage ne tient jamais assez longtemps ?"; }
  58%, 68% { opacity: 1; transform: translateY(0); content: "Votre lissage ne tient jamais assez longtemps ?"; }
  71%, 72% { opacity: 0; transform: translateY(8px); content: "Et si vos cheveux devenaient enfin faciles à coiffer ?"; }
  75%, 85% { opacity: 1; transform: translateY(0); content: "Et si vos cheveux devenaient enfin faciles à coiffer ?"; }
  88%, 89% { opacity: 0; transform: translateY(8px); content: "Retrouvez des cheveux souples, brillants et disciplinés."; }
  92%, 97% { opacity: 1; transform: translateY(0); content: "Retrouvez des cheveux souples, brillants et disciplinés."; }
  100% { opacity: 0; transform: translateY(8px); content: "Vos cheveux gonflent dès qu'il pleut ?"; }
}
@media only screen and (max-width: 767px) {
  body.home::after {
    right: 14px;
    bottom: 82px;
    width: min(235px, calc(100vw - 28px));
    padding: 10px 12px;
    border-radius: 16px 16px 4px 16px;
    font-size: 13px;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.home::after {
    animation: none;
    opacity: 1;
    transform: none;
  }
}

