/** Shopify CDN: Minification failed

Line 172:0 Expected "}" to go with "{"

**/
/* Prix avec centimes en exposant — ToutEn3D */
.price sup,
.compare-at-price sup {
  font-size: 0.55em;
  font-weight: normal;
  vertical-align: super;
  line-height: 1;
}

/* Suppression du gras sur le prix principal */
.price,
.compare-at-price {
  font-weight: normal;
}


/* ============================================
   ToutEn3D — Styles custom centralisés
   ============================================ */

:root {
  --t3d-bg: #ffffff;
  --t3d-text: #333333;
  --t3d-accent: #000000;
  --t3d-card-bg: rgba(255, 255, 255, 0.9);
  --t3d-border: rgba(0, 0, 0, 0.05);
  --t3d-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.t3d-card-consult,
.t3d-card-why,
.t3d-card-service {
  background: var(--t3d-card-bg);
  border-radius: 20px;
  border: 1px solid var(--t3d-border);
  box-shadow: var(--t3d-shadow);
  transform-style: preserve-3d;
  transform: perspective(1000px);
  transition: transform 0.1s ease;
}

.t3d-icon-circle-small,
.t3d-icon-circle-why {
  background: var(--t3d-accent);
  color: white;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
  transform: translateZ(20px);
}

.t3d-icon-circle-small { width: 60px; height: 60px; font-size: 1.8rem; margin-bottom: 20px; }
.t3d-icon-circle-why   { width: 70px; height: 70px; font-size: 2rem;   margin-bottom: 8px;  }

.t3d-consulting-container,
.t3d-why-container,
.t3d-gallery-container {
  max-width: 1100px;
  margin: 0 auto;

  /* --- Contact intro --- */
:root {
  --t3d-blue: #0C345A;
  --t3d-ease: cubic-bezier(0.165, 0.84, 0.44, 1);
}

.t3d-interactive-wrapper {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: linear-gradient(135deg, #f5f7fa 0%, #ffffff 100%);
}

.t3d-contact-intro {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 900px;
  margin: 40px auto 20px auto;
  padding: 60px 20px;
  text-align: center;
  font-family: -apple-system, BlinkMacSystemFont, sans-serif;
}

.t3d-contact-title {
  font-size: clamp(2rem, 4vw, 3.5rem);
  font-weight: 800;
  color: var(--t3d-blue);
  margin-bottom: 20px;
  line-height: 1.1;
  opacity: 0;
  animation: fadeInUp 0.8s var(--t3d-ease) forwards;
}

.t3d-contact-text {
  font-size: 1.15rem;
  line-height: 1.6;
  color: #444;
  max-width: 700px;
  margin: 0 auto 40px auto;
  font-weight: 500;
  opacity: 0;
  animation: fadeInUp 0.8s var(--t3d-ease) 0.2s forwards;
}

.t3d-reasons-grid {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-bottom: 50px;
  flex-wrap: wrap;
  opacity: 0;
  animation: fadeInUp 0.8s var(--t3d-ease) 0.4s forwards;
}

.t3d-reason-item {
  display: flex;
  align-items: center;
  background: rgba(255,255,255,0.95);
  padding: 10px 25px;
  border-radius: 50px;
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--t3d-blue);
  border: 1px solid rgba(12, 52, 90, 0.15);
  box-shadow: 0 5px 15px rgba(12, 52, 90, 0.1);
  animation: float 3s ease-in-out infinite;
  transition: transform 0.3s var(--t3d-ease);
}

.t3d-reason-item:nth-child(1) { animation-delay: 0s; }
.t3d-reason-item:nth-child(2) { animation-delay: 0.5s; }
.t3d-reason-item:nth-child(3) { animation-delay: 1s; }

.t3d-reason-item:hover {
  transform: translateY(-5px) scale(1.05);
  box-shadow: 0 10px 25px rgba(12, 52, 90, 0.2);
}

.t3d-reason-icon { font-size: 1.2rem; margin-right: 10px; }

.t3d-scroll-indicator {
  display: inline-block;
  color: var(--t3d-blue);
  font-size: 2.5rem;
  margin-top: 10px;
  animation: bounce 2s infinite;
  cursor: pointer;
  opacity: 0.8;
}

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes float {
  0%, 100% { transform: translateY(0px); }
  50%       { transform: translateY(-10px); }
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% { transform: translateY(0); }
  40% { transform: translateY(-10px); }
  60% { transform: translateY(-5px); }
}
