/* Digicomarket – widgets Elementor des pages locales (2026-10-26) */
.dgc {
  --dgc-ink: #0C0D12; --dgc-text: #3C414D; --dgc-muted: #6B7180; --dgc-sky: #EEF3FC;
  --dgc-line: #E4E7EE; --dgc-blue: #006BFF; --dgc-blue-deep: #0052C4;
  --dgc-display: "Sora", "Segoe UI", system-ui, sans-serif; --dgc-body: "Inter", "Segoe UI", system-ui, sans-serif;
  font-family: var(--dgc-body); color: var(--dgc-text); font-size: 16px; line-height: 1.65;
}
.dgc *, .dgc *::before, .dgc *::after { box-sizing: border-box; }
.dgc h2, .dgc h3 { font-family: var(--dgc-display) !important; color: var(--dgc-ink); margin: 0; text-transform: none !important; letter-spacing: -0.02em; text-wrap: balance; }
.dgc p, .dgc span, .dgc b, .dgc a, .dgc li, .dgc figcaption { text-transform: none; }
.dgc p { font-family: var(--dgc-body); color: var(--dgc-text); }
.dgc p { margin: 0; }
.dgc a { color: inherit; }
.dgc img { max-width: 100%; height: auto; }
.dgc a:focus-visible { outline: 3px solid var(--dgc-blue); outline-offset: 3px; }
.dgc .dgc-label { text-transform: uppercase; }
.dgc-label { display: block; font: 500 0.78rem/1 var(--dgc-body); letter-spacing: 0.08em; text-transform: uppercase; color: var(--dgc-muted); }
.dgc-h2 { font-size: clamp(2rem, 4vw, 3rem); line-height: 1.08; font-weight: 600; letter-spacing: -0.03em; }
.dgc-arrow { width: 18px; height: 18px; flex: none; }
.dgc-line { display: inline-flex; align-items: center; gap: 10px; color: var(--dgc-ink); font: 600 0.98rem var(--dgc-display); text-decoration: none; border-bottom: 1.5px solid var(--dgc-ink); padding: 6px 4px; }
.dgc-line:hover { color: var(--dgc-blue); border-color: var(--dgc-blue); }
.dgc-btn { display: inline-flex; align-items: center; gap: 10px; font: 600 0.98rem var(--dgc-display); padding: 15px 24px; border-radius: 10px; text-decoration: none; background: var(--dgc-blue); color: #fff !important; transition: background .15s, transform .15s; }
.dgc-btn:hover { background: var(--dgc-blue-deep); transform: translateY(-1px); }

/* Chiffres */
.dgc-proof { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-block: 1px solid var(--dgc-line); }
.dgc-proof div { padding: 28px 24px 28px 0; display: grid; gap: 4px; }
.dgc-proof div + div { padding-left: 24px; border-left: 1px solid var(--dgc-line); }
.dgc-proof b { font: 600 1.7rem/1.1 var(--dgc-display); color: var(--dgc-ink); letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
.dgc-proof span { font-size: 0.88rem; color: var(--dgc-muted); }
@media (max-width: 760px) { .dgc-proof { grid-template-columns: repeat(2, minmax(0, 1fr)); } .dgc-proof div:nth-child(3) { padding-left: 0; border-left: 0; } .dgc-proof div:nth-child(n+3) { border-top: 1px solid var(--dgc-line); } }

/* Expertises */
.dgc-exp { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: clamp(32px, 6vw, 96px); }
@media (max-width: 920px) { .dgc-exp { grid-template-columns: minmax(0, 1fr); } }
.dgc-exp-head { display: grid; gap: 22px; align-content: start; }
.dgc-stage { position: relative; aspect-ratio: 4 / 3.1; border-radius: 8px; overflow: hidden; background: var(--dgc-sky); margin-top: 18px; }
.dgc-slide { position: absolute; inset: 0; margin: 0; opacity: 0; clip-path: inset(100% 0 0 0); }
.dgc .dgc-slide img { width: 100%; height: 100% !important; max-width: none; object-fit: cover; display: block; transform: scale(1.1); transition: transform 1.2s cubic-bezier(.2,.7,.1,1); }
.dgc-slide.was-on { opacity: 1; clip-path: inset(0); z-index: 1; }
.dgc-slide.on { opacity: 1; clip-path: inset(0); z-index: 2; transition: clip-path .75s cubic-bezier(.7,0,.15,1); }
.dgc-slide.on img, .dgc-slide.was-on img { transform: scale(1); }
.dgc-slide figcaption { position: absolute; left: 16px; right: 16px; bottom: 16px; display: flex; justify-content: space-between; align-items: center; gap: 12px; background: rgba(255,255,255,.94); backdrop-filter: blur(6px); border-radius: 8px; padding: 12px 16px; font-size: 0.88rem; color: var(--dgc-ink); opacity: 0; transform: translateY(14px); transition: opacity .4s ease .35s, transform .5s cubic-bezier(.2,.7,.1,1) .35s; }
.dgc-slide.on figcaption { opacity: 1; transform: none; }
.dgc-slide figcaption b { font-family: var(--dgc-display); font-weight: 600; }
.dgc-slide figcaption span { color: var(--dgc-blue); font-weight: 600; white-space: nowrap; }
.dgc-rows { border-top: 1px solid var(--dgc-ink); }
.dgc-row { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 24px; padding: 28px 0; border-bottom: 1px solid var(--dgc-line); text-decoration: none; }
.dgc-row::after { content: ""; position: absolute; left: 0; bottom: -1px; height: 2px; width: 0; background: var(--dgc-blue); transition: width .6s cubic-bezier(.7,0,.15,1); }
.dgc-row.on::after { width: 100%; }
.dgc-row h3 { font-size: clamp(1.35rem, 2.4vw, 1.75rem); font-weight: 500; letter-spacing: -0.02em; transition: color .15s; }
.dgc-row p { grid-column: 1; max-width: 52ch; font-size: 0.98rem; }
.dgc-row .dgc-arrow { grid-column: 2; grid-row: 1; width: 26px; height: 26px; color: var(--dgc-ink); transition: transform .2s ease, color .15s; }
.dgc-row.on h3, .dgc-row.on .dgc-arrow, .dgc-row:hover h3, .dgc-row:hover .dgc-arrow { color: var(--dgc-blue); }
.dgc-row.on .dgc-arrow, .dgc-row:hover .dgc-arrow { transform: translate(3px, -3px); }
.dgc-row .dgc-thumb { display: none; }
@media (max-width: 920px) {
  .dgc-stage { display: none; }
  .dgc-row .dgc-thumb { display: block; grid-column: 1 / -1; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 6px; background: var(--dgc-sky); margin-top: 8px; }
}

