/** Shopify CDN: Minification failed

Line 377:0 Unexpected "}"

**/
/* =========================================================
   NORDRA — SERVICES GRAPHIQUES V2
   Noir principal pur : #000000
   ========================================================= */

.ngs {
  --ngs-black: #000000;
  --ngs-white: #ffffff;
  --ngs-soft: #f5f5f3;
  --ngs-soft-2: #f8f8f7;
  --ngs-border: rgba(0,0,0,.12);
  --ngs-muted: rgba(0,0,0,.66);
  color: var(--ngs-black);
}

.ngs *,
.ngs *::before,
.ngs *::after { box-sizing: border-box; }

.ngs h1,
.ngs h2,
.ngs h3,
.ngs h4,
.ngs h5,
.ngs h6 { color: #000000; }

.ngs__eyebrow {
  margin: 0 0 12px;
  font-size: 14px;
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.ngs__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 50px;
  padding: 13px 24px;
  border-radius: 999px;
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .04em;
  transition: transform .2s ease, opacity .2s ease;
}

.ngs__button:hover { transform: translateY(-1px); opacity: .88; }
.ngs__button--dark { background:#000!important; color:#fff!important; border-color:#000!important; }
.ngs__button--light { background:#fff!important; color:#000!important; border-color:#fff!important; }
.ngs__button--outline { background:transparent; color:#000!important; border:1px solid #000; }

.ngs__section-heading {
  max-width: 760px;
  margin: 0 auto 30px;
  text-align: center;
}

.ngs__section-heading h2 {
  margin: 0;
  font-size: clamp(30px,3.5vw,48px);
  line-height: 1.04;
  letter-spacing: -.03em;
}

.ngs__section-heading > p:last-child {
  margin: 12px auto 0;
  color: var(--ngs-muted);
  font-size: 16px;
  line-height: 1.55;
}

/* HERO */
.ngs__hero {
  text-align:center;
  padding-top:68px;
  padding-bottom:54px;
}
.ngs__title {
  max-width:900px;
  margin:0 auto;
  font-size:clamp(40px,5vw,72px);
  line-height:.98;
  letter-spacing:-.04em;
}
.ngs__lead {
  max-width:760px;
  margin:22px auto 26px;
  font-size:18px;
  line-height:1.6;
  color:var(--ngs-muted);
}
.ngs__hero-note { margin:14px auto 0; font-size:14px; color:var(--ngs-muted); }

/* NOUVEAU — PAR OÙ COMMENCER */
.ngs__services {
  padding-top: 20px;
  padding-bottom: 58px;
}

.ngs__section-heading--services {
  margin-bottom: 30px;
}

.ngs__need-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  max-width:1180px;
  margin:0 auto;
}

.ngs__need-card {
  display:flex;
  flex-direction:column;
  min-height:310px;
  padding:28px;
  border:1px solid var(--ngs-border);
  border-radius:20px;
  background:#f6f6f4;
  color:#000;
  text-decoration:none;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.ngs__need-card:hover {
  transform:translateY(-3px);
  border-color:rgba(0,0,0,.28);
  box-shadow:0 14px 34px rgba(0,0,0,.07);
}

.ngs__need-card--dark {
  background:#000;
  border-color:#000;
  color:#fff;
}

.ngs__need-card--dark h3,
.ngs__need-card--dark p,
.ngs__need-card--dark .ngs__need-number,
.ngs__need-card--dark .ngs__need-price,
.ngs__need-card--dark .ngs__need-link { color:#fff!important; }

.ngs__need-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin-bottom:54px;
}

.ngs__need-number {
  font-size:14px;
  font-weight:700;
  letter-spacing:.10em;
}

.ngs__need-price {
  font-size:14px;
  font-weight:700;
  white-space:nowrap;
}

.ngs__need-card h3 {
  margin:0 0 14px;
  font-size:clamp(24px,2vw,33px);
  line-height:1.02;
  letter-spacing:-.025em;
}

.ngs__need-card p {
  margin:0;
  color:var(--ngs-muted);
  font-size:16px;
  line-height:1.62;
}

.ngs__need-link {
  display:flex;
  justify-content:space-between;
  gap:18px;
  margin-top:auto;
  padding-top:28px;
  font-size:14px;
  font-weight:700;
  letter-spacing:.06em;
  color:#000;
}

/* FORFAITS */
.ngs__logo-packages {
  padding-top: 22px;
  padding-bottom: 60px;
  scroll-margin-top: 110px;
}

.ngs__package-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  max-width:980px;
  margin:0 auto;
  gap:20px;
}

.ngs__package-card {
  position:relative;
  display:flex;
  flex-direction:column;
  padding:32px;
  border:1px solid var(--ngs-border);
  border-radius:24px;
  background:var(--ngs-soft);
}

.ngs__package-card--featured {
  background:#fff;
  border-color:#000;
}

.ngs__package-badge,
.ngs__badge {
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:5px 9px;
  border-radius:999px;
  background:#000!important;
  color:#fff!important;
  font-size:9px;
  font-weight:700;
  letter-spacing:.08em;
}

.ngs__package-badge { position:absolute; right:24px; top:24px; }
.ngs__package-kicker { margin:0 0 7px; font-size:13px; letter-spacing:.14em; font-weight:700; }
.ngs__package-card h3 { margin:0; font-size:34px; line-height:1; }
.ngs__package-price { margin:12px 0 0; font-size:24px; font-weight:700; }
.ngs__package-copy { margin:22px 0 26px; line-height:1.66; }
.ngs__package-card .ngs__button { margin-top:auto; width:100%; }

/* DERRIÈRE CHAQUE PROJET */
.ngs__behind { padding-top:42px; padding-bottom:50px; }
.ngs__behind-card {
  display:flex;
  align-items:stretch;
  overflow:hidden;
  background:#f5f5f5;
  border:1px solid #e2e2e2;
  border-radius:22px;
}
.ngs__behind-card--reverse { flex-direction:row-reverse; }
.ngs__behind-media { flex:0 0 var(--ngs-behind-image-width,58%); min-width:0; }
.ngs__behind-image,.ngs__behind-placeholder { width:100%; height:100%; min-height:430px; display:block; }
.ngs__behind-image { object-fit:cover; }
.ngs__behind-placeholder .placeholder-svg { width:100%; height:100%; min-height:430px; }
.ngs__behind-content {
  flex:1 1 auto;
  min-width:0;
  padding:48px 46px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.ngs__behind-content h2 { margin:7px 0 18px; }
.ngs__behind-text { margin-bottom:16px; }
.ngs__behind-note { margin:0; opacity:.72; }

/* COMMENT ÇA FONCTIONNE */
.ngs__process {
  background:#000!important;
  color:#fff;
  padding:66px 0;
}
.ngs__section-heading--light h2,
.ngs__section-heading--light .ngs__eyebrow { color:#fff!important; }
.ngs__process-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.18);
}
.ngs__process-grid article { padding:30px; background:#000!important; }
.ngs__process-grid span { font-size:14px; letter-spacing:.14em; font-weight:700; opacity:.65; }
.ngs__process-grid h3 { margin:28px 0 10px; color:#fff!important; font-size:23px; }
.ngs__process-grid p { margin:0; color:rgba(255,255,255,.74); line-height:1.58; }

/* FORMS */
.ngs__project-form {
  padding-top:46px;
  padding-bottom:46px;
  scroll-margin-top:110px;
}
.ngs__project-form-app {
  max-width:700px;
  margin:0 auto;
  padding:34px 36px;
  background:#f5f5f5;
  border:1px solid #e2e2e2;
  border-radius:18px;
}
.ngs__project-form-app form { width:100%; max-width:100%; }
.ngs__project-form-app input,
.ngs__project-form-app textarea,
.ngs__project-form-app select { width:100%; border-radius:10px; }
.ngs__project-form-app button[type="submit"] {
  width:100%;
  min-height:52px;
  border-radius:999px!important;
  background:#000!important;
  color:#fff!important;
  border-color:#000!important;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}

/* STUDIO */
.ngs__studio { padding-top:52px; padding-bottom:56px; }
.ngs__studio-card {
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:30px;
  padding:40px;
  border-radius:24px;
  background:var(--ngs-soft);
}
.ngs__studio-card h2 { margin:0; font-size:clamp(30px,3.5vw,48px); line-height:1.04; }
.ngs__studio-card > div > p:last-child { max-width:700px; margin:12px 0 0; color:var(--ngs-muted); line-height:1.58; }

/* FAQ */
.ngs__faq { padding-top:8px; padding-bottom:52px; }
.ngs__faq-list { max-width:920px; margin:0 auto; border-top:1px solid var(--ngs-border); }
.ngs__faq-item { border-bottom:1px solid var(--ngs-border); }
.ngs__faq-item summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:20px 0;
  cursor:pointer;
  list-style:none;
  font-size:16px;
  font-weight:700;
}
.ngs__faq-item summary::-webkit-details-marker { display:none; }
.ngs__faq-plus { font-size:24px; transition:transform .2s ease; }
.ngs__faq-item[open] .ngs__faq-plus { transform:rotate(45deg); }
.ngs__faq-answer { padding:0 46px 20px 0; color:var(--ngs-muted); line-height:1.62; }

@media screen and (max-width:989px) {
  .ngs__need-grid,
  .ngs__package-grid,
  .ngs__process-grid { grid-template-columns:1fr; }

  .ngs__need-card { min-height:0; }
  .ngs__need-top { margin-bottom:30px; }

  .ngs__behind-card,
  .ngs__behind-card--reverse { flex-direction:column; }
  .ngs__behind-media { flex-basis:auto; width:100%; }
  .ngs__behind-image,
  .ngs__behind-placeholder,
  .ngs__behind-placeholder .placeholder-svg { min-height:0; aspect-ratio:4/3; }
  .ngs__behind-content { padding:34px 28px 38px; }

  .ngs__studio-card,
}

/* MOBILE */
@media screen and (max-width:749px) {
  .ngs__hero { padding-top:46px; padding-bottom:42px; }
  .ngs__lead { margin-top:18px; font-size:16px; }

  .ngs__services { padding-top:6px; padding-bottom:42px; }
  .ngs__need-card { padding:22px; border-radius:18px; }
  .ngs__need-top { margin-bottom:26px; }
  .ngs__need-card h3 { font-size:27px; }

  .ngs__logo-packages { padding-top:6px; padding-bottom:44px; }
  .ngs__package-card { padding:22px; border-radius:18px; }

  .ngs__behind { padding-top:26px; padding-bottom:32px; }
  .ngs__behind-card { border-radius:16px; }
  .ngs__behind-content { padding:28px 22px 30px; }

  .ngs__process { padding:48px 0; }
  .ngs__process-grid article { padding:25px 22px; }
  .ngs__process-grid h3 { margin-top:18px; }

  .ngs__project-form { padding-top:28px; padding-bottom:28px; }
  .ngs__project-form-app { padding:22px 18px; border-radius:14px; }

  .ngs__studio { padding-top:36px; padding-bottom:38px; }
  .ngs__studio-card { padding:26px 22px; border-radius:18px; }

  .ngs__faq { padding-top:4px; padding-bottom:38px; }


  .ngs__button { width:100%; }
}