/* ============================================================
   SERVICE — "NEO" RESKIN
   Clean wellness layout (inspired by neobased.fr), recolored to
   the Instant Zen brand: green #5E979E + beige.
   Scoped entirely under  body.iz-svc-neo  so it never leaks to
   the rest of the site. Loaded after style.css.
   ============================================================ */

body.iz-svc-neo {
  /* palette — green + beige only */
  --neo-green:    #5E979E;   /* primary teal-green */
  --neo-green-d:  #4E8189;   /* darker — hover, links, strong */
  --neo-green-dd: #3C656B;   /* deepest accent text */
  --neo-deep:     #2B4F49;   /* dark section background (forest teal) */
  --neo-deep-2:   #38655C;   /* gradient partner */
  --neo-head:     #2A463F;   /* headings: deep green-charcoal */
  --neo-body:     #5E6660;   /* muted body text */
  --neo-body-l:   #8A938C;   /* light muted */
  --neo-sand-50:  #FBF7EF;   /* lightest beige wash */
  --neo-sand-100: #F7EEDD;   /* cream */
  --neo-sand-200: #F2E5CF;   /* warm cream */
  --neo-line:     #EAE0CC;   /* beige border */
  --neo-star:     #5E979E;   /* stars / rating — on-palette green */
  /* shape */
  --neo-r:     16px;
  --neo-r-lg:  24px;
  --neo-pill:  999px;
  --neo-sh:    0 24px 60px -28px rgba(43,79,73,.45);
  --neo-sh-sm: 0 10px 30px -14px rgba(43,79,73,.26);

  background: #fff;
  color: var(--neo-body);
  font-family: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;
  -webkit-font-smoothing: antialiased;
}

/* Typography reset for the whole funnel ------------------------------------ */
body.iz-svc-neo .iz-svc-hero,
body.iz-svc-neo [class*="iz-svc-"] h1,
body.iz-svc-neo [class*="iz-svc-"] h2,
body.iz-svc-neo [class*="iz-svc-"] h3,
body.iz-svc-neo [class*="iz-svc-"] p,
body.iz-svc-neo [class*="iz-svc-"] li,
body.iz-svc-neo [class*="iz-svc-"] a,
body.iz-svc-neo [class*="iz-svc-"] td,
body.iz-svc-neo [class*="iz-svc-"] th,
body.iz-svc-neo .iz-ceo,
body.iz-svc-neo .iz-join {
  font-family: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;
}

body.iz-svc-neo h1,
body.iz-svc-neo h2 { color: var(--neo-head); font-weight: 800; letter-spacing: -.02em; line-height: 1.08; }
body.iz-svc-neo h3 { color: var(--neo-head); font-weight: 700; letter-spacing: -.01em; }
body.iz-svc-neo p,
body.iz-svc-neo li { color: var(--neo-body); }
body.iz-svc-neo strong { color: var(--neo-green-d); font-weight: 700; }

/* Section heading sizing ---------------------------------------------------- */
body.iz-svc-neo .iz-svc-problem h2,
body.iz-svc-neo .iz-svc-solution h2,
body.iz-svc-neo .iz-svc-process h2,
body.iz-svc-neo .iz-svc-benefits h2,
body.iz-svc-neo .iz-svc-compare h2,
body.iz-svc-neo .iz-svc-pricing h2,
body.iz-svc-neo .iz-svc-faq h2,
body.iz-svc-neo .iz-svc-about-text h2,
body.iz-svc-neo .iz-svc-testimonials-extra h2 {
  font-size: clamp(1.9rem, 3.4vw, 2.6rem);
  margin: 0 0 .35em;
}

/* Kicker — beige pill badge ------------------------------------------------- */
body.iz-svc-neo .iz-svc-kicker {
  display: inline-block;
  background: var(--neo-sand-100);
  color: var(--neo-green-dd);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: 7px 16px;
  border-radius: var(--neo-pill);
  margin: 0 0 18px;
}

/* ============================================================
   BUTTONS — pill style
   ============================================================ */
body.iz-svc-neo .iz-btn,
body.iz-svc-neo .iz-btn.rose,
body.iz-svc-neo .iz-btn.vert,
body.iz-svc-neo .iz-btn.gold {
  display: inline-flex; align-items: center; gap: 10px;
  background: var(--neo-green);
  color: #fff;
  font-weight: 700;
  font-size: .98rem;
  letter-spacing: -.01em;
  padding: 15px 28px;
  border-radius: var(--neo-pill);
  box-shadow: 0 14px 30px -12px rgba(94,151,158,.6);
  border: none;
  transition: transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease);
}
body.iz-svc-neo .iz-btn:hover,
body.iz-svc-neo .iz-btn.rose:hover,
body.iz-svc-neo .iz-btn.vert:hover,
body.iz-svc-neo .iz-btn.gold:hover {
  background: var(--neo-green-d);
  opacity: 1;
  transform: translateY(-2px);
  box-shadow: 0 20px 40px -14px rgba(94,151,158,.7);
}
body.iz-svc-neo .iz-btn .arrow {
  background: rgba(255,255,255,.18);
  width: 26px; height: 26px; border-radius: 50%;
  display: inline-grid; place-items: center;
  transition: transform .25s var(--ease);
}
body.iz-svc-neo .iz-btn:hover .arrow { transform: translateX(3px); }

body.iz-svc-neo .iz-btn-ghost,
body.iz-svc-neo .iz-svc-palette-rose .iz-btn-ghost,
body.iz-svc-neo .iz-svc-palette-vert .iz-btn-ghost,
body.iz-svc-neo .iz-svc-palette-gold .iz-btn-ghost {
  display: inline-flex; align-items: center; gap: 8px;
  background: #fff;
  color: var(--neo-head);
  font-weight: 700;
  font-size: .98rem;
  padding: 14px 26px;
  border-radius: var(--neo-pill);
  border: 1.5px solid var(--neo-sand-200);
  box-shadow: var(--neo-sh-sm);
  transition: transform .25s var(--ease), border-color .25s var(--ease), background .25s var(--ease);
}
body.iz-svc-neo .iz-btn-ghost:hover,
body.iz-svc-neo .iz-svc-palette-rose .iz-btn-ghost:hover,
body.iz-svc-neo .iz-svc-palette-vert .iz-btn-ghost:hover,
body.iz-svc-neo .iz-svc-palette-gold .iz-btn-ghost:hover {
  background: var(--neo-sand-50);
  border-color: var(--neo-green);
  transform: translateY(-2px);
}

/* Ghost button on dark (forest) sections */
body.iz-svc-neo .iz-svc-process .iz-btn-ghost,
body.iz-svc-neo .iz-svc-final .iz-btn-ghost,
body.iz-svc-neo .iz-svc-mid-cta .iz-btn-ghost,
body.iz-svc-neo .iz-svc-urgency .iz-btn-ghost {
  background: transparent;
  color: #fff;
  border-color: rgba(255,255,255,.4);
  box-shadow: none;
}
body.iz-svc-neo .iz-svc-process .iz-btn-ghost:hover,
body.iz-svc-neo .iz-svc-final .iz-btn-ghost:hover,
body.iz-svc-neo .iz-svc-mid-cta .iz-btn-ghost:hover,
body.iz-svc-neo .iz-svc-urgency .iz-btn-ghost:hover {
  background: rgba(255,255,255,.12);
  border-color: #fff;
}

/* ============================================================
   HERO — split layout
   ============================================================ */
body.iz-svc-neo .iz-svc-hero {
  background: #fff !important;
  min-height: 0;
  padding: clamp(140px, 16vh, 190px) 0 clamp(60px, 8vw, 110px);
  text-shadow: none;
}
body.iz-svc-neo .iz-svc-hero::before,
body.iz-svc-neo .iz-svc-hero::after,
body.iz-svc-neo .iz-svc-hero .iz-hero-canvas,
body.iz-svc-neo .iz-svc-hero .iz-hero-scroll { display: none !important; }

/* warm beige wash behind hero for subtle depth */
body.iz-svc-neo .iz-svc-hero {
  background-image:
    radial-gradient(60% 80% at 85% 10%, var(--neo-sand-100) 0%, rgba(247,238,221,0) 60%),
    radial-gradient(50% 60% at 0% 0%, #F4FAF8 0%, rgba(255,255,255,0) 55%) !important;
}

body.iz-svc-neo .iz-svc-hero-grid {
  display: grid;
  grid-template-columns: 1.02fr .98fr;
  gap: clamp(32px, 5vw, 72px);
  align-items: center;
}
body.iz-svc-neo .iz-svc-hero-content {
  max-width: none; margin: 0; text-align: left; color: var(--neo-body);
}
/* keep hero content visible regardless of reveal observer */
body.iz-svc-neo .iz-svc-hero [data-reveal] { opacity: 1; transform: none; }

body.iz-svc-neo .iz-svc-hero .iz-hero-title {
  font-size: clamp(2.3rem, 4.6vw, 3.6rem);
  line-height: 1.05;
  color: var(--neo-head);
  margin: 0 0 .55em;
  text-shadow: none;
}
body.iz-svc-neo .iz-svc-hero .iz-hero-title .italic {
  font-style: normal;
  color: var(--neo-green);
}
body.iz-svc-neo .iz-svc-hero .iz-hero-subtitle {
  max-width: 480px; margin: 0 0 1.8em; text-align: left;
  font-size: clamp(1.02rem, 1.4vw, 1.18rem);
  color: var(--neo-body); font-weight: 500; line-height: 1.6;
}
body.iz-svc-neo .iz-svc-hero-cta {
  display: flex; flex-wrap: wrap; gap: 14px; margin: 0;
  opacity: 1; animation: none;
}
body.iz-svc-neo .iz-svc-hero-loc {
  display: flex; align-items: center; gap: 8px;
  margin: 26px 0 0; color: var(--neo-body-l);
  font-size: .92rem; font-weight: 600;
}
body.iz-svc-neo .iz-svc-hero-loc svg { color: var(--neo-green); flex-shrink: 0; }

/* media column */
body.iz-svc-neo .iz-svc-hero-media { position: relative; }
body.iz-svc-neo .iz-svc-hero-photo {
  position: static; margin: 0;
  width: 100%; height: auto;
  border-radius: var(--neo-r-lg);
  overflow: hidden;
  aspect-ratio: 6 / 5;
  box-shadow: var(--neo-sh);
  border: 0;
}
body.iz-svc-neo .iz-svc-hero-photo img {
  width: 100%; height: 100%; object-fit: cover; border-radius: 0; display: block;
}
body.iz-svc-neo .iz-svc-hero-rating {
  position: absolute; top: 18px; left: -14px;
  display: flex; align-items: center; gap: 7px;
  background: #fff; color: var(--neo-head);
  padding: 9px 15px; border-radius: var(--neo-pill);
  box-shadow: var(--neo-sh-sm); font-weight: 700; font-size: .95rem;
}
body.iz-svc-neo .iz-svc-hero-rating svg { color: var(--neo-star); }
body.iz-svc-neo .iz-svc-hero-rating strong { color: var(--neo-head); }
body.iz-svc-neo .iz-svc-hero-floatcard {
  position: absolute; bottom: -16px; left: 22px;
  background: #fff; border-radius: 14px;
  padding: 12px 18px; box-shadow: var(--neo-sh-sm);
  display: flex; flex-direction: column; line-height: 1.3;
  border: 1px solid var(--neo-line);
}
body.iz-svc-neo .iz-svc-hero-floatcard strong { color: var(--neo-head); font-size: .95rem; }
body.iz-svc-neo .iz-svc-hero-floatcard span {
  color: var(--neo-green); font-size: .72rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; margin-top: 2px;
}

@media (max-width: 860px) {
  body.iz-svc-neo .iz-svc-hero-grid { grid-template-columns: 1fr; }
  body.iz-svc-neo .iz-svc-hero-content { text-align: center; }
  body.iz-svc-neo .iz-svc-hero .iz-hero-subtitle,
  body.iz-svc-neo .iz-svc-hero-cta { margin-left: auto; margin-right: auto; justify-content: center; }
  body.iz-svc-neo .iz-svc-hero-loc { justify-content: center; }
  body.iz-svc-neo .iz-svc-hero-media { max-width: 480px; margin: 8px auto 0; }
}

/* ============================================================
   PROBLEM
   ============================================================ */
body.iz-svc-neo .iz-svc-problem { background: #fff; }
body.iz-svc-neo .iz-svc-problem-body,
body.iz-svc-neo .iz-svc-lede {
  color: var(--neo-body); font-size: 1.08rem; line-height: 1.7;
}
body.iz-svc-neo .iz-svc-pain-list {
  display: grid; grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px 32px; max-width: 760px; margin: 2.4em auto 0; text-align: left;
}
body.iz-svc-neo .iz-svc-pain-list li {
  align-items: center; gap: 12px; color: var(--neo-head);
  font-weight: 600; font-size: 1rem;
  background: var(--neo-sand-50);
  border: 1px solid var(--neo-line);
  border-radius: 12px;
}
body.iz-svc-neo .iz-svc-pain-list .check { color: var(--neo-green); }
@media (max-width: 640px) {
  body.iz-svc-neo .iz-svc-pain-list { grid-template-columns: 1fr; }
}

/* ============================================================
   SOLUTION — beige band
   ============================================================ */
body.iz-svc-neo .iz-svc-solution,
body.iz-svc-neo .iz-section-rose,
body.iz-svc-neo .iz-section-vert,
body.iz-svc-neo .iz-section-warm {
  background: var(--neo-sand-100) !important;
}
/* top-align the two columns so a tall image can't spill above the section */
body.iz-svc-neo .iz-svc-solution-has-img { align-items: start; }
body.iz-svc-neo .iz-svc-solution-img {
  border-radius: var(--neo-r-lg);
  box-shadow: var(--neo-sh);
  aspect-ratio: 4 / 5;
}
body.iz-svc-neo .iz-svc-solution-img img {
  width: 100%; height: 100%;
  object-fit: cover;
  border-radius: var(--neo-r-lg);
}
/* Solution is a BEIGE band in neo — force dark, readable text.
   Overrides base style.css rules (e.g. body.iz-page-* .iz-svc-solution
   .iz-svc-lede{color:var(--c1)}) that were written for the old dark
   solution background and would otherwise render light-on-beige. */
body.iz-svc-neo .iz-svc-solution h2 { color: var(--neo-head); }
body.iz-svc-neo .iz-svc-solution .iz-svc-lede,
body.iz-svc-neo .iz-svc-solution p { color: var(--neo-body); }
body.iz-svc-neo .iz-svc-solution strong { color: var(--neo-green-d); }

/* ============================================================
   ABOUT / WHY
   ============================================================ */
body.iz-svc-neo .iz-svc-about { background: #fff; }
body.iz-svc-neo .iz-svc-about-img-inner { border-radius: var(--neo-r-lg); overflow: hidden; box-shadow: var(--neo-sh); }
body.iz-svc-neo .iz-svc-about-img-inner img { border-radius: 0; }
body.iz-svc-neo .iz-svc-about-role { color: var(--neo-green-d); font-weight: 600; }
body.iz-svc-neo .iz-svc-credentials li,
body.iz-svc-neo .iz-svc-why-list li { color: var(--neo-head); font-weight: 600; }
body.iz-svc-neo .iz-svc-credentials svg,
body.iz-svc-neo .iz-svc-why-list svg { color: var(--neo-green); }
body.iz-svc-neo .iz-svc-why-quote {
  border-left: 3px solid var(--neo-green);
  background: var(--neo-sand-50);
  padding: 18px 22px; border-radius: 0 12px 12px 0; margin-top: 1.6em;
}
body.iz-svc-neo .iz-svc-why-quote cite { color: var(--neo-green-d); }

/* ============================================================
   PROCESS — forest-green timeline
   ============================================================ */
body.iz-svc-neo .iz-svc-process {
  background: var(--neo-deep);
  color: #fff;
}
body.iz-svc-neo .iz-svc-process h2 { color: #fff; }
body.iz-svc-neo .iz-svc-process > .iz-svc-inner > * { position: relative; z-index: 1; }
body.iz-svc-neo .iz-svc-process .iz-svc-kicker { background: rgba(255,255,255,.12); color: var(--neo-sand-200); }

body.iz-svc-neo .iz-svc-steps {
  display: flex; flex-direction: column; gap: 18px;
  max-width: 760px; margin: 3em auto 0; text-align: left;
}
body.iz-svc-neo .iz-svc-step {
  position: relative;
  display: grid;
  grid-template-columns: 48px 1fr;
  grid-template-rows: auto auto;
  column-gap: 20px; row-gap: 6px;
  align-items: start;
  text-align: left;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: var(--neo-r);
  padding: 24px 26px;
  transition: background .3s var(--ease), transform .3s var(--ease);
}
/* explicit placement — markup is num + h3 + p as 3 direct children */
body.iz-svc-neo .iz-svc-step-num { grid-column: 1; grid-row: 1 / span 2; align-self: start; }
body.iz-svc-neo .iz-svc-step h3  { grid-column: 2; grid-row: 1; align-self: center; text-align: left; }
body.iz-svc-neo .iz-svc-step p   { grid-column: 2; grid-row: 2; text-align: left; }
body.iz-svc-neo .iz-svc-step:hover { background: rgba(255,255,255,.1); transform: translateX(4px); }
body.iz-svc-neo .iz-svc-step-num {
  width: 48px; height: 48px; border-radius: 50%;
  display: grid; place-items: center;
  background: var(--neo-green); color: #fff;
  font-size: 1.05rem; font-weight: 800; letter-spacing: 0;
  box-shadow: 0 8px 20px -6px rgba(94,151,158,.7);
}
body.iz-svc-neo .iz-svc-step h3 { color: #fff; margin: 4px 0 6px; font-size: 1.15rem; }
body.iz-svc-neo .iz-svc-step p { color: rgba(255,255,255,.78); }
/* connecting line between step number badges */
body.iz-svc-neo .iz-svc-step:not(:last-child)::before {
  content: ""; position: absolute; left: 50px; top: 72px; bottom: -18px;
  width: 2px; background: rgba(255,255,255,.18);
}
body.iz-svc-neo .iz-svc-process .iz-svc-steps + * ,
body.iz-svc-neo .iz-svc-process [class*="iz-btn"] { margin-top: 2.4em; }

/* ============================================================
   BENEFITS — card grid
   ============================================================ */
body.iz-svc-neo .iz-svc-benefits { background: var(--neo-sand-100); }
body.iz-svc-neo .iz-svc-benefit {
  background: #fff; border: 1px solid var(--neo-line);
  border-radius: var(--neo-r); padding: 30px 26px; box-shadow: none;
  transition: transform .3s var(--ease), box-shadow .3s var(--ease), border-color .3s var(--ease);
}
body.iz-svc-neo .iz-svc-benefit:hover {
  transform: translateY(-5px); box-shadow: var(--neo-sh-sm); border-color: var(--neo-green);
}
body.iz-svc-neo .iz-svc-benefit-icon {
  width: 56px; height: 56px; border-radius: 14px;
  background: var(--neo-sand-100); color: var(--neo-green-d);
  display: grid; place-items: center; margin-bottom: 18px;
}
body.iz-svc-neo .iz-svc-benefit h3 { color: var(--neo-head); }

/* ============================================================
   COMPARISON TABLE
   ============================================================ */
body.iz-svc-neo .iz-svc-compare { background: #fff; }
body.iz-svc-neo .iz-svc-compare-table {
  border-radius: var(--neo-r); overflow: hidden; box-shadow: var(--neo-sh-sm);
}
body.iz-svc-neo .iz-svc-compare-table th,
body.iz-svc-neo .iz-svc-compare-table td {
  border-color: var(--neo-line);
}
body.iz-svc-neo .iz-svc-compare-table thead th { color: var(--neo-head); font-weight: 700; }
body.iz-svc-neo .iz-svc-compare-table thead .iz-svc-compare-us {
  background: var(--neo-green); color: #fff;
}
body.iz-svc-neo .iz-svc-compare-table .iz-svc-compare-us { background: var(--neo-sand-50); color: var(--neo-head); }
body.iz-svc-neo .iz-svc-compare-table .iz-svc-compare-cri { color: var(--neo-head); }

/* ============================================================
   FEATURED TESTIMONIAL  (.iz-ceo)
   ============================================================ */
body.iz-svc-neo .iz-svc-testimonial {
  background: var(--neo-sand-100) !important;
}
body.iz-svc-neo .iz-svc-testimonial::after { display: none; }
body.iz-svc-neo .iz-ceo-text blockquote { color: var(--neo-head); }
body.iz-svc-neo .iz-ceo-text .sig { color: var(--neo-green-d); }
body.iz-svc-neo .iz-ceo-text .name { color: var(--neo-body-l); }

/* ============================================================
   TESTIMONIALS GRID
   ============================================================ */
body.iz-svc-neo .iz-svc-testimonials-extra { background: #fff; }
body.iz-svc-neo .iz-svc-tcard {
  background: #fff; border: 1px solid var(--neo-line);
  border-radius: var(--neo-r); box-shadow: none;
  transition: transform .3s var(--ease), box-shadow .3s var(--ease), border-color .3s var(--ease);
}
body.iz-svc-neo .iz-svc-tcard:hover { transform: translateY(-4px); box-shadow: var(--neo-sh-sm); border-color: var(--neo-green); }
body.iz-svc-neo .iz-svc-tcard-stars { color: var(--neo-star); }
body.iz-svc-neo .iz-svc-tcard blockquote { color: var(--neo-head); }
body.iz-svc-neo .iz-svc-tcard-author { color: var(--neo-head); font-weight: 700; }
body.iz-svc-neo .iz-svc-tcard-context { color: var(--neo-body-l); }

/* ============================================================
   PRICING
   ============================================================ */
body.iz-svc-neo .iz-svc-pricing { background: var(--neo-sand-100); }
body.iz-svc-neo .iz-svc-pricing h2 { margin-bottom: .7em; }
body.iz-svc-neo .iz-svc-pricing-intro {
  color: var(--neo-body);
  margin: 0 auto clamp(36px, 5vw, 60px);
  max-width: 760px;
}
body.iz-svc-neo .iz-svc-price {
  background: #fff; border: 1px solid var(--neo-line);
  border-radius: var(--neo-r-lg); box-shadow: none;
}
body.iz-svc-neo .iz-svc-price:hover { transform: translateY(-5px); box-shadow: var(--neo-sh-sm); }
body.iz-svc-neo .iz-svc-price.highlight {
  border: 2px solid var(--neo-green);
  box-shadow: 0 24px 60px -28px rgba(94,151,158,.55);
}
/* remove the 4px top accent bar (base ::after) on all pricing cards */
body.iz-svc-neo .iz-svc-price::after { display: none !important; }
body.iz-svc-neo .iz-svc-price-tag { background: var(--neo-green); color: #fff; }
body.iz-svc-neo .iz-svc-price h3 { color: var(--neo-head); }
body.iz-svc-neo .iz-svc-price-amount { color: var(--neo-green-d); }
body.iz-svc-neo .iz-svc-price-duration { color: var(--neo-body-l); }
body.iz-svc-neo .iz-svc-price .iz-btn { width: 100%; justify-content: center; }

/* ============================================================
   TRUST
   ============================================================ */
body.iz-svc-neo .iz-svc-trust { background: #fff; }
body.iz-svc-neo .iz-svc-trust-card {
  background: var(--neo-sand-50); border: 1px solid var(--neo-line);
  border-radius: var(--neo-r); padding: 28px 30px;
}
body.iz-svc-neo .iz-svc-trust-card h3 { color: var(--neo-head); }
body.iz-svc-neo .iz-svc-trust-card a { color: var(--neo-green-d); }

/* ============================================================
   FAQ — rounded accordion + chevron
   ============================================================ */
body.iz-svc-neo .iz-svc-faq { background: #fff; }
body.iz-svc-neo .iz-svc-faq-item {
  background: var(--neo-sand-50);
  border: 1px solid var(--neo-line);
  border-radius: var(--neo-r);
  overflow: hidden;
  transition: border-color .25s var(--ease), background .25s var(--ease);
}
body.iz-svc-neo .iz-svc-faq-item[open] { background: #fff; border-color: var(--neo-green); box-shadow: var(--neo-sh-sm); }
body.iz-svc-neo .iz-svc-faq-item summary { color: var(--neo-head); font-weight: 700; }
body.iz-svc-neo .iz-svc-faq-item summary::after {
  content: ""; width: 9px; height: 9px;
  border-right: 2px solid var(--neo-green); border-bottom: 2px solid var(--neo-green);
  transform: rotate(45deg); transition: transform .25s var(--ease);
  margin-top: -4px;
}
body.iz-svc-neo .iz-svc-faq-item[open] summary::after { content: ""; transform: rotate(-135deg); margin-top: 2px; }
body.iz-svc-neo .iz-svc-faq-a a { color: var(--neo-green-d); }

/* ============================================================
   MID-PAGE CTA BANNERS — forest green
   ============================================================ */
body.iz-svc-neo .iz-svc-mid-cta {
  background: linear-gradient(120deg, var(--neo-deep) 0%, var(--neo-green-dd) 100%) !important;
  color: #fff;
}
body.iz-svc-neo .iz-svc-mid-cta h3 { color: #fff; font-size: clamp(1.5rem, 2.6vw, 2rem); }
body.iz-svc-neo .iz-svc-mid-cta p { color: rgba(255,255,255,.82); }
body.iz-svc-neo .iz-svc-mid-cta .iz-btn { background: #fff; color: var(--neo-deep); box-shadow: 0 14px 30px -12px rgba(0,0,0,.4); }
body.iz-svc-neo .iz-svc-mid-cta .iz-btn:hover { background: var(--neo-sand-50); }
body.iz-svc-neo .iz-svc-mid-cta .iz-btn .arrow { background: rgba(94,151,158,.18); color: var(--neo-green-d); }

/* ============================================================
   URGENCY
   ============================================================ */
body.iz-svc-neo .iz-svc-urgency {
  background: var(--neo-deep);
  color: #fff;
}
body.iz-svc-neo .iz-svc-urgency h3 { color: #fff; }
body.iz-svc-neo .iz-svc-urgency p { color: rgba(255,255,255,.82); }
body.iz-svc-neo .iz-svc-urgency-icon { color: var(--neo-sand-200); }
body.iz-svc-neo .iz-svc-urgency .iz-btn { background: #fff; color: var(--neo-deep); }
body.iz-svc-neo .iz-svc-urgency .iz-btn:hover { background: var(--neo-sand-50); }
body.iz-svc-neo .iz-svc-urgency .iz-btn .arrow { background: rgba(94,151,158,.18); color: var(--neo-green-d); }

/* ============================================================
   FINAL CTA  (.iz-join)
   ============================================================ */
body.iz-svc-neo .iz-svc-final {
  background: linear-gradient(160deg, var(--neo-deep) 0%, var(--neo-green-dd) 100%) !important;
}
body.iz-svc-neo .iz-svc-final .iz-join-inner { background: transparent; }
body.iz-svc-neo .iz-svc-final h2 { color: #fff; }
body.iz-svc-neo .iz-svc-final p { color: rgba(255,255,255,.85); }
body.iz-svc-neo .iz-svc-final .iz-btn { background: #fff; color: var(--neo-deep); }
body.iz-svc-neo .iz-svc-final .iz-btn:hover { background: var(--neo-sand-50); }
body.iz-svc-neo .iz-svc-final .iz-btn .arrow { background: rgba(94,151,158,.18); color: var(--neo-green-d); }

/* ============================================================
   STICKY DESKTOP CTA + MOBILE CTA
   ============================================================ */
/* floating rounded bar — detached from the screen edges */
body.iz-svc-neo .iz-sticky-cta {
  background: transparent;
  box-shadow: none;
  padding: 0 16px 16px;
}
body.iz-svc-neo .iz-sticky-cta-inner {
  background: #fff;
  border: 1px solid var(--neo-line);
  box-shadow: 0 16px 44px -16px rgba(43,79,73,.32);
  border-radius: var(--neo-pill);
  padding: 9px 12px 9px 26px;
  max-width: min(920px, 100%);
}
body.iz-svc-neo .iz-sticky-cta-text strong { color: var(--neo-head); }
body.iz-svc-neo .iz-sticky-cta-text span { color: var(--neo-body-l); }
/* slimmer buttons inside the bar */
body.iz-svc-neo .iz-sticky-cta .iz-btn { padding: 11px 22px; font-size: .92rem; }
body.iz-svc-neo .iz-sticky-cta .iz-btn-ghost,
body.iz-svc-neo .iz-sticky-cta .iz-sticky-cta-tel { padding: 9px 18px; font-size: .9rem; }
body.iz-svc-neo .iz-mobile-cta {
  background: var(--neo-green);
  box-shadow: 0 14px 30px -10px rgba(94,151,158,.7);
}

/* ============================================================
   SIGNATURE block (service-unique) — soft beige framing
   ============================================================ */
body.iz-svc-neo .iz-svc-signature {
  background: var(--neo-sand-100);
  padding-top: clamp(48px, 6vw, 96px);
  padding-bottom: clamp(48px, 6vw, 96px);
}
/* tighten the join when the solution band sits directly above */
body.iz-svc-neo .iz-svc-solution { padding-bottom: clamp(48px, 6vw, 90px); }

/* signature header / body accents → green */
body.iz-svc-neo .iz-svc-signature__num,
body.iz-svc-neo .iz-svc-signature__num span { color: var(--neo-green-d); }
body.iz-svc-neo .iz-svc-signature__num::after { background: linear-gradient(90deg, var(--neo-green), transparent); }
body.iz-svc-neo .iz-svc-signature h2 { color: var(--neo-head); }
body.iz-svc-neo .iz-svc-signature h2 .italic { color: var(--neo-green); }
body.iz-svc-neo .iz-svc-signature p { color: var(--neo-body); }
body.iz-svc-neo .iz-svc-signature p strong { color: var(--neo-green-d); }
body.iz-svc-neo .iz-svc-signature p em { color: var(--neo-green-d); }

/* Liftant ("Cinq traditions") — wide intro on top, then 5 cards below:
   3 across, then 2 centered underneath. Overrides the base 360px|1fr layout. */
body.iz-svc-neo .iz-liftant-inner {
  display: block;
}
body.iz-svc-neo .iz-liftant-text {
  max-width: 880px;
  margin: 0 auto clamp(44px, 5vw, 68px);
}
body.iz-svc-neo .iz-liftant-text h2 { color: var(--neo-head); }
body.iz-svc-neo .iz-liftant-text h2 .italic { color: var(--neo-green); }
body.iz-svc-neo .iz-liftant-text p { color: var(--neo-body); max-width: none; }
body.iz-svc-neo .iz-liftant-text p strong { color: var(--neo-green-d); }
body.iz-svc-neo .iz-liftant-signature { color: var(--neo-body-l); }

/* 6-col grid so the trailing 2 cards centre under the top 3 */
body.iz-svc-neo .iz-liftant-cards {
  grid-template-columns: repeat(6, 1fr);
  gap: clamp(16px, 1.8vw, 22px);
  max-width: 1080px;
  margin: 0 auto;
}
body.iz-svc-neo .iz-liftant-card { grid-column: span 2; }
body.iz-svc-neo .iz-liftant-card:nth-child(4) { grid-column: 2 / span 2; }
body.iz-svc-neo .iz-liftant-card:nth-child(5) { grid-column: 4 / span 2; }

/* uniform green + beige cards (override per-card rose/gold inline vars) */
body.iz-svc-neo .iz-liftant-card {
  --card-accent: var(--neo-green) !important;
  --card-bg: #fff !important;
  background: #fff;
  border: 1px solid var(--neo-line);
  border-top: 3px solid var(--neo-green);
  border-radius: var(--neo-r);
}
body.iz-svc-neo .iz-liftant-card:hover { box-shadow: var(--neo-sh-sm); border-color: var(--neo-green); }
body.iz-svc-neo .iz-liftant-card-name { color: var(--neo-head); }
body.iz-svc-neo .iz-liftant-card-origin,
body.iz-svc-neo .iz-liftant-card-sub { color: var(--neo-green-d); }
body.iz-svc-neo .iz-liftant-card-desc { color: var(--neo-body); }

@media (max-width: 900px) {
  body.iz-svc-neo .iz-liftant-cards { grid-template-columns: repeat(2, 1fr); }
  body.iz-svc-neo .iz-liftant-card,
  body.iz-svc-neo .iz-liftant-card:nth-child(4),
  body.iz-svc-neo .iz-liftant-card:nth-child(5) { grid-column: auto; }
}
@media (max-width: 560px) {
  body.iz-svc-neo .iz-liftant-cards { grid-template-columns: 1fr; }
}

/* Massages "Comment choisir" chooser cards — green + beige */
body.iz-svc-neo .iz-chooser-card {
  --card-accent: var(--neo-green) !important;
  --card-bg: #fff !important;
  background: #fff;
  border: 1px solid var(--neo-line);
  border-top: 3px solid var(--neo-green);
  border-radius: var(--neo-r);
}
body.iz-svc-neo .iz-chooser-card:hover { box-shadow: var(--neo-sh-sm); border-color: var(--neo-green); }
body.iz-svc-neo .iz-chooser-card-head h3 { color: var(--neo-head); }
body.iz-svc-neo .iz-chooser-detail,
body.iz-svc-neo .iz-chooser-for ul li { color: var(--neo-body); }
body.iz-svc-neo .iz-chooser-for-label,
body.iz-svc-neo .iz-chooser-for ul li::before { color: var(--neo-green-d); }
