:root{
  --masp-ink:#111827;
  --masp-text:#38465a;
  --masp-muted:#66758a;
  --masp-line:#e2e8f0;
  --masp-soft:#f6faf9;
  --masp-soft-2:#eef7f4;
  --masp-green:#0f766e;
  --masp-green-dark:#0b4f4a;
  --masp-accent:#f59e0b;
  --masp-shadow:0 18px 48px rgba(17,24,39,.09);
  --masp-shadow-strong:0 26px 72px rgba(17,24,39,.14);
}

html,body,#outer-wrap,#wrap{max-width:100%;overflow-x:hidden}
body{
  color:var(--masp-text);
  background:var(--masp-soft);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  letter-spacing:0!important;
}
#wpadminbar,
#wpadminbar *{
  box-shadow:none!important;
  text-transform:none!important;
}
#wpadminbar input,
#wpadminbar button,
#wpadminbar .button,
#wpadminbar input[type=submit]{
  all:revert!important;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;
}
#wpadminbar #adminbarsearch{display:none!important}
h1,h2,h3,h4,.page-header-title,.elementor-heading-title{
  color:var(--masp-ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  letter-spacing:0!important;
}
p,li,.elementor-widget-text-editor{color:var(--masp-text);line-height:1.72}
.container,.elementor-section-boxed>.elementor-container{max-width:1180px!important}

#site-header{
  background:rgba(255,255,255,.97)!important;
  border-bottom:1px solid rgba(17,24,39,.08)!important;
  box-shadow:0 10px 30px rgba(17,24,39,.06)!important;
}
#site-header-inner{
  min-height:92px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
  padding:14px 0!important;
}
#site-logo,#site-navigation-wrap{float:none!important}
#site-logo{display:flex!important;align-items:center!important;line-height:1!important}
#site-logo img{width:168px!important;height:auto!important;display:block!important}
#site-navigation-wrap{flex:1 1 auto!important;right:auto!important}
#site-navigation-wrap .dropdown-menu{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:4px 8px!important;
}
#site-navigation-wrap .dropdown-menu>li{float:none!important}
#site-navigation-wrap .dropdown-menu>li>a{
  height:auto!important;
  line-height:32px!important;
  padding:0 8px!important;
  color:var(--masp-ink)!important;
  font-size:12px!important;
  font-weight:850!important;
  text-transform:none!important;
}
#site-navigation-wrap .dropdown-menu>li>a:hover,
#site-navigation-wrap .dropdown-menu>.current-menu-item>a{color:var(--masp-green)!important}
#site-header .sub-menu{
  background:#fff!important;
  border:1px solid var(--masp-line)!important;
  border-radius:8px!important;
  box-shadow:var(--masp-shadow-strong)!important;
  overflow:hidden!important;
}
#site-header .sub-menu a{color:var(--masp-ink)!important;line-height:1.35!important}
.oceanwp-mobile-menu-icon a{color:var(--masp-ink)!important}

.page-header,.page-header.background-image-page-header{
  position:relative;
  overflow:hidden;
  min-height:220px!important;
  padding:58px 18px!important;
  background:
    radial-gradient(circle at 82% 20%,rgba(15,118,110,.32),transparent 30%),
    linear-gradient(125deg,#101827 0,#17313d 58%,#0f766e 100%)!important;
  border:0!important;
}
.page-header .container{
  position:relative;
  z-index:1;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:14px!important;
}
.page-header-title{
  max-width:980px!important;
  margin:0!important;
  color:#fff!important;
  font-size:clamp(36px,4.8vw,64px)!important;
  line-height:1.04!important;
  font-weight:950!important;
  text-shadow:0 4px 28px rgba(0,0,0,.25)!important;
}
.site-breadcrumbs{
  position:relative!important;
  inset:auto!important;
  margin:0!important;
  text-align:left!important;
  color:rgba(255,255,255,.8)!important;
}
.site-breadcrumbs a,.site-breadcrumbs span,.site-breadcrumbs li,.trail-items,.trail-item,.trail-end{
  color:rgba(255,255,255,.8)!important;
}

.home .elementor-section:first-of-type{
  min-height:620px!important;
  padding:86px 18px!important;
  background:
    radial-gradient(circle at 80% 18%,rgba(15,118,110,.18),transparent 30%),
    linear-gradient(130deg,#ffffff 0,#f2faf8 50%,#d7eeea 100%)!important;
  overflow:hidden!important;
}
.home .elementor-section:first-of-type:before,
.home .elementor-section:first-of-type:after,
.home .elementor-section:first-of-type>.elementor-background-overlay{
  display:none!important;
  opacity:0!important;
  background:none!important;
  background-image:none!important;
}
.home .elementor-section:first-of-type>.elementor-container{
  align-items:center!important;
  max-width:1180px!important;
}
.home .elementor-section:first-of-type .elementor-widget-wrap{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.home .elementor-section:first-of-type h1{
  max-width:800px!important;
  color:var(--masp-ink)!important;
  font-size:clamp(44px,5.5vw,74px)!important;
  line-height:1!important;
  font-weight:950!important;
  text-shadow:none!important;
}
.home .elementor-section:first-of-type p,
.home .elementor-section:first-of-type .elementor-widget-text-editor{
  max-width:760px!important;
  color:var(--masp-text)!important;
  font-size:17px!important;
}

body:not(.home) .elementor-section.elementor-top-section{
  padding:72px 18px!important;
  background:#fff!important;
  background-image:none!important;
}
body:not(.home) .elementor-section.elementor-top-section:before,
body:not(.home) .elementor-section.elementor-top-section:after,
body:not(.home) .elementor-section.elementor-top-section>.elementor-background-overlay{
  display:none!important;
  opacity:0!important;
  background:none!important;
  background-image:none!important;
}
body:not(.home) .elementor-section.elementor-top-section:first-of-type{
  background:linear-gradient(180deg,#fff 0%,#f6faf9 100%)!important;
  background-image:linear-gradient(180deg,#fff 0%,#f6faf9 100%)!important;
}
body:not(.home) .elementor-section.elementor-top-section:nth-of-type(even){background:var(--masp-soft)!important}
body:not(.home) .elementor-section.elementor-top-section h1,
body:not(.home) .elementor-section.elementor-top-section h2{
  color:var(--masp-ink)!important;
  font-weight:930!important;
  line-height:1.1!important;
}
body:not(.home) .elementor-section.elementor-top-section h2{font-size:clamp(28px,3.2vw,46px)!important}
body:not(.home) .elementor-section.elementor-top-section h3{
  color:var(--masp-ink)!important;
  font-weight:850!important;
}
body:not(.home) .elementor-section.elementor-top-section p,
body:not(.home) .elementor-section.elementor-top-section li,
body:not(.home) .elementor-section.elementor-top-section .elementor-widget-text-editor,
body:not(.home) .elementor-section.elementor-top-section .elementor-icon-box-description,
body:not(.home) .elementor-section.elementor-top-section .elementor-icon-list-text{
  color:var(--masp-text)!important;
  opacity:1!important;
}
body:not(.home) .elementor-section.elementor-top-section .elementor-icon-list-item{
  color:var(--masp-text)!important;
}
body:not(.home) .elementor-section.elementor-top-section .elementor-icon-list-icon i,
body:not(.home) .elementor-section.elementor-top-section .elementor-icon-list-icon svg{
  color:#16a34a!important;
  fill:#16a34a!important;
}
body:not(.home) .elementor-section.elementor-top-section:first-of-type{
  padding-top:70px!important;
  padding-bottom:70px!important;
}
body:not(.home) .elementor-section.elementor-top-section:first-of-type>.elementor-container{
  max-width:980px!important;
}

.elementor-widget-icon-box .elementor-widget-container,
.elementor-widget-image-box .elementor-widget-container,
.woocommerce ul.products li.product,
.wpcf7 form,
.blog-entry{
  background:#fff!important;
  border:1px solid rgba(17,24,39,.1)!important;
  border-radius:8px!important;
  box-shadow:var(--masp-shadow)!important;
}
.elementor-widget-icon-box .elementor-widget-container,
.elementor-widget-image-box .elementor-widget-container{
  height:100%!important;
  padding:28px 24px!important;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important;
}
.elementor-widget-icon-box .elementor-widget-container:hover,
.elementor-widget-image-box .elementor-widget-container:hover,
.woocommerce ul.products li.product:hover{
  transform:translateY(-3px)!important;
  border-color:rgba(15,118,110,.26)!important;
  box-shadow:var(--masp-shadow-strong)!important;
}
.elementor-icon,.elementor-icon i,.elementor-icon svg,.elementor-icon-box-icon i,.elementor-icon-box-icon svg{
  color:var(--masp-green)!important;
  fill:var(--masp-green)!important;
}
.elementor-divider{display:none!important}

.elementor-button,.button,input[type=submit],.woocommerce a.button,.woocommerce button.button,.single_add_to_cart_button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  padding:13px 22px!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--masp-green)!important;
  color:#fff!important;
  font-weight:850!important;
  text-transform:none!important;
  letter-spacing:0!important;
  box-shadow:0 16px 38px rgba(15,118,110,.22)!important;
}
.elementor-button:hover,.button:hover,input[type=submit]:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.single_add_to_cart_button:hover{
  background:var(--masp-green-dark)!important;
  color:#fff!important;
  transform:translateY(-1px)!important;
}

input[type=text],input[type=email],input[type=tel],input[type=url],input[type=password],select,textarea{
  min-height:50px!important;
  border:1px solid rgba(17,24,39,.16)!important;
  border-radius:8px!important;
  background:#fff!important;
  color:var(--masp-ink)!important;
  box-shadow:none!important;
}
textarea{min-height:150px!important}
.wpcf7 form{padding:30px!important}
.wpcf7 label{color:var(--masp-ink)!important;font-weight:750!important}

.woocommerce ul.products{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important;
  gap:24px!important;
}
.woocommerce ul.products li.product{
  float:none!important;
  width:auto!important;
  margin:0!important;
  padding:18px!important;
  text-align:left!important;
}
.woocommerce ul.products li.product img{
  aspect-ratio:16/10;
  object-fit:cover;
  border-radius:8px!important;
  background:var(--masp-soft)!important;
}
.woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  color:var(--masp-ink)!important;
  font-size:17px!important;
  line-height:1.25!important;
  font-weight:850!important;
}
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price{
  color:var(--masp-green)!important;
  font-size:18px!important;
  font-weight:900!important;
}
.masp-price-then{
  display:block;
  margin-top:5px;
  color:var(--masp-muted)!important;
  font-size:13px!important;
  font-weight:750!important;
}

@media(max-width:959px){
  #site-header-inner{min-height:76px!important}
  #site-navigation-wrap{display:none!important}
  .home .elementor-section:first-of-type{min-height:0!important;padding:64px 18px!important}
  body:not(.home) .elementor-section.elementor-top-section{padding:54px 18px!important}
}
@media(max-width:767px){
  #site-logo img{width:150px!important}
  .page-header{min-height:0!important;padding:44px 18px!important}
  .page-header-title{font-size:clamp(32px,10vw,44px)!important}
  .home .elementor-section:first-of-type{padding:52px 18px!important}
  .home .elementor-section:first-of-type h1{font-size:clamp(36px,10vw,50px)!important}
  .elementor-button,.button,input[type=submit],.woocommerce a.button,.woocommerce button.button{width:100%;white-space:normal!important;text-align:center!important}
  .woocommerce ul.products{grid-template-columns:1fr!important}
}

/* Page dépannage: remove the legacy boxed grey image panel and turn the
   opening content into a clean editorial block. */
body.page-id-516 .elementor-element-81a41d2,
body.page-id-673 .elementor-element-81a41d2{
  background:#fff!important;
  background-image:none!important;
  padding:72px 18px 64px!important;
}
body.page-id-516 .elementor-element-81a41d2 .elementor-widget-wrap,
body.page-id-516 .elementor-element-81a41d2 .elementor-column,
body.page-id-516 .elementor-element-81a41d2 .elementor-container,
body.page-id-516 .elementor-element-81a41d2 .elementor-widget,
body.page-id-516 .elementor-element-81a41d2 .elementor-widget-container,
body.page-id-516 .elementor-element-81a41d2 .elementor-background-overlay,
body.page-id-673 .elementor-element-81a41d2 .elementor-widget-wrap,
body.page-id-673 .elementor-element-81a41d2 .elementor-column,
body.page-id-673 .elementor-element-81a41d2 .elementor-container,
body.page-id-673 .elementor-element-81a41d2 .elementor-widget,
body.page-id-673 .elementor-element-81a41d2 .elementor-widget-container,
body.page-id-673 .elementor-element-81a41d2 .elementor-background-overlay{
  background:transparent!important;
  background-image:none!important;
  opacity:1!important;
}
body.page-id-516 .elementor-element-81a41d2 .elementor-background-overlay,
body.page-id-673 .elementor-element-81a41d2 .elementor-background-overlay{
  display:none!important;
  opacity:0!important;
}
body.page-id-516 .elementor-element-5b568316,
body.page-id-673 .elementor-element-5b568316{
  max-width:980px!important;
  width:100%!important;
  margin:0 auto!important;
  padding:0!important;
  background:transparent!important;
  background-image:none!important;
}
body.page-id-516 .elementor-element-5b568316:before,
body.page-id-516 .elementor-element-5b568316:after,
body.page-id-516 .elementor-element-5b568316 .elementor-background-overlay,
body.page-id-673 .elementor-element-5b568316:before,
body.page-id-673 .elementor-element-5b568316:after,
body.page-id-673 .elementor-element-5b568316 .elementor-background-overlay{
  display:none!important;
  opacity:0!important;
  background:none!important;
  background-image:none!important;
}
body.page-id-516 .elementor-element-5b568316 .elementor-container,
body.page-id-673 .elementor-element-5b568316 .elementor-container{
  max-width:980px!important;
}
body.page-id-516 .elementor-element-5b568316 h2,
body.page-id-673 .elementor-element-5b568316 h2{
  max-width:920px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  color:var(--masp-ink)!important;
  font-size:clamp(30px,3.6vw,52px)!important;
  line-height:1.08!important;
  text-align:center!important;
}
body.page-id-516 .elementor-element-5b568316 .elementor-widget-text-editor,
body.page-id-516 .elementor-element-5b568316 .elementor-widget-text-editor p,
body.page-id-673 .elementor-element-5b568316 .elementor-widget-text-editor,
body.page-id-673 .elementor-element-5b568316 .elementor-widget-text-editor p{
  max-width:760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  color:var(--masp-text)!important;
  font-size:18px!important;
  line-height:1.72!important;
  text-align:center!important;
}
body.page-id-516 .elementor-element-5b568316 .elementor-button-wrapper,
body.page-id-673 .elementor-element-5b568316 .elementor-button-wrapper{
  text-align:center!important;
}
