/*
 * Couche de finition volontairement discrète.
 * Le design, les couleurs et la structure restent ceux du site Colmar Découpes.
 */

@font-face {
  font-family:"Asap";
  src:url("./asap-latin.woff2") format("woff2");
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
}

:root {
  --cd-blue:#2001e8;
  --cd-blue-dark:#1000a8;
  --cd-ink:#232323;
  --cd-muted:#697080;
  --cd-surface:#fff;
  --cd-line:#e2e6ef;
  --cd-radius:9px;
  --cd-shadow:0 14px 38px rgba(24,31,66,.10);
}
html { scroll-behavior:smooth !important; scroll-padding-top:110px; }
body[data-static-copy="true"] {
  overflow-wrap:break-word;
  color:var(--cd-ink);
}

body[data-static-copy="true"] .sppb-addon-text-block p,
body[data-static-copy="true"] .sppb-addon-text-block li {
  line-height:1.72;
}

body[data-static-copy="true"] :focus-visible {
  outline:3px solid #f2b705 !important;
  outline-offset:3px;
}

body[data-static-copy="true"] #sp-header {
  background:rgba(248,249,252,.97);
  border-bottom:1px solid rgba(32,1,232,.07);
  box-shadow:0 6px 24px rgba(24,31,66,.055);
  animation:none !important;
  transition:box-shadow .25s ease, background-color .25s ease;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

body[data-static-copy="true"] #sp-header.header-sticky {
  background:#eef1f6;
  box-shadow:0 8px 24px rgba(19,30,60,.11);
}

body[data-static-copy="true"] .sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
  border-top:3px solid var(--cd-blue);
  border-radius:0 0 var(--cd-radius) var(--cd-radius);
  box-shadow:0 16px 42px rgba(20,24,55,.15);
  overflow:hidden;
}

body[data-static-copy="true"] .sp-megamenu-parent > li > a,
body[data-static-copy="true"] .sp-megamenu-parent > li > span {
  position:relative;
}

body[data-static-copy="true"] .sp-megamenu-parent > li > a::before {
  content:"";
  position:absolute;
  right:15px;
  bottom:28px;
  left:15px;
  height:2px;
  background:var(--cd-blue);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .25s ease;
}

body[data-static-copy="true"] .sp-megamenu-parent > li > a:hover::before,
body[data-static-copy="true"] .sp-megamenu-parent > li.active > a::before {
  transform:scaleX(1);
}

body[data-static-copy="true"] .sp-megamenu-parent > li:last-child {
  display:inline-flex;
  align-items:center;
  vertical-align:middle;
  margin-left:8px;
}

body[data-static-copy="true"] .sp-megamenu-parent > li:last-child > a {
  margin:0;
  padding:14px 19px !important;
  border-radius:7px;
  background:linear-gradient(135deg, #2f19f1, var(--cd-blue-dark));
  box-shadow:0 9px 22px rgba(32,1,232,.19);
  color:#fff !important;
  transition:transform .2s ease, box-shadow .2s ease;
}

body[data-static-copy="true"] .sp-megamenu-parent > li:last-child > a::before {
  display:none;
}

body[data-static-copy="true"] .sp-megamenu-parent > li:last-child > a:hover {
  transform:translateY(-2px);
  box-shadow:0 13px 28px rgba(32,1,232,.26);
}

body[data-static-copy="true"] .sppb-btn,
body[data-static-copy="true"] .sp-slider-btn-text {
  border-radius:7px !important;
  box-shadow:0 9px 22px rgba(32,1,232,.20);
  transition:transform .22s ease, box-shadow .22s ease, background-color .22s ease;
}

body[data-static-copy="true"] .sppb-btn:hover,
body[data-static-copy="true"] .sp-slider-btn-text:hover {
  transform:translateY(-2px);
  box-shadow:0 13px 28px rgba(32,1,232,.26);
}

/* Accueil : le téléphone et le lien d'histoire forment une seule ligne d'action. */
body[data-static-copy="true"].itemid-101 #section-id-1637202615908 > .sppb-container-inner > .sppb-row {
  align-items:center !important;
  justify-content:flex-start;
  gap:18px;
}

body[data-static-copy="true"].itemid-101 #column-wrap-id-1637202615909,
body[data-static-copy="true"].itemid-101 #column-wrap-id-1637202615912 {
  flex:0 0 auto !important;
  width:auto !important;
  max-width:none !important;
}

body[data-static-copy="true"].itemid-101 #column-wrap-id-1637202615913 {
  display:none;
}

body[data-static-copy="true"].itemid-101 #section-id-1637202615908 .call .icon > a {
  display:inline-flex;
  align-items:center;
  gap:13px;
  min-height:50px;
  color:var(--cd-ink);
}

body[data-static-copy="true"].itemid-101 #section-id-1637202615908 .call .icon > a > i {
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  position:static !important;
  flex:0 0 50px;
  width:50px !important;
  height:50px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:50%;
  background:linear-gradient(135deg, #321bf5, var(--cd-blue-dark));
  color:#fff;
  font-size:21px !important;
  line-height:1 !important;
  box-shadow:0 8px 19px rgba(32,1,232,.18);
  transform:none !important;
}

body[data-static-copy="true"].itemid-101 #section-id-1637202615908 .call .contact h4 {
  margin:0 !important;
  color:var(--cd-ink);
  font-size:18px !important;
  font-weight:700;
  line-height:1.2;
  white-space:nowrap;
}

body[data-static-copy="true"].itemid-101 #section-id-1637202615908 .call .contact span {
  display:none;
}

body[data-static-copy="true"].itemid-101 #btn-16372026159500 {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:13px 22px !important;
  font-size:13px !important;
  line-height:1.1;
  letter-spacing:.045em;
}

body[data-static-copy="true"] .sppb-sp-slider-title {
  letter-spacing:-.025em;
  text-shadow:0 4px 24px rgba(0,0,0,.24);
}

/* Hero d'accueil : contenu identique, composition plus actuelle. */
body[data-static-copy="true"].itemid-101 .sppb-addon-sp-slider,
body[data-static-copy="true"].itemid-101 .sp-slider-outer-stage,
body[data-static-copy="true"].itemid-101 .sp-slider-inner-stage,
body[data-static-copy="true"].itemid-101 .sp-item,
body[data-static-copy="true"].itemid-101 .sp-background,
body[data-static-copy="true"].itemid-101 .sp-item [data-layer="true"] {
  animation:none !important;
  transition:none !important;
  transform:none !important;
}

body[data-static-copy="true"].itemid-101 .sppb-addon-sp-slider {
  position:relative;
  height:600px !important;
  min-height:600px;
  cursor:default !important;
  touch-action:pan-y !important;
}

body[data-static-copy="true"].itemid-101 .sppb-addon-sp-slider .sp-item.active {
  visibility:visible !important;
}

body[data-static-copy="true"].itemid-101 .sp-item [data-layer="true"] {
  opacity:1 !important;
  visibility:visible !important;
}

body[data-static-copy="true"].itemid-101 .sp-nav-control,
body[data-static-copy="true"].itemid-101 .sp-dots,
body[data-static-copy="true"].itemid-101 .sp-indicator {
  display:none !important;
}

body[data-static-copy="true"].itemid-101 .sp-item .sp-background::after {
  background:
    linear-gradient(90deg, rgba(7,8,22,.89) 0%, rgba(10,10,28,.72) 43%, rgba(13,10,48,.47) 68%, rgba(12,8,62,.30) 100%) !important;
}

body[data-static-copy="true"].itemid-101 #sp-slider-item-1653468086027-num-0-key .sp-background {
  background-image:url("/site-assets/images/batiments/callage-emballage-1.jpg") !important;
  background-position:50% 50% !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  image-rendering:auto;
}

/* Une seule grille pour le titre et l'encart du hero. */
body[data-static-copy="true"].itemid-101 #sppb-addon-1653468086027 .sp-slider .sp-item .sp-background::before {
  display:none !important;
  content:none !important;
}

body[data-static-copy="true"].itemid-101 .sp-item > .sppb-container {
  width:min(1320px, calc(100% - 48px)) !important;
  max-width:none !important;
  margin-right:auto !important;
  margin-left:auto !important;
  padding-right:0 !important;
  padding-left:0 !important;
}

body[data-static-copy="true"].itemid-101 .sp-item > .sppb-container > .sppb-row {
  margin-right:0 !important;
  margin-left:0 !important;
}

body[data-static-copy="true"].itemid-101 .sp-item > .sppb-container > .sppb-row > [class*="sppb-col-"] {
  padding-right:0 !important;
  padding-left:0 !important;
}

body[data-static-copy="true"].itemid-101 .sp-slider-content-align-left {
  width:calc(54% - 26px);
  max-width:660px;
}

body[data-static-copy="true"].itemid-101 .sp-slider-content-align-left::before {
  content:"Découpe sur mesure  •  Depuis 1987";
  display:inline-flex;
  align-items:center;
  margin-bottom:20px;
  padding:8px 13px;
  border:1px solid rgba(255,255,255,.30);
  border-radius:999px;
  background:rgba(255,255,255,.10);
  color:#fff;
  font-size:12px;
  font-weight:700;
  letter-spacing:.09em;
  text-transform:uppercase;
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}

body[data-static-copy="true"].itemid-101 .sppb-sp-slider-title {
  max-width:660px;
  font-size:clamp(46px, 4.15vw, 64px);
  line-height:1.08;
}

body[data-static-copy="true"].itemid-101 .sppb-sp-slider-text {
  max-width:590px;
  margin-top:25px;
  font-size:18px;
  line-height:1.65;
}

body[data-static-copy="true"].itemid-101 .sp-slider-btn-text {
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:14px !important;
  min-height:56px;
  padding:15px 25px !important;
  overflow:hidden !important;
  border:0 !important;
  border-radius:7px !important;
  background:linear-gradient(135deg, #321bf5, var(--cd-blue-dark)) !important;
  color:#fff !important;
  line-height:25px !important;
}

body[data-static-copy="true"].itemid-101 .sp-slider-btn-text::after {
  content:"→" !important;
  position:static !important;
  display:inline-block !important;
  width:auto !important;
  height:auto !important;
  background:transparent !important;
  color:currentColor !important;
  font-size:21px !important;
  line-height:1 !important;
  z-index:auto !important;
  transition:transform .2s ease;
}

body[data-static-copy="true"].itemid-101 .sppb-sp-slider-button:hover .sp-slider-btn-text::after {
  transform:translateX(4px);
}

body[data-static-copy="true"].itemid-101 .sppb-sp-slider-button {
  position:relative !important;
  display:inline-flex !important;
  margin-left:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  text-decoration:none !important;
}

body[data-static-copy="true"].itemid-101 .sppb-sp-slider-button::before,
body[data-static-copy="true"].itemid-101 .sppb-sp-slider-button::after,
body[data-static-copy="true"].itemid-101 .sp-slider-btn-text::before {
  display:none !important;
  content:none !important;
}

body[data-static-copy="true"].itemid-101 .sppb-sp-slider-button:hover .sp-slider-btn-text {
  background:linear-gradient(135deg, #210bd8, #0c007f) !important;
  color:#fff !important;
}

body[data-static-copy="true"].itemid-101 .absolute-slider {
  top:50% !important;
  right:max(24px, calc((100% - 1320px) / 2)) !important;
  left:auto !important;
  width:min(500px, calc(46% - 24px));
  max-width:500px !important;
  padding:30px 34px !important;
  transform:translateY(-50%) !important;
  border:1px solid rgba(255,255,255,.24) !important;
  border-left:5px solid #4b35ff !important;
  border-radius:14px;
  background:linear-gradient(135deg, rgba(18,20,31,.84), rgba(28,30,43,.66)) !important;
  box-shadow:0 24px 55px rgba(5,7,18,.28);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

body[data-static-copy="true"].itemid-101 .absolute-slider .sppb-addon-content {
  color:rgba(255,255,255,.88);
  line-height:1.55;
}

body[data-static-copy="true"].itemid-101 .cd-fact-title {
  display:inline-block;
  margin-bottom:7px;
  color:#fff;
  font-size:13px;
  letter-spacing:.1em;
  text-transform:uppercase;
}

body[data-static-copy="true"] a.item {
  display:block;
  border-radius:var(--cd-radius);
  box-shadow:0 12px 34px rgba(20,27,58,.09);
  overflow:hidden;
  transition:transform .25s ease, box-shadow .25s ease;
}

body[data-static-copy="true"] a.item:hover {
  transform:translateY(-5px);
  box-shadow:0 18px 44px rgba(20,27,58,.16);
}

body[data-static-copy="true"] .ba-gallery-items .ba-gallery-grid-item,
body[data-static-copy="true"] .sppb-addon-single-image-container {
  overflow:hidden;
}

body[data-static-copy="true"] .ba-gallery-items .ba-image {
  border-radius:7px;
  box-shadow:0 8px 22px rgba(20,27,58,.10);
  overflow:hidden;
}

body[data-static-copy="true"] .ba-gallery-items img,
body[data-static-copy="true"] .sppb-addon-single-image-container img {
  transition:transform .45s ease, filter .35s ease;
}

body[data-static-copy="true"] .ba-gallery-items .ba-gallery-grid-item:hover img {
  transform:scale(1.025);
}

body[data-static-copy="true"] .sp-page-title {
  padding:68px 0;
  background-position:center;
  overflow:hidden;
}

body[data-static-copy="true"] .sp-page-title::after {
  background:linear-gradient(112deg, rgba(11,0,130,.90), rgba(32,1,232,.62)) !important;
  opacity:1 !important;
}

body[data-static-copy="true"] .sp-page-title-heading {
  letter-spacing:-.02em;
  font-size:clamp(38px, 4vw, 52px) !important;
  text-shadow:0 3px 20px rgba(0,0,0,.22);
}

body[data-static-copy="true"] .sp-page-title .breadcrumb {
  width:max-content;
  max-width:100%;
  margin:10px auto 0;
  padding:8px 16px !important;
  border:1px solid rgba(255,255,255,.20);
  border-radius:999px;
  background:rgba(9,7,71,.18);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}

/* Pages éditoriales : passage d'une longue colonne à une composition en cartes. */
body[data-static-copy="true"] .left-col > .sppb-column-addons {
  position:sticky;
  top:112px;
}

body[data-static-copy="true"] .left-col #section-id-1648132573673 {
  padding:27px 25px;
  border:1px solid rgba(27,35,68,.07);
  border-radius:13px !important;
  background:#fff;
  box-shadow:0 15px 40px rgba(24,31,66,.08) !important;
}

body[data-static-copy="true"] .left-col #sppb-addon-wrapper-1655365959469 {
  margin-bottom:13px !important;
}

body[data-static-copy="true"] .left-col #sppb-addon-1655365959469 .sppb-addon-title {
  margin-bottom:16px !important;
  font-size:21px;
  line-height:1.25;
}

body[data-static-copy="true"] .left-col #sppb-addon-1655288383394 .sppb-link-list-wrap.sppb-link-list-nav ul li a {
  margin-bottom:5px;
  padding:13px 15px !important;
  border:0 !important;
  border-radius:7px;
  background:transparent !important;
  transition:background-color .2s ease, color .2s ease, padding-left .2s ease;
}

body[data-static-copy="true"] .left-col #sppb-addon-1655288383394 .sppb-link-list-wrap.sppb-link-list-nav ul li a:hover,
body[data-static-copy="true"] .left-col #sppb-addon-1655288383394 .sppb-link-list-wrap.sppb-link-list-nav ul li.sppb-active a {
  padding-left:19px !important;
  background:#f0efff !important;
  color:var(--cd-blue) !important;
}

body[data-static-copy="true"] .left-col #section-id-1648134535769 {
  border-radius:13px !important;
  background:linear-gradient(135deg, #3218f4 0%, #1905bd 55%, #0b0878 100%) !important;
  box-shadow:0 16px 38px rgba(32,1,232,.20) !important;
  overflow:hidden;
}

body[data-static-copy="true"] .left-col #section-id-1648134535769 > .sppb-row-overlay {
  background:transparent !important;
}

body[data-static-copy="true"] .left-col #sppb-addon-1648134535769 .sppb-icon i {
  border:1px solid rgba(255,255,255,.24);
  background:rgba(255,255,255,.12) !important;
  box-shadow:0 12px 30px rgba(6,2,75,.18);
}

body[data-static-copy="true"] .right-col {
  padding:46px 48px !important;
  border:1px solid rgba(27,35,68,.065);
  border-radius:15px !important;
  background:#fff;
  box-shadow:0 18px 50px rgba(24,31,66,.085);
}

/* Les cartes éditoriales possèdent déjà leur padding : neutralise les
   anciennes marges ajoutées avant le tout premier contenu. */
body[data-static-copy="true"] .right-col > .sppb-column-addons > .sppb-section:first-child {
  margin-top:0 !important;
}

body[data-static-copy="true"] .right-col > .sppb-column-addons > .sppb-section:first-child h2.sppb-addon-title:first-child {
  margin-top:0 !important;
}

body[data-static-copy="true"] .right-col .sppb-addon-text-block p,
body[data-static-copy="true"] .right-col .sppb-addon-text-block li {
  color:#505766;
  font-size:16px;
  line-height:1.82;
}

body[data-static-copy="true"] .right-col .sppb-addon-text-block p {
  margin-bottom:18px;
}

body[data-static-copy="true"] .right-col h2.sppb-addon-title,
body[data-static-copy="true"] .right-col .sppb-addon-content > h2 {
  position:relative;
  margin-top:12px;
  margin-bottom:24px;
  padding-left:19px;
  font-size:clamp(25px, 2.25vw, 32px);
  font-weight:700;
  letter-spacing:-.025em;
  line-height:1.2;
}

body[data-static-copy="true"] .right-col h2.sppb-addon-title::before,
body[data-static-copy="true"] .right-col .sppb-addon-content > h2::before {
  content:"";
  position:absolute;
  top:.08em;
  bottom:.08em;
  left:0;
  width:5px;
  border-radius:5px;
  background:linear-gradient(180deg, #442cff, var(--cd-blue-dark));
}

body[data-static-copy="true"] .right-col .sppb-addon-single-image-container,
body[data-static-copy="true"] .right-col .sppb-video-block {
  border-radius:12px !important;
  box-shadow:0 14px 36px rgba(19,26,56,.13);
  overflow:hidden;
}

body[data-static-copy="true"] .right-col .sppb-addon-single-image-container img {
  border-radius:12px !important;
}

/* La liste de documents devient plus lisible sans changer son contenu. */
body[data-static-copy="true"] .pd-category > .row:not(.pd-row2-bp) {
  align-items:center;
  background:var(--cd-surface);
  border:1px solid var(--cd-line);
  border-radius:var(--cd-radius);
  box-shadow:0 8px 24px rgba(24,31,66,.055);
  margin:0 0 20px;
  padding:17px 13px;
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body[data-static-copy="true"] .pd-category > .pd-row2-bp {
  display:none !important;
}

body[data-static-copy="true"] .pd-category > .row:not(.pd-row2-bp):hover {
  border-color:rgba(32,1,232,.26);
  box-shadow:var(--cd-shadow);
  transform:translateY(-2px);
}

body[data-static-copy="true"] .pd-category .pd-title {
  color:var(--cd-ink);
  font-weight:700;
}

body[data-static-copy="true"] .pd-category .btn-success {
  background:var(--cd-blue) !important;
  border-color:var(--cd-blue) !important;
  border-radius:7px;
  box-shadow:0 8px 18px rgba(32,1,232,.18);
  color:#fff !important;
  padding:10px 18px;
}

/* Formulaire : même structure, finition plus actuelle. */
body[data-static-copy="true"] #section-id-1637547142334 {
  border:1px solid rgba(27,35,68,.06);
  border-radius:14px !important;
  box-shadow:0 22px 55px rgba(24,31,66,.11) !important;
  overflow:hidden;
}

/* La carte Contact ne dépend plus de l'ancien script Google Maps. */
body[data-static-copy="true"].itemid-116 .cd-contact-map {
  display:block;
  width:100%;
  height:420px;
  border:0;
}

body[data-static-copy="true"] .ba-field-container input[type="text"],
body[data-static-copy="true"] .ba-field-container input[type="email"],
body[data-static-copy="true"] .ba-field-container input[type="number"],
body[data-static-copy="true"] .ba-field-container textarea,
body[data-static-copy="true"] .ba-field-container select {
  background:#f7f8fc !important;
  border:1px solid #dfe3ed !important;
  border-radius:8px !important;
  font-weight:500 !important;
  transition:border-color .2s ease, box-shadow .2s ease, background-color .2s ease !important;
}

body[data-static-copy="true"] .ba-field-container input:focus,
body[data-static-copy="true"] .ba-field-container textarea:focus,
body[data-static-copy="true"] .ba-field-container select:focus {
  background:#fff !important;
  border-color:var(--cd-blue) !important;
  box-shadow:0 0 0 4px rgba(32,1,232,.09) !important;
  outline:0;
}

body[data-static-copy="true"] .ba-form-submit-btn {
  border-radius:8px !important;
  box-shadow:0 10px 24px rgba(32,1,232,.20);
}

/* Galeries statiques : rapides, filtrables et indépendantes de l'ancien plugin. */
body[data-static-copy="true"].itemid-101 #section-id-1637258917642,
body[data-static-copy="true"].itemid-149 #section-id-1653469182393 {
  display:none !important;
}

body[data-static-copy="true"] .cd-gallery-section {
  position:relative;
  padding:100px 24px;
  background:#f6f7fb;
  overflow:hidden;
}

body[data-static-copy="true"] .cd-gallery-section::before {
  content:"";
  position:absolute;
  top:-160px;
  right:-130px;
  width:430px;
  height:430px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(32,1,232,.10), rgba(32,1,232,0) 68%);
  pointer-events:none;
}

body[data-static-copy="true"] .cd-gallery-section--full {
  background:#fff;
}

body[data-static-copy="true"] .cd-gallery-shell {
  position:relative;
  z-index:1;
  width:min(1320px, 100%);
  margin:0 auto;
}

body[data-static-copy="true"] .cd-section-heading {
  display:grid;
  grid-template-columns:minmax(0, 1.05fr) minmax(300px, .75fr);
  align-items:end;
  gap:56px;
  margin-bottom:42px;
}

body[data-static-copy="true"] .cd-gallery-intro {
  width:min(760px, 100%);
  margin:0 auto 34px;
  text-align:center;
}

body[data-static-copy="true"] .cd-eyebrow {
  display:block;
  margin-bottom:12px;
  color:var(--cd-blue);
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

body[data-static-copy="true"] .cd-section-heading h2,
body[data-static-copy="true"] .cd-gallery-intro h2,
body[data-static-copy="true"] .cd-prefooter h2 {
  margin:0;
  color:#171c2d;
  font-size:clamp(34px, 4vw, 52px);
  font-weight:750;
  letter-spacing:-.035em;
  line-height:1.08;
}

body[data-static-copy="true"] .cd-section-heading p,
body[data-static-copy="true"] .cd-gallery-intro p {
  margin:0;
  color:#606878;
  font-size:17px;
  line-height:1.72;
}

body[data-static-copy="true"] .cd-gallery-intro p {
  margin-top:20px;
}

body[data-static-copy="true"] .cd-gallery-filters {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:9px;
  margin:0 auto 38px;
}

body[data-static-copy="true"] .cd-gallery-filter {
  appearance:none;
  padding:10px 16px;
  border:1px solid #dfe3ed;
  border-radius:999px;
  background:#fff;
  color:#4d5566;
  cursor:pointer;
  font-family:inherit;
  font-size:13px;
  font-weight:700;
  line-height:1.2;
  transition:border-color .2s ease, background-color .2s ease, color .2s ease, box-shadow .2s ease;
}

body[data-static-copy="true"] .cd-gallery-filter:hover,
body[data-static-copy="true"] .cd-gallery-filter.is-active {
  border-color:var(--cd-blue);
  background:var(--cd-blue);
  box-shadow:0 7px 18px rgba(32,1,232,.16);
  color:#fff;
}

body[data-static-copy="true"] .cd-gallery-grid {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  grid-auto-flow:dense;
  gap:16px;
}

body[data-static-copy="true"] .cd-gallery-card {
  position:relative;
  min-width:0;
  aspect-ratio:1.18 / 1;
  padding:0;
  border:0;
  border-radius:12px;
  background:#e8eaf1;
  box-shadow:0 10px 28px rgba(20,27,58,.10);
  cursor:zoom-in;
  overflow:hidden;
  isolation:isolate;
}

body[data-static-copy="true"] .cd-gallery-card:nth-child(11n + 1),
body[data-static-copy="true"] .cd-gallery-card:nth-child(11n + 8) {
  grid-column:span 2;
  aspect-ratio:2.43 / 1;
}

body[data-static-copy="true"] .cd-content-gallery {
  width:100%;
  margin:30px 0 12px;
}

body[data-static-copy="true"] .cd-gallery-grid--content {
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
}

body[data-static-copy="true"] .cd-gallery-grid--content .cd-gallery-card,
body[data-static-copy="true"] .cd-gallery-grid--content .cd-gallery-card:nth-child(11n + 1),
body[data-static-copy="true"] .cd-gallery-grid--content .cd-gallery-card:nth-child(11n + 8) {
  grid-column:span 1;
  aspect-ratio:1.3 / 1;
}

body[data-static-copy="true"] .cd-gallery-card[hidden] {
  display:none !important;
}

body[data-static-copy="true"] .cd-gallery-card img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .55s cubic-bezier(.2,.65,.3,1), filter .35s ease;
}

body[data-static-copy="true"] .cd-gallery-card__shade {
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:36px 18px 16px;
  background:linear-gradient(180deg, transparent, rgba(7,9,24,.82));
  color:#fff;
  font-size:13px;
  font-weight:750;
  letter-spacing:.025em;
  opacity:0;
  transform:translateY(8px);
  transition:opacity .25s ease, transform .25s ease;
}

body[data-static-copy="true"] .cd-gallery-card__shade svg {
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.8;
}

body[data-static-copy="true"] .cd-gallery-card:hover img,
body[data-static-copy="true"] .cd-gallery-card:focus-visible img {
  transform:scale(1.055);
  filter:saturate(1.04);
}

body[data-static-copy="true"] .cd-gallery-card:hover .cd-gallery-card__shade,
body[data-static-copy="true"] .cd-gallery-card:focus-visible .cd-gallery-card__shade {
  opacity:1;
  transform:none;
}

body[data-static-copy="true"] .cd-gallery-action {
  display:flex;
  justify-content:center;
  margin-top:40px;
}

body[data-static-copy="true"] .cd-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:13px;
  min-height:52px;
  padding:14px 22px;
  border:1px solid transparent;
  border-radius:8px;
  cursor:pointer;
  font-family:inherit;
  font-size:14px;
  font-weight:750;
  line-height:1.2;
  text-decoration:none !important;
  transition:transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}

body[data-static-copy="true"] .cd-button:hover {
  transform:translateY(-2px);
}

body[data-static-copy="true"] .cd-button--primary {
  background:linear-gradient(135deg, #321bf5, var(--cd-blue-dark));
  box-shadow:0 11px 26px rgba(32,1,232,.21);
  color:#fff !important;
}

body[data-static-copy="true"] .cd-button--outline {
  border-color:rgba(32,1,232,.22);
  background:#fff;
  box-shadow:0 9px 22px rgba(24,31,66,.07);
  color:var(--cd-blue);
}

body[data-static-copy="true"] .cd-lightbox {
  width:min(1120px, calc(100vw - 40px));
  max-width:none;
  max-height:calc(100vh - 40px);
  padding:0;
  border:0;
  border-radius:14px;
  background:#11131d;
  box-shadow:0 30px 90px rgba(0,0,0,.46);
  color:#fff;
  overflow:hidden;
}

body[data-static-copy="true"] .cd-lightbox::backdrop {
  background:rgba(7,8,16,.84);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}

body[data-static-copy="true"] .cd-lightbox figure {
  display:grid;
  grid-template-rows:minmax(0, 1fr) auto;
  max-height:calc(100vh - 40px);
  margin:0;
}

body[data-static-copy="true"] .cd-lightbox img {
  display:block;
  width:100%;
  height:auto;
  max-height:calc(100vh - 110px);
  object-fit:contain;
}

body[data-static-copy="true"] .cd-lightbox figcaption {
  padding:17px 22px;
  color:rgba(255,255,255,.78);
  font-size:14px;
}

body[data-static-copy="true"] .cd-lightbox__close {
  position:absolute;
  z-index:2;
  top:14px;
  right:14px;
  display:grid;
  width:42px;
  height:42px;
  padding:10px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:50%;
  place-items:center;
  background:rgba(8,10,20,.62);
  color:#fff;
  cursor:pointer;
  backdrop-filter:blur(5px);
}

body[data-static-copy="true"] .cd-lightbox__close svg {
  width:20px;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-width:2;
}

/* Transition vers un footer mieux structuré. */
body[data-static-copy="true"] .cd-prefooter {
  position:relative;
  z-index:2;
  padding:0 24px 54px;
  background:#eef1f6;
}

/* Sur l'accueil, le CTA prolonge le fond de la galerie sans bande intermédiaire. */
body[data-static-copy="true"].itemid-101 .cd-prefooter {
  background:#f6f7fb;
}

/* Accroche éditoriale optionnelle : jamais un simple rappel du titre de page. */
body[data-static-copy="true"] .cd-closing-hook {
  position:relative;
  width:min(100%, 1040px);
  margin:50px auto 4px;
  padding:34px 38px 32px;
  border:1px solid rgba(32,1,232,.10);
  border-left:5px solid var(--cd-blue);
  border-radius:12px;
  background:#fff;
  box-shadow:0 14px 38px rgba(24,31,66,.08);
}

body[data-static-copy="true"] .cd-closing-hook h2 {
  margin:0 0 10px !important;
  color:var(--cd-ink);
  font-size:clamp(25px, 2.4vw, 33px) !important;
  font-weight:700;
  letter-spacing:-.025em;
  line-height:1.2;
}

body[data-static-copy="true"] .cd-closing-hook p {
  max-width:870px;
  margin:0;
  color:#586071;
  font-size:17px;
  line-height:1.7;
}

body[data-static-copy="true"] .cd-prefooter__inner {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  align-items:center;
  gap:56px;
  width:min(1320px, 100%);
  margin:0 auto;
  padding:52px 60px;
  border-radius:16px;
  background:linear-gradient(125deg, #2d16ed 0%, #140096 64%, #0d006a 100%);
  box-shadow:0 24px 60px rgba(12,4,88,.26);
  color:#fff;
  overflow:hidden;
}

body[data-static-copy="true"] .cd-prefooter__inner::after {
  content:"";
  position:absolute;
  top:-85px;
  right:-45px;
  width:280px;
  height:280px;
  border:48px solid rgba(255,255,255,.055);
  border-radius:50%;
  pointer-events:none;
}

body[data-static-copy="true"] .cd-prefooter .cd-eyebrow,
body[data-static-copy="true"] .cd-prefooter h2,
body[data-static-copy="true"] .cd-prefooter p {
  position:relative;
  z-index:1;
  color:#fff;
}

body[data-static-copy="true"] .cd-prefooter h2 {
  font-size:clamp(28px, 2.7vw, 38px) !important;
  font-weight:700;
  letter-spacing:-.02em;
  line-height:1.2;
  text-wrap:balance;
}

body[data-static-copy="true"] .cd-prefooter p {
  margin:14px 0 0;
  color:rgba(255,255,255,.75);
  font-size:16px;
}

body[data-static-copy="true"] .cd-prefooter__actions {
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:25px;
}

body[data-static-copy="true"] .cd-button--light {
  background:#fff;
  box-shadow:0 10px 24px rgba(5,4,50,.18);
  color:#16029f !important;
}

body[data-static-copy="true"] .cd-prefooter__phone {
  display:flex;
  flex-direction:column;
  color:#fff !important;
  line-height:1.25;
  text-decoration:none !important;
  white-space:nowrap;
}

body[data-static-copy="true"] .cd-prefooter__phone span {
  color:rgba(255,255,255,.66);
  font-size:11px;
  font-weight:700;
  letter-spacing:.09em;
  text-transform:uppercase;
}

body[data-static-copy="true"] .cd-prefooter__phone strong {
  margin-top:4px;
  font-size:19px;
  letter-spacing:.01em;
}

body[data-static-copy="true"] #section-id-1637289561026 {
  background-color:#100078 !important;
  background-image:linear-gradient(rgba(9,0,82,.12), rgba(9,0,82,.12)), url("/site-assets/images/background/footer-shape.png") !important;
}

body[data-static-copy="true"] #section-id-1637289561027 {
  padding-top:86px !important;
  padding-bottom:76px !important;
}

body[data-static-copy="true"] #section-id-1637289561026 .sppb-addon-title {
  letter-spacing:-.01em;
}

body[data-static-copy="true"] #section-id-1637289561026 a {
  transition:color .2s ease, opacity .2s ease;
}

body[data-static-copy="true"] #section-id-1637289561026 a:hover {
  color:#fff !important;
  opacity:1;
}

body[data-static-copy="true"] #section-id-1637290575129 {
  border-top:1px solid rgba(255,255,255,.11);
  padding-top:25px !important;
}

body[data-static-copy="true"] #sppb-addon-1637290575140 .sppb-addon-title {
  padding-bottom:0 !important;
  border-bottom:0 !important;
}

body[data-static-copy="true"] #sppb-addon-1637290575140 .sppb-addon-title::before,
body[data-static-copy="true"] #sppb-addon-1637290575140 .sppb-addon-title::after {
  display:none !important;
  content:none !important;
}

/* Finition du cadre global : un header plus signé et un footer plus structuré. */
body[data-static-copy="true"] #sp-top {
  background:linear-gradient(105deg, #3218f4 0%, #1a05c8 34%, #0b0878 100%) !important;
  border-bottom:1px solid rgba(255,255,255,.14);
  color:#fff;
}

body[data-static-copy="true"] #sp-top > .row {
  margin-right:0;
  margin-left:0;
}

body[data-static-copy="true"] #sp-top #section-id-1637175839906 {
  min-height:42px;
  padding-top:9px !important;
  padding-bottom:9px !important;
  background:transparent !important;
}

body[data-static-copy="true"] #sp-top #section-id-1637175839906 .sppb-row {
  align-items:center;
}

body[data-static-copy="true"] #sp-top #column-id-1637175839905,
body[data-static-copy="true"] #sp-top #column-id-1637175839907 {
  display:flex;
  align-items:center;
}

body[data-static-copy="true"] #sp-top #column-id-1637175839905 > .sppb-column-addons,
body[data-static-copy="true"] #sp-top #column-id-1637175839907 > .sppb-column-addons {
  width:100%;
}

body[data-static-copy="true"] #sp-top #sppb-addon-1649836849851 .sppb-icons-group-list,
body[data-static-copy="true"] #sp-top #sppb-addon-1649836849851 .sppb-icons-group-list li,
body[data-static-copy="true"] #sp-top #sppb-addon-1649836849851 .sppb-icons-group-list a {
  display:flex !important;
  align-items:center;
  margin-top:0 !important;
  margin-bottom:0 !important;
  line-height:26px;
}

body[data-static-copy="true"] #sp-top #sppb-addon-1637176147995 .info-box,
body[data-static-copy="true"] #sp-top #sppb-addon-1637176147995 .info-box > ul,
body[data-static-copy="true"] #sp-top #sppb-addon-1637176147995 .info-box > ul > li:last-child,
body[data-static-copy="true"] #sp-top #sppb-addon-1637176147995 .info-box > ul > li:last-child > a {
  display:flex !important;
  align-items:center;
  margin-top:0 !important;
  margin-bottom:0 !important;
  line-height:26px;
}

body[data-static-copy="true"] #sp-top #sppb-addon-1637176147995 .info-box .list li i {
  top:0;
}

body[data-static-copy="true"] #sp-top .shape::after {
  border-right:2px solid rgba(255,255,255,.82);
  background:rgba(255,255,255,.065);
}

body[data-static-copy="true"] #sp-top a,
body[data-static-copy="true"] #sp-top .info-box > ul li {
  color:rgba(255,255,255,.90) !important;
  font-size:13px;
  font-weight:600;
  letter-spacing:.015em;
}

body[data-static-copy="true"] #sp-top .info-box > ul li {
  margin-left:28px;
}

body[data-static-copy="true"] #sp-header {
  position:relative;
  border-bottom:0;
  background:rgba(249,250,253,.98);
  box-shadow:0 9px 30px rgba(24,31,66,.075);
}

body[data-static-copy="true"] #sp-header::after {
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  height:2px;
  background:linear-gradient(90deg, transparent 4%, rgba(32,1,232,.18) 28%, rgba(32,1,232,.46) 50%, rgba(32,1,232,.18) 72%, transparent 96%);
  pointer-events:none;
}

body[data-static-copy="true"] #sp-header .logo a {
  display:inline-flex;
  align-items:center;
}

body[data-static-copy="true"] .sp-megamenu-parent > li > a,
body[data-static-copy="true"] .sp-megamenu-parent > li > span {
  letter-spacing:.065em;
  transition:color .2s ease;
}

body[data-static-copy="true"] .sp-megamenu-parent > li:not(:last-child) > a:hover,
body[data-static-copy="true"] .sp-megamenu-parent > li:not(:last-child) > span:hover {
  color:var(--cd-blue) !important;
}

body[data-static-copy="true"].ltr .sp-megamenu-parent > li.sp-has-child > a::after,
body[data-static-copy="true"].ltr .sp-megamenu-parent > li.sp-has-child > span::after {
  content:"" !important;
  display:inline-block !important;
  float:none !important;
  width:7px;
  height:7px;
  margin:0 0 3px 10px !important;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  font-family:inherit !important;
  vertical-align:middle;
  transform:rotate(45deg);
}

body[data-static-copy="true"].ltr .sp-megamenu-parent .sp-dropdown .sp-dropdown-items .sp-has-child > a::after {
  content:"" !important;
  display:inline-block !important;
  float:right !important;
  width:7px;
  height:7px;
  margin:5px 2px 0 10px !important;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  font-family:inherit !important;
  transform:rotate(-45deg);
}

body[data-static-copy="true"] .sp-megamenu-parent > li:last-child > a {
  display:inline-flex;
  align-items:center;
  gap:10px;
}

body[data-static-copy="true"] .sp-megamenu-parent > li:last-child > a::after {
  content:"→";
  font-size:16px;
  font-weight:400;
  line-height:1;
  transition:transform .2s ease;
}

body[data-static-copy="true"] .sp-megamenu-parent > li:last-child > a:hover::after {
  transform:translateX(3px);
}

body[data-static-copy="true"] .sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
  padding:7px 0;
  border:1px solid rgba(27,35,68,.075);
  border-top:3px solid var(--cd-blue);
  border-radius:0 0 10px 10px;
  background:rgba(255,255,255,.985);
}

body[data-static-copy="true"] .sp-megamenu-parent .sp-dropdown li.sp-menu-item > a {
  margin:0 7px;
  border-bottom:0;
  border-radius:6px;
  transition:background-color .2s ease, color .2s ease, padding-left .2s ease;
}

body[data-static-copy="true"] .sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:hover {
  padding-left:19px;
  background:#f0efff;
  color:var(--cd-blue);
}

body[data-static-copy="true"] .cd-prefooter__inner {
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 24px 58px rgba(10,2,84,.22);
}

body[data-static-copy="true"] #section-id-1637289561026 {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border-top:0;
  background-color:#0b075f !important;
  background-image:linear-gradient(105deg, #12047c 0%, #0b075f 54%, #070548 100%) !important;
}

body[data-static-copy="true"] #section-id-1637289561026 > .sppb-row-overlay {
  background:transparent !important;
}

body[data-static-copy="true"] #section-id-1637289561026::before {
  content:"";
  position:absolute;
  right:0;
  bottom:68px;
  left:0;
  z-index:0;
  height:clamp(160px, 13.25vw, 350px);
  background:url("/site-assets/images/background/footer-shape.png") 50% 100% / 100% auto no-repeat;
  opacity:.075;
  pointer-events:none;
}

body[data-static-copy="true"] #section-id-1637289561026 > .sppb-row-container {
  position:relative;
  z-index:1;
  width:min(1320px, calc(100% - 48px)) !important;
  max-width:none !important;
  padding-right:0 !important;
  padding-left:0 !important;
}

body[data-static-copy="true"] #section-id-1637289561026 > .sppb-row-container > .sppb-row,
body[data-static-copy="true"] #section-id-1637289561027 > .sppb-container-inner > .sppb-row,
body[data-static-copy="true"] #section-id-1637290575129 > .sppb-container-inner > .sppb-row {
  margin-right:0 !important;
  margin-left:0 !important;
}

body[data-static-copy="true"] #column-wrap-id-1637289561025 {
  padding-right:0 !important;
  padding-left:0 !important;
}

body[data-static-copy="true"] #section-id-1637289561027 > .sppb-container-inner > .sppb-row > [class*="sppb-col-"]:first-child,
body[data-static-copy="true"] #section-id-1637290575129 > .sppb-container-inner > .sppb-row > [class*="sppb-col-"]:first-child {
  padding-left:0 !important;
}

body[data-static-copy="true"] #section-id-1637289561027 > .sppb-container-inner > .sppb-row > [class*="sppb-col-"]:last-child,
body[data-static-copy="true"] #section-id-1637290575129 > .sppb-container-inner > .sppb-row > [class*="sppb-col-"]:last-child {
  padding-right:0 !important;
}

body[data-static-copy="true"] #section-id-1637289561027 {
  padding-top:68px !important;
  padding-bottom:54px !important;
}

body[data-static-copy="true"] #section-id-1637289561027 .sppb-empty-space {
  height:24px !important;
}

body[data-static-copy="true"] #section-id-1637289561027 > .sppb-container-inner > .sppb-row > [class*="sppb-col-"] {
  position:relative;
}

body[data-static-copy="true"] #section-id-1637289561027 > .sppb-container-inner > .sppb-row > [class*="sppb-col-"] + [class*="sppb-col-"]::before {
  content:"";
  position:absolute;
  top:28px;
  bottom:18px;
  left:0;
  width:1px;
  background:linear-gradient(180deg, transparent, rgba(255,255,255,.14) 18%, rgba(255,255,255,.14) 82%, transparent);
}

body[data-static-copy="true"] #section-id-1637289561026 .sppb-addon-title {
  position:relative;
  margin-bottom:24px !important;
  padding-bottom:13px;
  color:#fff !important;
  font-size:15px !important;
  font-weight:750 !important;
  letter-spacing:.045em;
  text-transform:uppercase !important;
}

body[data-static-copy="true"] #section-id-1637289561026 .sppb-addon-title::after {
  content:"";
  position:absolute;
  bottom:0;
  left:0;
  width:28px;
  height:2px;
  border-radius:2px;
  background:#7568ff;
}

body[data-static-copy="true"] #section-id-1637289561026 p,
body[data-static-copy="true"] #section-id-1637289561026 li,
body[data-static-copy="true"] #section-id-1637289561026 a {
  color:rgba(255,255,255,.70) !important;
  font-size:13px;
  line-height:1.65;
}

body[data-static-copy="true"] #section-id-1637289561026 ul li {
  margin-bottom:10px !important;
}

body[data-static-copy="true"] #section-id-1637289561026 a:hover {
  color:#fff !important;
}

body[data-static-copy="true"] #section-id-1637289561026 .sppb-icon {
  border-color:rgba(255,255,255,.16) !important;
  border-radius:7px;
  background:rgba(255,255,255,.055);
}

body[data-static-copy="true"] #section-id-1637290575129 {
  margin-top:0 !important;
  padding-top:22px !important;
  padding-bottom:26px !important;
  border-top:0;
  background:#070449 !important;
  box-shadow:0 0 0 100vmax #070449 !important;
  clip-path:inset(0 -100vmax);
}

body[data-static-copy="true"] #section-id-1637290575129 a,
body[data-static-copy="true"] #section-id-1637290575129 p {
  color:rgba(255,255,255,.58) !important;
  font-size:11px;
  font-weight:600;
  letter-spacing:.025em;
}

@media (min-width:992px) {
  body[data-static-copy="true"] #sp-header .container-inner {
    min-height:98px;
  }
  body[data-static-copy="true"] #sp-header .logo {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
  }
  body[data-static-copy="true"] #sp-header .logo::after {
    content:"Découpe sur mesure  •  Depuis 1987";
    margin-top:5px;
    padding-left:48px;
    color:#737b8d;
    font-size:9px;
    font-weight:750;
    letter-spacing:.13em;
    line-height:1;
    text-transform:uppercase;
  }
  body[data-static-copy="true"] #sp-header .logo-image {
    width:min(330px, 100%);
    height:auto;
  }
}

@media (max-width:991px) {
  body[data-static-copy="true"] #section-id-1637289561027 > .sppb-container-inner > .sppb-row > [class*="sppb-col-"] + [class*="sppb-col-"]::before {
    display:none;
  }
  body[data-static-copy="true"] #section-id-1637289561027 {
    padding-top:56px !important;
    padding-bottom:42px !important;
  }
}

@media (max-width:767px) {
  body[data-static-copy="true"] #section-id-1637289561027 > .sppb-container-inner > .sppb-row > [class*="sppb-col-"] {
    padding-right:0 !important;
    padding-left:0 !important;
  }
}

/* Les icônes utiles sont converties en SVG par faithful.js. */
body[data-static-copy="true"] i.cd-icon-ready,
body[data-static-copy="true"] span.cd-icon-ready {
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  font-family:inherit !important;
}

body[data-static-copy="true"] .cd-icon-ready::before {
  display:none !important;
  content:none !important;
}

body[data-static-copy="true"] .cd-icon-ready svg {
  width:1em;
  height:1em;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.8;
}

body[data-static-copy="true"] .sppb-link-list-nav a::after {
  content:"›" !important;
  font-family:inherit !important;
  font-size:19px !important;
  line-height:1 !important;
}

body[data-static-copy="true"] .sp-scroll-up {
  border-radius:3px;
  box-shadow:0 8px 22px rgba(0,0,0,.18);
}

/* Le menu reste sur une seule ligne, y compris aux largeurs intermédiaires. */
@media (min-width:992px) {
  body[data-static-copy="true"] #sp-header > .container > .container-inner > .row {
    flex-wrap:nowrap;
  }
  body[data-static-copy="true"] #sp-header .sp-megamenu-wrapper {
    width:100%;
    justify-content:flex-end;
  }
  body[data-static-copy="true"] .sp-megamenu-parent {
    display:flex !important;
    align-items:center;
    justify-content:flex-end;
    flex-wrap:nowrap;
    float:none;
    width:max-content;
    max-width:100%;
    margin:0;
    padding-right:0;
    white-space:nowrap;
  }
  body[data-static-copy="true"] .sp-megamenu-parent > li {
    flex:0 0 auto;
  }
}

@media (min-width:1200px) {
  body[data-static-copy="true"] #sp-logo {
    flex:0 0 29% !important;
    width:29% !important;
    max-width:29% !important;
  }
  body[data-static-copy="true"] #sp-menu {
    flex:0 0 71% !important;
    width:71% !important;
    max-width:71% !important;
  }
  body[data-static-copy="true"] #sp-header .logo-image {
    max-width:305px;
  }
}

@media (min-width:992px) and (max-width:1399px) {
  body[data-static-copy="true"] .sp-megamenu-parent > li > a,
  body[data-static-copy="true"] .sp-megamenu-parent > li > span {
    padding-right:8px !important;
    padding-left:8px !important;
    font-size:10.5px !important;
  }
  body[data-static-copy="true"] .sp-megamenu-parent > li:last-child > a {
    padding:11px 12px !important;
  }
  body[data-static-copy="true"] #sp-header .logo-image {
    max-width:260px;
  }
  body[data-static-copy="true"] #sp-header .logo::after {
    padding-left:36px;
    font-size:8px;
  }
}

/* La mosaïque d'accueil remplit exactement ses trois rangées. */
body[data-static-copy="true"] .cd-gallery-grid--preview .cd-gallery-card {
  grid-column:span 1;
  aspect-ratio:1.18 / 1;
}

body[data-static-copy="true"] .cd-gallery-grid--preview .cd-gallery-card:nth-child(1),
body[data-static-copy="true"] .cd-gallery-grid--preview .cd-gallery-card:nth-child(4),
body[data-static-copy="true"] .cd-gallery-grid--preview .cd-gallery-card:nth-child(5),
body[data-static-copy="true"] .cd-gallery-grid--preview .cd-gallery-card:nth-child(8) {
  grid-column:span 2;
  aspect-ratio:2.43 / 1;
}

body[data-static-copy="true"] .cd-gallery-section--preview .cd-gallery-action {
  margin-top:32px;
}

/* Aucun voile, filtre ou animation de chargement ne doit altérer la page. */
body[data-static-copy="true"] .sp-preloader {
  display:none !important;
}

body[data-static-copy="true"] img[loading="lazy"],
body[data-static-copy="true"] img.sppb-element-lazy {
  filter:none !important;
  opacity:1 !important;
  animation:none !important;
}

body[data-static-copy="true"] .offcanvas-overlay {
  position:fixed;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
}

body[data-static-copy="true"]:not(.offcanvas-active) .offcanvas-overlay {
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

body[data-static-copy="true"].offcanvas-active .offcanvas-overlay {
  visibility:visible;
  opacity:1;
}

@media (max-width:1199px) {
  body[data-static-copy="true"] .sp-megamenu-parent > li:last-child {
    margin-left:2px;
  }
  body[data-static-copy="true"] .sp-megamenu-parent > li:last-child > a {
    padding:12px 13px !important;
  }
  body[data-static-copy="true"] .cd-gallery-grid {
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
}

@media (max-width:991px) {
  html { scroll-padding-top:74px; }
  body[data-static-copy="true"] #sp-header { background:#eef1f6; }
  body[data-static-copy="true"] .logo-image-phone { max-height:48px; width:auto; }
  body[data-static-copy="true"] .sp-page-title { background-attachment:scroll; }
  body[data-static-copy="true"].itemid-101 .sppb-sp-slider-title { font-size:44px; }
  body[data-static-copy="true"].itemid-101 .sppb-sp-slider-text { font-size:16px; }
  body[data-static-copy="true"].itemid-101 .sp-slider-content-align-left { width:100%; max-width:650px; }
  body[data-static-copy="true"].itemid-101 .sppb-addon-sp-slider {
    height:520px !important;
    min-height:520px;
  }
  body[data-static-copy="true"].itemid-101 .absolute-slider {
    position:static !important;
    width:auto;
    max-width:720px !important;
    margin:32px auto 0 !important;
    transform:none !important;
  }
  body[data-static-copy="true"] .left-col > .sppb-column-addons { position:static; }
  body[data-static-copy="true"] .right-col { margin-top:28px; padding:35px 30px !important; }
  body[data-static-copy="true"] .cd-gallery-section { padding:78px 22px; }
  body[data-static-copy="true"] .cd-section-heading { grid-template-columns:1fr; gap:20px; }
  body[data-static-copy="true"] .cd-gallery-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  body[data-static-copy="true"] .cd-gallery-grid--content { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  body[data-static-copy="true"] .cd-prefooter__inner { grid-template-columns:1fr; gap:32px; padding:45px 40px; }
  body[data-static-copy="true"] a.item:hover,
  body[data-static-copy="true"] .pd-category > .row:not(.pd-row2-bp):hover { transform:none; }
}

@media (max-width:575px) {
  body[data-static-copy="true"] h1 { font-size:34px; }
  body[data-static-copy="true"] h2:not(.sp-page-title-heading) { font-size:25px !important; }
  body[data-static-copy="true"] .sppb-btn,
  body[data-static-copy="true"] .sp-slider-btn-text { white-space:normal; text-align:center; }
  body[data-static-copy="true"] .pd-category > .row:not(.pd-row2-bp) { padding:15px 8px; }
  body[data-static-copy="true"] #section-id-1637547142334 { border-radius:10px !important; }
  body[data-static-copy="true"] .sp-page-title { padding:50px 0; }
  body[data-static-copy="true"] .sp-page-title .breadcrumb { width:auto; justify-content:center; }
  body[data-static-copy="true"].itemid-101 .sp-slider-content-align-left::before { font-size:10px; }
  body[data-static-copy="true"].itemid-101 .sppb-sp-slider-title { font-size:37px; line-height:1.08; }
  body[data-static-copy="true"].itemid-101 .sppb-sp-slider-text { font-size:15px; line-height:1.5; }
  body[data-static-copy="true"].itemid-101 .sppb-addon-sp-slider {
    height:460px !important;
    min-height:460px;
  }
  body[data-static-copy="true"].itemid-101 .sp-item > .sppb-container { width:calc(100% - 32px) !important; }
  body[data-static-copy="true"].itemid-101 .absolute-slider { margin:26px 16px 0 !important; padding:24px !important; }
  body[data-static-copy="true"].itemid-101 #section-id-1637202615908 > .sppb-container-inner > .sppb-row { align-items:flex-start !important; flex-direction:column; gap:14px; }
  body[data-static-copy="true"].itemid-101 #column-wrap-id-1637202615909,
  body[data-static-copy="true"].itemid-101 #column-wrap-id-1637202615912 { width:100% !important; }
  body[data-static-copy="true"] .left-col #section-id-1648132573673 { padding:22px 18px; }
  body[data-static-copy="true"] .right-col { padding:28px 20px !important; }
  body[data-static-copy="true"] .cd-gallery-section { padding:62px 16px; }
  body[data-static-copy="true"] .cd-gallery-grid { grid-template-columns:1fr; gap:13px; }
  body[data-static-copy="true"] .cd-gallery-card,
  body[data-static-copy="true"] .cd-gallery-card:nth-child(11n + 1),
  body[data-static-copy="true"] .cd-gallery-card:nth-child(11n + 8) { grid-column:span 1; aspect-ratio:1.3 / 1; }
  body[data-static-copy="true"] .cd-gallery-grid--preview .cd-gallery-card,
  body[data-static-copy="true"] .cd-gallery-grid--preview .cd-gallery-card:nth-child(1),
  body[data-static-copy="true"] .cd-gallery-grid--preview .cd-gallery-card:nth-child(4),
  body[data-static-copy="true"] .cd-gallery-grid--preview .cd-gallery-card:nth-child(5),
  body[data-static-copy="true"] .cd-gallery-grid--preview .cd-gallery-card:nth-child(8) { grid-column:span 1; aspect-ratio:1.3 / 1; }
  body[data-static-copy="true"] .cd-gallery-card__shade { opacity:1; transform:none; }
  body[data-static-copy="true"] .cd-gallery-filters { justify-content:flex-start; }
  body[data-static-copy="true"] .cd-gallery-filter { flex:1 0 auto; }
  body[data-static-copy="true"] .cd-prefooter { padding:0 16px 42px; }
  body[data-static-copy="true"] #section-id-1637289561026 > .sppb-row-container { width:calc(100% - 32px) !important; }
  body[data-static-copy="true"] .cd-closing-hook { margin-top:36px; padding:27px 23px 25px; }
  body[data-static-copy="true"] .cd-closing-hook p { font-size:15px; line-height:1.6; }
  body[data-static-copy="true"] .cd-prefooter__inner { padding:38px 25px; }
  body[data-static-copy="true"] .cd-prefooter__actions { align-items:flex-start; flex-direction:column; }
  body[data-static-copy="true"] .cd-button { width:100%; }
}

body[data-static-copy="true"] .cd-contact-form {
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:22px 24px;
  margin-top:24px;
  padding:34px;
  background:#fff;
  border:1px solid rgba(31,1,232,.09);
  border-radius:14px;
  box-shadow:0 18px 45px rgba(15,18,50,.08);
}

body[data-static-copy="true"] .cd-form-field {
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
}

body[data-static-copy="true"] .cd-form-field--full { grid-column:1 / -1; }

body[data-static-copy="true"] .cd-form-field label {
  color:#1f2130;
  font-size:14px;
  font-weight:700;
}

body[data-static-copy="true"] .cd-form-field input,
body[data-static-copy="true"] .cd-form-field textarea {
  width:100%;
  margin:0;
  padding:14px 15px;
  border:1px solid #d8dce6;
  border-radius:7px;
  background:#fff;
  color:#242631;
  font:inherit;
  line-height:1.45;
  transition:border-color .2s ease, box-shadow .2s ease;
}

body[data-static-copy="true"] .cd-form-field input:focus,
body[data-static-copy="true"] .cd-form-field textarea:focus {
  outline:none;
  border-color:#2001e8;
  box-shadow:0 0 0 3px rgba(32,1,232,.12);
}

body[data-static-copy="true"] .cd-form-field textarea { resize:vertical; }

body[data-static-copy="true"] .cd-form-note {
  margin:0;
  color:#5c6170;
  font-size:13px;
  line-height:1.6;
}

body[data-static-copy="true"] .cd-form-submit {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  justify-self:start;
  min-width:180px;
  padding:15px 28px;
  border:0;
  border-radius:6px;
  background:linear-gradient(135deg,#351eff,#1600bd);
  box-shadow:0 12px 24px rgba(32,1,232,.2);
  color:#fff;
  cursor:pointer;
  font-weight:700;
}

body[data-static-copy="true"] .cd-form-submit:hover { transform:translateY(-1px); }
body[data-static-copy="true"] .cd-form-submit:disabled { cursor:wait; opacity:.65; transform:none; }

body[data-static-copy="true"] .cd-form-status {
  min-height:24px;
  margin:0;
  font-weight:600;
}

body[data-static-copy="true"] .cd-form-status--success { color:#177245; }
body[data-static-copy="true"] .cd-form-status--error { color:#b42318; }

body[data-static-copy="true"] .cd-form-honeypot {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  white-space:nowrap !important;
}

.cd-consent-banner {
  position:fixed;
  z-index:100000;
  right:24px;
  bottom:24px;
  display:flex;
  align-items:center;
  gap:26px;
  width:min(760px, calc(100% - 48px));
  padding:20px 22px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:12px;
  background:#15104f;
  box-shadow:0 18px 48px rgba(4,3,30,.3);
  color:#fff;
}

.cd-consent-banner[hidden] { display:none; }
.cd-consent-banner strong { display:block; margin-bottom:4px; font-size:16px; }
.cd-consent-banner p { margin:0; color:rgba(255,255,255,.82); font-size:13px; line-height:1.5; }
.cd-consent-banner a { color:#fff; text-decoration:underline; }
.cd-consent-banner__actions { display:flex; flex:0 0 auto; gap:10px; }
.cd-consent-banner button {
  padding:10px 14px;
  border:1px solid rgba(255,255,255,.5);
  border-radius:5px;
  background:transparent;
  color:#fff;
  cursor:pointer;
  font-weight:700;
}
.cd-consent-banner .cd-consent-banner__accept { border-color:#fff; background:#fff; color:#1600a8; }

body[data-static-copy="true"] #sppb-addon-1637290575145 .cd-manage-consent {
  padding:0;
  border:0;
  background:transparent;
  color:#fff;
  cursor:pointer;
  font:inherit;
  font-weight:600;
}

@media (max-width:767px) {
  body[data-static-copy="true"] .cd-contact-form { grid-template-columns:1fr; padding:24px 20px; }
  body[data-static-copy="true"] .cd-form-field--full { grid-column:auto; }
  body[data-static-copy="true"] .cd-form-submit { width:100%; }
  .cd-consent-banner { right:12px; bottom:12px; flex-direction:column; align-items:stretch; width:calc(100% - 24px); }
  .cd-consent-banner__actions { justify-content:flex-end; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto !important; }
  *, *::before, *::after { animation-duration:.01ms !important; transition-duration:.01ms !important; }
}
