/* EcoVance+ UI kit components — local, script-free and block-editor friendly. */

/* Decorative arrows stay out of accessible names: the pseudo-elements contain
   no text and reuse the local contact-arrow vector as a CSS mask. */
.ecovance-mini-link::after,
.ecovance-download-link::before,
.ecovance-button-primary .wp-block-button__link::after,
.ecovance-button-secondary .wp-block-button__link::after,
.ecovance-button-external .wp-block-button__link::after,
.ecovance-article__back a::before {
  content: "";
  display: inline-block;
  width: .7em;
  height: .7em;
  flex: 0 0 .7em;
  background-color: currentColor;
  -webkit-mask: url("../images/contact-arrow.svg") center / contain no-repeat;
  mask: url("../images/contact-arrow.svg") center / contain no-repeat;
}

.ecovance-ui-section {
  box-sizing: border-box;
  width: min(calc(100% - 9.375rem), var(--ecovance-wide));
  margin: clamp(3rem, 7vw, 6rem) auto;
}

.ecovance-ui-section :where(h2, h3, p) { margin-block-start: 0; }

.ecovance-section-label {
  display: flex;
  align-items: center;
  gap: .625rem;
  margin: 0 0 .75rem;
  color: var(--ecovance-green-dark);
  font-family: "Atkinson Hyperlegible", Arial, sans-serif;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1;
}

.ecovance-section-label::before {
  content: "";
  flex: 0 0 2.134rem;
  width: 2.134rem;
  height: 1.342rem;
  background: url("../images/section-label-wave.svg") center / contain no-repeat;
  transform: rotate(30deg);
}

.ecovance-ui-title {
  margin: 0;
  color: var(--ecovance-blue-dark);
  font-size: 1.875rem;
  line-height: 1.16;
}

/* Native Image block used as a responsive, editor-selectable decoration. */
.has-ecovance-decorative-layer,
.editor-styles-wrapper :where(.wp-block-group, .wp-block-columns, .wp-block-column, .wp-block-cover):has(.is-style-ecovance-decorative-absolute) {
  position: relative;
  isolation: isolate;
}
.has-ecovance-decorative-layer > :not(.is-style-ecovance-decorative-absolute) {
	position: relative;
	z-index: 1;
}

.editor-styles-wrapper :where(.wp-block-group, .wp-block-columns, .wp-block-column, .wp-block-cover):has(> .is-style-ecovance-decorative-absolute) > :not(.is-style-ecovance-decorative-absolute) {
	position: relative;
	z-index: 1;
}
.wp-block-image.is-style-ecovance-decorative-absolute {
  position: absolute;
  z-index: 0;
  max-width: none;
  margin: 0 !important;
  line-height: 0;
  pointer-events: none;
}
.wp-block-image.is-style-ecovance-decorative-absolute img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.is-style-ecovance-clip-decorations {
  overflow: hidden;
  overflow: clip;
}
.editor-styles-wrapper .block-editor-block-list__block.is-style-ecovance-decorative-absolute {
	pointer-events: auto;
	outline: 1px dashed rgba(0, 56, 94, 0.4);
	outline-offset: 2px;
}

.ecovance-project-introduction {
  display: grid;
  grid-template-columns: minmax(18rem, 1fr) minmax(22rem, 1.15fr);
  gap: clamp(3rem, 8vw, 8rem);
  min-height: 29.375rem;
  align-items: start;
  padding: 2.25rem 5rem;
  background: #f5f5f5;
}

.ecovance-project-introduction__lead {
  max-width: 27rem;
  font-family: "Atkinson Hyperlegible", Arial, sans-serif;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.16;
}

.ecovance-project-introduction__body { padding-top: .25rem; }
.ecovance-project-introduction__body p { font-size: 1.125rem; line-height: 1.25; }

.ecovance-poles-grid {
  display: grid;
  width: 100%;
  max-width: 78rem;
  grid-template-columns: repeat(4, minmax(0, 17.5625rem));
  gap: 1.25rem;
  justify-content: space-between;
  margin: 2.75rem auto 0;
  padding: 0;
  list-style: none;
}
.alignwide.ecovance-poles-grid,
.alignwide.ecovance-deliverables,
.alignwide.ecovance-tags { width: 100%; max-width: 78rem; }

.ecovance-pole-card {
  box-sizing: border-box;
  align-self: start;
  min-height: 16.8125rem;
  height: auto;
  margin: 0;
  padding: 2.25rem 1.5rem 1.25rem;
  border-radius: .625rem;
  background: var(--ecovance-blue-pale);
  color: var(--ecovance-blue-dark);
}

.ecovance-pole-card:nth-child(even) {
  margin-top: 2.25rem;
  background: var(--ecovance-green-pale);
}

.ecovance-pole-card__icon {
  width: 3.875rem;
  height: 3.625rem;
  margin: 0 0 .75rem;
  object-fit: contain;
	object-position: left center;
}
.ecovance-pole-card__icon img { width: 100%; height: 100%; object-fit: contain; object-position: left center; }

.ecovance-pole-card h3 { margin: 0; font-size: 1.5625rem; }
.ecovance-pole-card p { margin: .15rem 0 2.25rem; font-size: .75rem; line-height: 1.2; }

.ecovance-mini-link {
  display: inline-flex;
  min-height: 1.4375rem;
  box-sizing: border-box;
  align-items: center;
  gap: .5rem;
  margin-block: 0;
  padding: .15rem .55rem;
  border: 1px solid var(--ecovance-blue-dark);
  border-radius: 1.25rem;
  color: var(--ecovance-blue-dark);
  font-family: "Atkinson Hyperlegible", Arial, sans-serif;
  font-size: .75rem;
  line-height: 1;
  text-decoration: none;
}

.ecovance-mini-link::after { transform: rotate(-45deg); }
.ecovance-mini-link:hover { background: var(--ecovance-blue-dark); color: #fff; }

.ecovance-results {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: minmax(26rem, 34rem) minmax(32rem, 35rem);
  gap: 3rem;
  justify-content: center;
  overflow: clip;
  width: 100%;
  min-height: 48.875rem;
  padding: 5rem max(3rem, calc((100vw - 72rem) / 2));
  background: var(--ecovance-blue);
  color: #fff;
}

.ecovance-results :where(h2, h3, p) { color: inherit; }
.ecovance-results .ecovance-section-label { color: #fff; }
.ecovance-results__lead { font: 700 1.875rem/1.2 "Atkinson Hyperlegible", Arial, sans-serif; }
.ecovance-results__content { width: 100%; max-width: 34rem; margin: 0; }
.ecovance-results__copy { margin-top: 2.75rem; font-size: .9375rem; line-height: 1.12; }
.ecovance-results__copy + .ecovance-results__copy { margin-top: 1.25rem; }

.ecovance-results__stats {
  position: relative;
  width: 100%;
  max-width: 35rem;
  min-height: 34rem;
  margin: 0;
  padding: 0;
  list-style: none;
  isolation: isolate;
}

.ecovance-results__stats::before,
.ecovance-results__stats::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 19.5rem;
  height: 19.5rem;
  border-radius: 50%;
  background: rgb(7 111 101 / 38%);
}
.ecovance-results__stats::before { top: 9rem; left: 4rem; }
.ecovance-results__stats::after { right: 0; bottom: 0; background: rgb(0 91 96 / 40%); }

.ecovance-result-stat { position: absolute; display: flex; align-items: center; gap: .75rem; margin: 0; }
.ecovance-result-stat p { margin: 0; }
.ecovance-result-stat__value { font: 400 9.3125rem/.78 "Atkinson Hyperlegible", Arial, sans-serif; }
.ecovance-result-stat__label { max-width: 12.75rem; font: 400 1.25rem/1 "Atkinson Hyperlegible", Arial, sans-serif; }
.ecovance-result-stat:nth-child(1) { top: 4.7rem; left: 3.25rem; }
.ecovance-result-stat:nth-child(2) { top: 11.4rem; left: 17.5rem; }
.ecovance-result-stat:nth-child(3) { top: 16.5rem; left: 0; }
.ecovance-result-stat:nth-child(4) { top: 21.75rem; left: 22rem; }
.ecovance-result-stat:nth-child(5) { top: 28.8rem; left: 18rem; }
.ecovance-result-stat:nth-child(6) { top: 26.9rem; left: 1rem; }

@media (min-width: 70.01rem) {
  .ecovance-results__stats { transform: translateX(2.5rem); }
}

/*
 * The original scattered layout is preserved until the visitor increases
 * text spacing. In that case only, the measured state switches to normal
 * document flow so enlarged lines cannot overlap neighbouring indicators.
 */
.ecovance-results__stats.has-expanded-text-spacing {
  display: grid;
  min-height: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: start;
  gap: 1.5rem 2rem;
  transform: none;
}
.ecovance-results__stats.has-expanded-text-spacing .ecovance-result-stat,
.ecovance-results__stats.has-expanded-text-spacing .ecovance-result-stat:nth-child(n) {
  position: static;
  inset: auto;
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: .25rem;
}
.ecovance-results__stats.has-expanded-text-spacing .ecovance-result-stat__value,
.ecovance-results__stats.has-expanded-text-spacing .ecovance-result-stat__label {
  max-width: 100%;
  overflow-wrap: anywhere;
}

.ecovance-deliverables { width: 100%; max-width: 78rem; margin: 3.25rem auto 0; padding: 0; list-style: none; }
.ecovance-deliverables > .ecovance-deliverable {
  width: 100%;
  max-width: none;
  margin-right: 0 !important;
  margin-left: 0 !important;
}
.ecovance-deliverable {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 2rem;
  min-height: 11.4375rem;
  align-items: center;
  margin: 0 0 1rem;
  padding: 1.25rem 1.25rem 1.25rem 3.375rem;
  border: 2px solid var(--ecovance-blue-dark);
  border-radius: .9375rem;
  background: #fff;
  color: var(--ecovance-blue-dark);
  list-style: none;
}

.ecovance-deliverable:hover,
.ecovance-deliverable:focus-within { background: var(--ecovance-blue-dark); color: #fff; }
.ecovance-deliverable__content { min-width: 0; }
.ecovance-deliverable :where(h3, p) { color: inherit; }
.ecovance-deliverable h3 { margin: .5rem 0 .35rem; font-size: 2.1875rem; }
.ecovance-deliverable p { margin: 0; font-size: 1.125rem; line-height: 1.25; }
.ecovance-deliverable__categories,
.ecovance-deliverable__partners {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ecovance-deliverable__categories > li,
.ecovance-deliverable__partners > li { max-width: 100%; margin: 0; list-style: none; }
.ecovance-deliverable__partners { margin-top: .875rem; }
.ecovance-deliverable__partner {
  display: inline-flex;
  min-height: 1.75rem;
  box-sizing: border-box;
  align-items: center;
  padding: .2rem .75rem;
  border: 2px solid var(--ecovance-blue-dark);
  border-radius: 1.25rem;
  background: #fff;
  color: var(--ecovance-blue-dark);
  font: 700 .75rem/1.2 "Atkinson Hyperlegible", Arial, sans-serif;
  overflow-wrap: anywhere;
}
.ecovance-deliverables-placeholder {
  box-sizing: border-box;
  width: 100%;
  margin-top: 2rem;
  padding: 1.5rem;
  border: 2px dashed var(--ecovance-blue-dark);
  border-radius: .9375rem;
}
.ecovance-chip {
  display: inline-flex;
  min-height: 1.4375rem;
  align-items: center;
  padding: 0 .8rem;
  border-radius: 1.25rem;
  background: var(--ecovance-green-pale);
  color: var(--ecovance-blue-dark);
  font: 700 .625rem/1 "Atkinson Hyperlegible", Arial, sans-serif;
}

.ecovance-download-link {
  display: inline-flex;
  min-width: 19.625rem;
  min-height: 4.25rem;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .75rem 1rem;
  border-radius: .9375rem;
  background: var(--ecovance-blue-dark);
  color: #fff;
  font: 700 1.25rem/1 "Atkinson Hyperlegible", Arial, sans-serif;
  text-decoration: none;
}
.ecovance-download-link::before { width: .9em; height: .9em; flex-basis: .9em; transform: rotate(45deg); }
.ecovance-deliverable:is(:hover, :focus-within) .ecovance-download-link { background: #fff; color: var(--ecovance-blue-dark); }
.ecovance-download-link:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
  box-shadow: 0 0 0 3px var(--ecovance-green-dark);
}
.ecovance-download-link small { font-size: .8125rem; font-weight: 400; }

.ecovance-eco-badge {
  position: relative;
  display: inline-flex;
  width: min(100%, 16.5625rem);
  min-width: 0;
  height: auto;
  min-height: 6.75rem;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  padding: 2.25rem 1.5rem;
  background: url("../images/eco-badge-shape.webp") center / 95% 80% no-repeat;
  color: var(--ecovance-blue-dark);
  text-align: center;
}
.ecovance-eco-badge::before {
  content: "";
  position: absolute;
  inset: 1.925rem .875rem 1.9375rem;
  border: 1.5px solid currentColor;
  border-radius: .8rem;
  background: transparent;
}
.ecovance-eco-badge::after {
  content: "i";
  position: absolute;
  bottom: 1rem;
  left: 50%;
  display: grid;
  width: 1rem;
  height: 1rem;
  place-items: center;
  transform: translateX(-50%);
  font: 700 .75rem/1 "Atkinson Hyperlegible", Arial, sans-serif;
}
.ecovance-eco-badge strong { position: relative; z-index: 1; display: block; width: 100%; min-width: 0; max-width: 100%; margin: 0; overflow-wrap: anywhere; white-space: normal; font: 700 0.85rem/1.2 "Atkinson Hyperlegible", Arial, sans-serif; text-align: center; }
.ecovance-eco-badge strong::before { content: ""; position: absolute; bottom: calc(100% + .8rem); left: 50%; width: .875rem; height: .9375rem; background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAPCAYAAADUFP50AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAOdEVYdFNvZnR3YXJlAEZpZ21hnrGWYwAAAVdJREFUeAHlkLFOwlAUhs+5lTbGBRJBBwzMOMioQAK+AQ5QNzu6qU9A+wb4BLpC0OAT2ASDYWNiBYwbGOqisbT3eG9rojGpMa7+y03Of7+b7x5MFXQCBIc4DBnQ8A29ptO/nsKXxEsHOyqPVYmwgghZMcpiqqgvAkjhXfKVM0DKcKKmp7mWhGJLtYGEp0RgI5L9AVdwo6jfcg4wu2/ty4vJUu0EOWvKi8IkgQAZX/GNp17nRvapwuGEiMbKajo3YYimls45r4+jwcvDaLC2tQ2IaAhok1a843nvqhVC9YY4qhDzTPwcoCmUL5dsaYLKn1VXWxCQM+u3E+t7tTJDMACYwYGseb8dgoFisX4kFC35RwEMETAfFGJxQBCX6qT41vyuY4fjb0kWannGoEzEpIF4gM5dzbUdu+vAbyKWNk7u6hdRPYsqhFoWfgiDP+Z/g4RTYjSJqt8BnLyUhDuXFZcAAAAASUVORK5CYII=") center / contain no-repeat; transform: translateX(-50%); }

.ecovance-section-navigation {
  display: flex;
  width: 100%;
  max-width: 78rem;
  min-height: 3.875rem;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  gap: clamp(.5rem, 2vw, 2rem);
  margin: 0 auto;
  padding: .65rem 1rem;
  border: 1px solid #efe5e5;
  border-radius: .9375rem;
  background-color: #fff;
  color: var(--ecovance-blue-dark);
}
.ecovance-section-navigation a {
  padding: .5rem .75rem;
  color: inherit;
  font: 700 1.125rem/1 "Atkinson Hyperlegible", Arial, sans-serif;
  text-underline-offset: .2em;
}
.ecovance-section-navigation a[aria-current="location"] {
  min-width: 8.625rem;
  border-radius: .625rem;
  background: var(--ecovance-anchor-active-background, var(--ecovance-blue-dark));
  box-shadow: .1875rem .25rem 0 var(--ecovance-anchor-active-shadow, #164193);
  color: var(--ecovance-anchor-active-text, #fff);
  text-align: center;
  text-decoration: none;
}
.ecovance-section-navigation__track { display: contents; }

.ecovance-section-navigation--editor .ecovance-section-navigation__editor-link {
  display: block;
  min-width: 7rem;
  box-sizing: border-box;
  padding: .5rem .75rem;
  color: inherit;
  font: 700 1.125rem/1 "Atkinson Hyperlegible", Arial, sans-serif;
  text-align: center;
  text-decoration: underline;
  text-underline-offset: .2em;
}
.ecovance-section-navigation--editor .ecovance-section-navigation__editor-link.is-active {
  border-radius: .625rem;
  background: var(--ecovance-anchor-active-background, var(--ecovance-blue-dark));
  box-shadow: .1875rem .25rem 0 var(--ecovance-anchor-active-shadow, #164193);
  color: var(--ecovance-anchor-active-text, #fff);
  text-decoration: none;
}

.ecovance-section-navigation__arrow {
  display: none;
  width: 2.25rem;
  height: 2.25rem;
  box-sizing: border-box;
  flex: 0 0 2.25rem;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: var(--ecovance-blue-dark);
  color: #fff;
  text-decoration: none;
}
.ecovance-section-navigation__arrow-icon {
  display: block;
  width: .5rem;
  height: .75rem;
  background: url("../images/anchor-chevron.svg") center / contain no-repeat;
}
.ecovance-section-navigation__arrow--next .ecovance-section-navigation__arrow-icon { transform: rotate(180deg); }
.ecovance-section-navigation__arrow[aria-disabled="true"] { background: #d9d9d9; cursor: default; }

.ecovance-section-navigation__sentinel { display: block; width: 100%; height: 1px; margin-bottom: -1px; }
.ecovance-section-navigation__spacer { display: block; width: 100%; height: 0; box-sizing: border-box; margin: 0 !important; padding: 0 !important; pointer-events: none; }
.ecovance-section-navigation__spacer.is-active { height: var(--ecovance-section-navigation-flow-height, 3.875rem); }
.ecovance-section-navigation__spacer[hidden] { display: none !important; }
.ecovance-section-navigation.is-fixed {
  position: fixed;
  z-index: 900;
  top: .75rem;
  left: .75rem;
  display: flex;
  width: min(15rem, calc(100vw - 1.5rem)) !important;
  max-width: none !important;
  min-height: 0;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  gap: .25rem;
  margin: 0;
  padding: .75rem;
  border-color: rgb(22 58 87 / 18%);
  box-shadow: 0 .5rem 1.5rem rgb(22 58 87 / 16%);
  animation: ecovance-anchor-nav-in var(--ecovance-motion-base) var(--ecovance-ease-standard) both;
}
.ecovance-section-navigation.is-fixed a:not(.ecovance-section-navigation__arrow) { display: block; width: 100%; box-sizing: border-box; }
.ecovance-section-navigation.is-fixed a[aria-current="location"] { min-width: 0; text-align: left; }
.admin-bar .ecovance-section-navigation.is-fixed { top: calc(32px + .75rem); }

@keyframes ecovance-anchor-nav-in {
  from { opacity: 0; transform: translateY(-.5rem); }
  to { opacity: 1; transform: translateY(0); }
}

.ecovance-accordion { display: grid; gap: 1rem; }
.ecovance-accordion details {
  overflow: clip;
  border: 1px solid var(--ecovance-blue-dark);
  border-radius: .9375rem;
  background: var(--ecovance-blue-pale);
}
.ecovance-accordion summary {
  position: relative;
  min-height: 4.5rem;
  box-sizing: border-box;
  padding: 1.25rem 4rem 1.25rem 1.5rem;
  cursor: pointer;
  color: var(--ecovance-blue-dark);
  font: 700 1.25rem/1.2 "Atkinson Hyperlegible", Arial, sans-serif;
  list-style: none;
}
.ecovance-accordion summary::-webkit-details-marker { display: none; }
.ecovance-accordion summary::after { content: "+"; position: absolute; top: 50%; right: 1.5rem; font-size: 1.75rem; transform: translateY(-50%); }
.ecovance-accordion details[open] summary::after { content: "−"; }
.ecovance-accordion__content { padding: 0 1.5rem 1.5rem; }

.ecovance-news-card {
  position: relative;
  box-sizing: border-box;
  width: min(100%, 20.875rem);
  height: 21.375rem;
  overflow: hidden;
  border: 0;
  border-radius: 1.25rem;
  background: #fff;
  box-shadow: 0 .25rem .25rem rgb(22 58 87 / 25%);
}
.has-ecovance-news-interaction .ecovance-news-card:hover,
.has-ecovance-news-interaction .ecovance-news-card:focus-within,
.ecovance-news-card.has-ecovance-news-interaction:hover,
.ecovance-news-card.has-ecovance-news-interaction:focus-within { box-shadow: .25rem .25rem 0 var(--ecovance-blue-dark); }
.ecovance-news-card .wp-block-post-featured-image,
.ecovance-news-card .ecovance-news-card__media { position: relative; height: 9rem; margin: 0; }
.ecovance-news-card .wp-block-post-featured-image img,
.ecovance-news-card .ecovance-news-card__media img {
  display: block;
  width: 100%;
  height: 9rem;
  border-radius: .9375rem .9375rem 0 0;
  object-fit: cover;
}
.ecovance-news-card > .ecovance-news-card__body {
  display: flex;
  min-height: 12.375rem;
  box-sizing: border-box;
  flex-direction: column;
  margin-block-start: 0;
  padding: .75rem 1.75rem 1.25rem 1.625rem;
}
.ecovance-news-card .ecovance-news-card__body > * { margin: 0; }
.ecovance-news-card .wp-block-post-title { margin-top: .75rem; font-size: 1.125rem; line-height: 1.22; }
.ecovance-news-card .wp-block-post-title a { color: var(--ecovance-blue-dark); text-decoration: none; }
.has-ecovance-news-interaction .ecovance-news-card:hover .wp-block-post-title a,
.has-ecovance-news-interaction .ecovance-news-card:focus-within .wp-block-post-title a { text-decoration: underline; text-decoration-thickness: .1em; text-underline-offset: .12em; }
.ecovance-news-card__meta { display: flex; flex-wrap: wrap; align-items: center; gap: .25rem .75rem; color: var(--ecovance-blue-dark); font-size: .875rem; line-height: 1.15; }
.ecovance-news-card__meta > * { margin: 0; }
.ecovance-news-card__author { position: relative; padding-left: .75rem; }
.ecovance-news-archive { padding-block: clamp(2.5rem, 5vw, 5rem); }
.ecovance-news-archive__heading { width: min(calc(100% - 3rem), 78rem); margin-inline: auto; }
.ecovance-news-section { width: min(calc(100% - 9.375rem), var(--ecovance-wide)); margin-inline: auto; padding-block: clamp(2rem, 5vw, 4rem); }
.ecovance-news-section > h2 { max-width: 78rem; margin-inline: auto; }
.ecovance-news-listing__grid {
  display: grid;
  grid-template-columns: repeat(var(--ecovance-news-columns, 3), minmax(0, 20.875rem));
  justify-content: center;
  gap: 2rem 3.5625rem;
  width: min(100%, 78rem);
  margin: 2rem auto 0;
  padding: 0;
  list-style: none;
}
.ecovance-news-listing__item { min-width: 0; }
.ecovance-news-listing .ecovance-news-card { width: 100%; margin: 0; }
.ecovance-news-card__terms { position: absolute; z-index: 1; top: .625rem; right: .8125rem; left: .8125rem; display: flex; flex-wrap: wrap; gap: .375rem; margin: 0; padding: 0; list-style: none; }
.ecovance-news-card__terms > li { margin: 0; }
.ecovance-news-card__term { display: inline-flex; min-height: 1.4375rem; box-sizing: border-box; align-items: center; margin: 0; padding: 0 .6875rem; border: .125rem solid transparent; border-radius: 1.25rem; background: var(--ecovance-green-pale); color: var(--ecovance-blue-dark); font: 700 .625rem/1 "Atkinson Hyperlegible", Arial, sans-serif; text-decoration: none; }
.ecovance-news-card__term.is-active {
  border-color: var(--ecovance-blue-dark);
  box-shadow:
    0 0 0 .125rem #fff,
    0 0 0 .25rem var(--ecovance-blue-dark);
}
.ecovance-news-card__media > .ecovance-news-card__term { position: absolute; z-index: 1; top: .625rem; left: .8125rem; }
.ecovance-news-listing__empty { max-width: 78rem; margin: 2rem auto; }
.ecovance-news-card .ecovance-mini-link {
  display: flex;
  width: max-content;
  min-height: 1.4375rem;
  align-items: center;
  justify-content: flex-start;
  gap: .3125rem;
  margin-top: auto;
  padding: 0 .8125rem 0 1.0625rem;
  border: 0;
  background: var(--ecovance-blue-dark);
  color: #fff;
  font-size: .75rem;
  font-weight: 700;
  text-decoration: none;
}
.ecovance-news-card .ecovance-mini-link a { color: inherit; text-decoration: none; }
.has-ecovance-news-interaction .ecovance-news-card:hover .ecovance-mini-link,
.has-ecovance-news-interaction .ecovance-news-card:focus-within .ecovance-mini-link,
.ecovance-news-card.has-ecovance-news-interaction:hover .ecovance-mini-link,
.ecovance-news-card.has-ecovance-news-interaction:focus-within .ecovance-mini-link { width: calc(100% + 1rem); justify-content: space-between; }

.ecovance-partner-card {
  position: relative;
  box-sizing: border-box;
  width: min(100%, 18.875rem);
  height: 23.4375rem;
  min-height: 22.4375rem;
  overflow: hidden;
  border: 2px solid transparent;
  border-radius: 1.25rem;
  background: var(--ecovance-green-pale);
  box-shadow: 0 .25rem .25rem rgb(22 58 87 / 22%);
}
.ecovance-partner-card__content { height: 17.8125rem; min-height: 17.8125rem; box-sizing: border-box; padding: 1.25rem 1.5rem 1rem; }
.ecovance-partner-card__content > * { margin-block-end: 0; }
.ecovance-partner-card__content > * + * { margin-block-start: 1rem; }
.ecovance-partner-card-block { width: fit-content; max-width: 100%; }
.ecovance-partner-card__meta { display: flex; align-items: center; justify-content: space-between; gap: .5rem; }
.ecovance-partner-card__meta p { margin: 0; font-size: .9375rem; }
.ecovance-partner-card__country { padding: .1rem .65rem; border: 1px solid var(--ecovance-blue-dark); border-radius: 2rem; font-size: .75rem !important; }
.ecovance-partner-card :is(h2, h3, h4, h5, h6) { margin-bottom: 0; font-size: 1.5625rem; line-height: .88185; }
.ecovance-partner-card__content > p { font-size: .9375rem; line-height: 1.08; }
.ecovance-partner-card__footer { display: flex; min-height: 4.375rem; box-sizing: border-box; align-items: center; justify-content: space-between; gap: .75rem; padding: .625rem 1.25rem; background: #fff; }
.ecovance-partner-card > .ecovance-partner-card__footer { margin-block-start: 0; }
.ecovance-partner-card__logo { width: 6.25rem; height: 3rem; margin: 0; }
.ecovance-partner-card__logo img { width: 100%; height: 100%; object-fit: contain; object-position: left center; }
.ecovance-partner-editor-preview__logo {
	display: grid;
	place-items: center;
	border: 1px dashed currentColor;
	border-radius: .25rem;
	color: var(--ecovance-blue-dark);
	font: 700 .75rem/1 "Atkinson Hyperlegible", Arial, sans-serif;
}
.ecovance-partner-card .ecovance-mini-link { position: static; display: inline-flex; width: 7.0625rem; min-height: 2.375rem; box-sizing: border-box; align-items: center; justify-content: center; padding: .5rem 1rem; border: 0; border-radius: 1.25rem; background: var(--ecovance-blue-dark); color: #fff; font-size: 1rem; text-decoration: none; transition: width var(--ecovance-motion-fast) ease-in-out, color var(--ecovance-motion-fast) ease-in-out, background-color var(--ecovance-motion-fast) ease-in-out; }
.ecovance-partner-card .ecovance-mini-link::after { content: none; }
.ecovance-partner-card .ecovance-mini-link::before { content: ""; position: absolute; z-index: 1; inset: 0; border-radius: 1.25rem; }
.ecovance-partner-card:has(.ecovance-mini-link[href]) { cursor: pointer; }
.ecovance-partner-card .ecovance-mini-link:is(:hover, :focus-visible, :active) { transform: none; }
.ecovance-partner-card:hover,
.ecovance-partner-card:focus-within { border-color: transparent; box-shadow: .1875rem .25rem 0 var(--ecovance-blue-dark); }
.ecovance-partner-card:hover .ecovance-mini-link,
.ecovance-partner-card:focus-within .ecovance-mini-link { width: 8.5rem; }
.ecovance-partner-card .ecovance-mini-link:focus-visible { outline: 3px solid var(--ecovance-green-dark); outline-offset: 3px; }

.ecovance-featured-list {
  display: grid;
  width: 100%;
  gap: clamp(2rem, 5vw, 5rem);
  margin: 0;
  padding: 0;
  list-style: none;
}
.ecovance-featured-list > .ecovance-featured {
  max-width: none;
  margin-block: 0 !important;
}

.ecovance-featured {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(16rem, 25.8125rem);
  gap: clamp(1rem, 1.75vw, 1.5625rem);
  align-items: center;
  width: 100%;
  min-height: 25.9375rem;
  overflow: visible;
  background: transparent;
  color: #fff;
}
.ecovance-featured__content {
  display: flex;
  min-width: 0;
  min-height: 23.4375rem;
  flex-direction: column;
  padding: 3.25rem clamp(2rem, 4.2vw, 3.75rem) 1.5rem;
  border-radius: 0 1.25rem 1.25rem 0;
  background: var(--ecovance-blue-dark);
}
.ecovance-featured :where(h2, p) { color: inherit; }
.ecovance-featured h2 { max-width: 37rem; margin-block: 0 1rem; font-size: 2.1875rem; }
.ecovance-featured p { max-width: 37.75rem; margin-block: 0; font-size: 1.5625rem; line-height: 1.25; }
.ecovance-featured__content > .wp-block-buttons { width: 100%; margin-block: auto 0; }
.ecovance-featured__image { width: 100%; height: 25.9375rem; margin: 0; }
.ecovance-featured__image img { width: 100%; height: 100%; border-radius: 1.25rem 0 0 1.25rem; object-fit: cover; }
.ecovance-featured .is-style-outline .wp-block-button__link { border-color: var(--ecovance-blue-dark); background: var(--ecovance-blue-pale); color: var(--ecovance-blue-dark); }
.ecovance-featured.is-style-ecovance-featured-image-left { grid-template-columns: minmax(16rem, 25.8125rem) minmax(0, 1fr); }
.ecovance-featured.is-style-ecovance-featured-image-left .ecovance-featured__content { grid-column: 2; grid-row: 1; border-radius: 1.25rem 0 0 1.25rem; }
.ecovance-featured.is-style-ecovance-featured-image-left .ecovance-featured__image { grid-column: 1; grid-row: 1; }
.ecovance-featured.is-style-ecovance-featured-image-left .ecovance-featured__image img { border-radius: 0 1.25rem 1.25rem 0; }

.ecovance-alert {
  display: flex;
  width: 100%;
  max-width: 78rem;
  min-height: 4rem;
  box-sizing: border-box;
  align-items: center;
  gap: 1rem;
  padding: .75rem 1.25rem;
  border: 0;
  border-left: .375rem solid var(--ecovance-blue-dark);
	border-radius: .5rem;
  background: #d9e3f2;
  color: var(--ecovance-blue-dark);
  font: 700 .9375rem/1.2 "Atkinson Hyperlegible", Arial, sans-serif;
  margin-inline: auto;
}
.ecovance-alert::before { content: "i"; display: grid; width: 1.75rem; height: 1.75rem; flex: 0 0 auto; place-items: center; border: 2px solid currentColor; border-radius: 50%; font-weight: 700; }
.ecovance-alert--success { border-color: #3a7a33; background: #e7f2e0; color: var(--ecovance-blue-dark); }
.ecovance-alert--success::before { content: "✓"; }
.ecovance-alert--error { border-color: #bf2626; background: #fae5e5; color: var(--ecovance-blue-dark); }
.ecovance-alert--error::before { content: "!"; }
.ecovance-alert--warning { border-color: #ee7327; background: #ffe9cf; color: var(--ecovance-blue-dark); }
.ecovance-alert--warning::before { content: "!"; }
.ecovance-alert > span { flex: 1 1 auto; }
.ecovance-alert [data-ecovance-dismiss] {
  display: grid;
  width: 1.125rem;
  height: 1.125rem;
  flex: 0 0 1.125rem;
  place-items: center;
  padding: 0;
  border: 1px solid currentColor;
  border-radius: 50%;
  background: transparent;
  color: inherit;
  font: 700 1rem/1 Arial, sans-serif;
  cursor: pointer;
}

.ecovance-breadcrumbs,
.ecovance-article-meta {
  display: flex;
  min-height: 3.75rem;
  box-sizing: border-box;
  align-items: center;
  gap: .75rem;
  padding: .75rem max(1rem, calc((100vw - 78rem) / 2));
  color: var(--ecovance-blue-dark);
  font-size: .9375rem;
}
.ecovance-breadcrumbs { width: 100vw; max-width: none; min-width: 0; margin-right: calc(50% - 50vw); margin-left: calc(50% - 50vw); }
body .is-layout-constrained > .ecovance-breadcrumbs { margin-right: calc(50% - 50vw) !important; margin-left: calc(50% - 50vw) !important; }
.ecovance-breadcrumbs ol { display: flex; min-width: 0; flex-wrap: nowrap; gap: .5rem; margin: 0; padding: 0; list-style: none; }
.ecovance-breadcrumbs li { flex: 0 0 auto; white-space: nowrap; }
.ecovance-breadcrumbs__current { min-width: 0; max-width: min(42rem, 50vw); overflow: hidden; text-overflow: ellipsis; }
.ecovance-breadcrumbs li + li::before { content: "/"; margin-right: .5rem; }
.ecovance-article-meta { border-block: 1px solid var(--ecovance-blue-pale); }

.ecovance-external-cta,
.ecovance-contextual-cta {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 2rem;
  align-items: center;
  padding: 3rem clamp(1.5rem, 7vw, 6rem);
  border-radius: 1.25rem;
  background: var(--ecovance-green-pale);
}
.ecovance-external-cta { min-height: 17.5rem; }
.ecovance-external-cta h2, .ecovance-contextual-cta h2 { font-size: 2.1875rem; }

.ecovance-partner-band {
  --ecovance-partner-canvas-offset: max(0px, calc((100vw - 1440px) / 2));
  position: relative;
  width: 100vw;
  max-width: none;
  min-height: 438px;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  overflow: hidden;
  background: #fff;
}

.ecovance-partner-band__surface {
  position: absolute;
  top: 92px;
  left: 0;
  width: 100%;
  height: 346px;
  min-height: 346px;
  margin: 0;
  overflow: hidden;
  border-radius: 150px 150px 0 0;
}

.ecovance-partner-band__surface > * { margin: 0; }

.ecovance-partner-band__squiggle,
.ecovance-partner-band__title,
.ecovance-partner-band__logos,
.ecovance-partner-band__logo,
.ecovance-partner-band__cta,
.ecovance-partner-band__cta-arrow {
  position: absolute;
  z-index: 1;
}

.ecovance-partner-band__squiggle {
  top: 90px;
  left: calc(var(--ecovance-partner-canvas-offset) + 86.734px);
  width: 34.838px;
  height: 30.2px;
}

.ecovance-partner-band__squiggle img,
.ecovance-partner-band__cta-arrow img,
.ecovance-partner-band__logo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.ecovance-partner-band__title {
  top: 93px;
  left: calc(var(--ecovance-partner-canvas-offset) + 124px);
  width: 699px;
  color: var(--ecovance-blue-dark);
  font-family: "Atkinson Hyperlegible", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: .78;
}

.ecovance-partner-band__logos { inset: 0; margin: 0; padding: 0; list-style: none; }
.ecovance-partner-band__logo-item { margin: 0; padding: 0; list-style: none; }
.ecovance-partner-band__logo { margin: 0; }
.ecovance-partner-band__logo--koine { top: 167.079px; left: calc(var(--ecovance-partner-canvas-offset) + 78px); width: 95.195px; height: 62.922px; }
.ecovance-partner-band__logo--sutargi { top: 176.716px; left: calc(var(--ecovance-partner-canvas-offset) + 204.41px); width: 130.103px; height: 44.215px; }
.ecovance-partner-band__logo--estia { top: 180.684px; left: calc(var(--ecovance-partner-canvas-offset) + 365.967px); width: 146.818px; height: 35.352px; }
.ecovance-partner-band__logo--mik { top: 73.547px; left: calc(var(--ecovance-partner-canvas-offset) + 543.962px); width: 250.554px; height: 250.554px; }
.ecovance-partner-band__logo--recup { top: 167.079px; left: calc(var(--ecovance-partner-canvas-offset) + 810.387px); width: 79.928px; height: 72.559px; }
.ecovance-partner-band__logo--crescendo { top: 180.684px; left: calc(var(--ecovance-partner-canvas-offset) + 924.327px); width: 140.009px; height: 35.713px; }
.ecovance-partner-band__logo--lanum { top: 182.41px; left: calc(var(--ecovance-partner-canvas-offset) + 1109.14px); width: 121.86px; height: 32.074px; }

.ecovance-partner-band__cta {
  top: 277px;
  left: calc(var(--ecovance-partner-canvas-offset) + 60px);
  width: 247px;
  height: 38px;
}

.ecovance-partner-band__cta .wp-block-buttons { margin: 0; }
.ecovance-partner-band__button .wp-block-button__link {
  display: flex;
  width: 247px;
  min-height: 38px;
  box-sizing: border-box;
  align-items: center;
  padding: 7px 52px 7px 18px;
  border: 1px solid var(--ecovance-blue-dark);
  border-radius: 20px;
  background: var(--ecovance-blue-dark);
  color: #fff;
  font-family: "Atkinson Hyperlegible", Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  text-decoration: none;
}

.ecovance-partner-band__button .wp-block-button__link:hover { background: var(--ecovance-blue); }
.ecovance-partner-band__button .wp-block-button__link:focus-visible { outline: 3px solid var(--ecovance-green-dark); outline-offset: 3px; }
.ecovance-partner-band__cta-arrow { top: 10px; right: 23.5px; width: 21.5px; height: 18px; margin: 0; pointer-events: none; }

.ecovance-form-grid {
  width: 100%;
  max-width: 60rem;
  box-sizing: border-box;
  margin-inline: auto;
  padding: 35px 64px 56px 57px;
  border-radius: 15px;
  overflow: hidden;
  background-color: #cad0d8;
  background-image: url("../images/contact-form-pattern.svg");
  background-repeat: no-repeat;
  background-position: 574px 912px;
  background-size: 795px 780px;
  color: var(--ecovance-blue-dark);
  font-family: "Atkinson Hyperlegible", Arial, sans-serif;
}

.ecovance-form-grid > .wpcf7 { width: 100%; margin: 0; }

form.ecovance-form-grid,
.ecovance-form-grid .wpcf7-form {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 50px;
  row-gap: 30px;
  margin: 0;
}

.ecovance-form-grid :where(#ecovance-required-note, .ecovance-form-note, .ecovance-required-note) {
  width: max-content;
  max-width: 100%;
  grid-column: 1 / -1;
  margin: 0 0 -8px;
  color: var(--ecovance-blue);
  font-size: 18px;
  font-weight: 400;
  line-height: 22px;
}

.ecovance-form-field--wide { grid-column: 1 / -1; }
.ecovance-form-field { min-width: 0; margin: 0; padding: 0; border: 0; }
.ecovance-form-field > p {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0;
}
.ecovance-form-field > p > br { display: none; }
.ecovance-form-field > .wpcf7-form-control-wrap,
.ecovance-form-field > p > .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.ecovance-form-field label,
.ecovance-form-field legend {
  display: block;
  margin: 0 0 9px;
  padding: 0;
  color: var(--ecovance-blue-dark);
  font: 700 25px/31px "Atkinson Hyperlegible", Arial, sans-serif;
}

.ecovance-form-field :where(label, legend) > span[aria-hidden="true"] {
  position: relative;
  top: -7px;
  display: inline-block;
  margin-left: 2px;
  color: var(--ecovance-blue);
  font-size: 25px;
  line-height: 0;
}

.ecovance-form-field:not(.ecovance-consent):not(.ecovance-phone-field):has(:where(input, select, textarea):is(:required, [aria-required="true"]))
  :where(label, legend):not(:has(> span[aria-hidden="true"]))::after {
  content: "*";
  position: relative;
  top: -7px;
  display: inline-block;
  margin-left: 2px;
  color: var(--ecovance-blue);
  font-size: 25px;
  line-height: 0;
}

.ecovance-form-field :where(input, select, textarea) {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid var(--ecovance-blue-dark);
  border-radius: 20px;
  background-color: #fff;
  color: var(--ecovance-blue-dark);
  font: 400 18px/22px "Atkinson Hyperlegible", Arial, sans-serif;
}

.ecovance-form-field :where(input, select) {
  height: 58px;
  min-height: 58px;
  padding: 0 16px;
}

.ecovance-form-field select {
  padding-right: 16px;
  appearance: auto;
  background-image: none;
}

.ecovance-form-field textarea {
  height: 281px;
  min-height: 281px;
  padding: 15px 16px;
  resize: vertical;
}

.ecovance-form-field :where(input, select, textarea)::placeholder {
  color: #5a6b7d;
  opacity: 1;
}

.ecovance-form-field :where(input, select, textarea):focus-visible {
  border: 3px solid var(--ecovance-green-dark);
  outline: 0;
}

.ecovance-form-field :where(input, select, textarea)[aria-invalid="true"],
.ecovance-form-field :where(input, select, textarea):user-invalid {
  border: 3px solid #bf2626;
}

.ecovance-form-field :where(input, select, textarea).is-valid {
  border: 2px solid var(--ecovance-green-dark);
  background-color: var(--ecovance-green-pale);
}

.ecovance-form-error,
.ecovance-form-grid .wpcf7-not-valid-tip {
  display: block;
  margin-top: 6px;
  color: #8b1c1c;
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
}

.ecovance-form-focus-hint {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.ecovance-form-focus-hint.is-visible {
  position: relative;
  display: flex;
  width: fit-content;
  max-width: 100%;
  height: auto;
  box-sizing: border-box;
  align-items: center;
  gap: .75rem;
  margin: .625rem 0 0;
  padding: .75rem 1rem;
  overflow: visible;
  clip: auto;
  clip-path: none;
  border: 1px solid #737373;
  border-radius: .5rem;
  background: #fff;
  box-shadow: 0 .25rem .5rem rgb(0 0 0 / 22%);
  color: #231f20;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.35;
  white-space: normal;
}

.ecovance-form-focus-hint.is-visible::before {
  content: "";
  position: absolute;
  top: -.5rem;
  left: 1.5rem;
  width: .875rem;
  height: .875rem;
  border-top: 1px solid #737373;
  border-left: 1px solid #737373;
  background: #fff;
  transform: rotate(45deg);
}

.ecovance-form-focus-hint__icon {
  position: relative;
  z-index: 1;
  display: grid;
  width: 2rem;
  height: 2rem;
  flex: 0 0 2rem;
  place-items: center;
  border-radius: .2rem;
  background: #d94f00;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
}

.ecovance-form-focus-hint__text { min-width: 0; }
.ecovance-consent > .ecovance-form-focus-hint { grid-column: 1 / -1; }

.ecovance-form-success { margin-top: 6px; color: #276421; font-size: 14px; font-weight: 700; line-height: 18px; }

.ecovance-phone-control {
  display: grid;
  min-height: 58px;
  box-sizing: border-box;
  grid-template-columns: minmax(4.75rem, 5.75rem) minmax(0, 1fr);
  align-items: center;
  border: 1px solid var(--ecovance-blue-dark);
  border-radius: 20px;
  background: #fff;
}

.ecovance-phone-control > p { display: contents; margin: 0; }
.ecovance-phone-control > p > br { display: none; }

.ecovance-phone-prefix,
.ecovance-phone-country-other-wrap,
.ecovance-phone-prefix label,
.ecovance-phone-country-other-wrap label { display: block; min-width: 0; height: 56px; margin: 0; }

.ecovance-phone-prefix select,
.ecovance-phone-country-other {
  width: 100%;
  height: 56px;
  min-height: 56px;
  box-sizing: border-box;
  margin: 0;
  border: 0;
  border-right: 1px solid var(--ecovance-blue-dark);
  border-radius: 20px 0 0 20px;
  background: transparent;
  color: var(--ecovance-blue-dark);
  font: 400 16px/22px "Atkinson Hyperlegible", Arial, sans-serif;
}

.ecovance-phone-prefix select { padding: 0 6px; appearance: auto; font-size: 15px; }
.ecovance-phone-country-other-wrap { display: none; }
.ecovance-phone-control:has(.ecovance-phone-country option[value="other"]:checked) {
  grid-template-columns: minmax(4.5rem, 4.75rem) minmax(3.5rem, 4rem) minmax(0, 1fr);
}
.ecovance-phone-control:has(.ecovance-phone-country option[value="other"]:checked) .ecovance-phone-country-other-wrap:not([hidden]) { display: block; }
.ecovance-phone-country-other { padding: 0 8px; border-radius: 0; }

.ecovance-phone-control > .wpcf7-form-control-wrap,
.ecovance-phone-control > p > .wpcf7-form-control-wrap { min-width: 0; padding: 0; border: 0; }
.ecovance-phone-control .ecovance-phone-number,
.ecovance-phone-control > .wpcf7-form-control-wrap input,
.ecovance-phone-control > p > .wpcf7-form-control-wrap input { height: 56px; min-height: 56px; padding-left: 14px; border: 0; border-radius: 0 20px 20px 0; background: transparent; }
.ecovance-phone-control .ecovance-phone-number:focus-visible { border: 0; outline: 0; }
.ecovance-phone-control :where(.ecovance-phone-country, .ecovance-phone-country-other):focus-visible { border: 0; border-right: 1px solid var(--ecovance-blue-dark); outline: 0; }
.ecovance-phone-control:focus-within { border: 3px solid var(--ecovance-green-dark); }
.ecovance-phone-control:has(input[aria-invalid="true"]),
.ecovance-phone-control:has(input:user-invalid) { border: 3px solid #bf2626; }
.ecovance-phone-control:has(input.is-valid) { border: 2px solid var(--ecovance-green-dark); background-color: var(--ecovance-green-pale); }

.ecovance-consent {
  position: relative;
  top: -8px;
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: start;
  gap: 12px;
  margin: -10px 0 10px 4px;
}

.ecovance-consent > p { grid-column: 1 / -1; margin: 0; }
.ecovance-consent > p > br { display: none; }
.ecovance-consent > .wpcf7-form-control-wrap,
.ecovance-consent > p > .wpcf7-form-control-wrap { display: block; width: 100%; grid-column: 1 / -1; }
.ecovance-consent .wpcf7-form-control,
.ecovance-consent .wpcf7-list-item { display: block; width: 100%; margin: 0; }
.ecovance-consent .wpcf7-list-item label { display: grid; grid-template-columns: 24px minmax(0, 1fr); align-items: start; gap: 12px; }

.ecovance-consent input[type="checkbox"] {
  display: grid;
  width: 24px;
  height: 24px;
  min-height: 24px;
  margin: 0;
  padding: 0;
  place-content: center;
  appearance: none;
  border: .5px solid var(--ecovance-blue-dark);
  border-radius: 4px;
  background: #d9d9d9;
}

.ecovance-consent input[type="checkbox"]::after {
  content: "";
  width: 10px;
  height: 5px;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  transform: translateY(-1px) rotate(-45deg) scale(0);
}

.ecovance-consent input[type="checkbox"]:checked { border-color: var(--ecovance-blue-dark); background: var(--ecovance-blue-dark); }
.ecovance-consent input[type="checkbox"]:checked::after { transform: translateY(-1px) rotate(-45deg) scale(1); }
.ecovance-consent input[type="checkbox"]:focus-visible { border-width: .5px; outline: 3px solid var(--ecovance-green-dark); outline-offset: 3px; }

.ecovance-consent label,
.ecovance-consent .wpcf7-list-item-label {
  margin: 0;
  color: #231f20;
  font: 400 13px/16px "Atkinson Hyperlegible", Arial, sans-serif;
}

.ecovance-consent > label,
.ecovance-consent .wpcf7-list-item-label { margin-top: 4px; }

.ecovance-consent :where(label, .wpcf7-list-item-label) [aria-hidden="true"] {
  position: static;
  margin: 0;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
}

.ecovance-form-actions {
  position: relative;
  top: -8px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.ecovance-form-actions > p { display: flex; width: 100%; justify-content: center; margin: 0; }

.ecovance-form-actions :where(.wpcf7-submit, button) {
  width: 520px;
  max-width: 100%;
  min-width: 0;
  height: 75px;
  min-height: 75px;
  box-sizing: border-box;
  margin: 0;
  padding: 0 32px;
  border: 0;
  border-radius: 50px;
  background: var(--ecovance-blue-dark);
  color: #fff;
  font: 700 25px/31px "Atkinson Hyperlegible", Arial, sans-serif;
  cursor: pointer;
}

.ecovance-form-actions :where(.wpcf7-submit, button):hover { background: var(--ecovance-blue); }
.ecovance-form-actions :where(.wpcf7-submit, button):focus-visible { outline: 3px solid var(--ecovance-green-dark); outline-offset: 3px; }
.ecovance-form-actions .wpcf7-spinner { position: absolute; right: 16px; margin: 0; }

.ecovance-form-grid .wpcf7-response-output {
  grid-column: 1 / -1;
  margin: 0;
  padding: 12px 16px;
  border-radius: 12px;
  background: #fff;
  color: var(--ecovance-blue-dark);
}
.ecovance-form-grid .wpcf7-response-output.ecovance-form-error-summary:focus {
  outline: 3px solid var(--ecovance-green-dark);
  outline-offset: 3px;
}
.ecovance-form-error-summary p { margin: 0; }
.ecovance-form-error-summary ul { margin: .75rem 0 0; padding-left: 1.5rem; }
.ecovance-form-error-summary li + li { margin-top: .35rem; }
.ecovance-form-error-summary a { color: inherit; font-weight: 700; text-decoration: underline; text-decoration-thickness: .1em; text-underline-offset: .15em; }
.ecovance-form-error-summary a:focus-visible { border-radius: .125rem; outline: 3px solid var(--ecovance-green-dark); outline-offset: 2px; }

/* Give the form priority in the contact page row. The partner column keeps the
   width needed by its card while the form uses the remaining laptop space. */
@media (min-width: 85rem) {
  :is(.wp-block-group, .wp-block-columns).is-style-ecovance-stack-mobile:has(.ecovance-form-grid) {
    gap: clamp(1.5rem, 2vw, 3rem);
  }

  :is(.wp-block-group, .wp-block-columns).is-style-ecovance-stack-mobile:has(.ecovance-form-grid) > :not(:has(.ecovance-form-grid)) {
    width: auto !important;
    min-width: 0;
    flex: 0 0 clamp(23.5rem, calc(100vw - 78rem), 50%) !important;
  }

  :is(.wp-block-group, .wp-block-columns).is-style-ecovance-stack-mobile:has(.ecovance-form-grid) > :has(.ecovance-form-grid) {
    width: auto !important;
    min-width: 0;
    flex: 1 1 0 !important;
  }
}

/* Once both columns can no longer remain comfortable, stack them before the
   form controls start to overlap. The existing mobile layout takes over below
   48rem. */
@media (min-width: 48rem) and (max-width: 84.99rem) {
  :is(.wp-block-group, .wp-block-columns).is-style-ecovance-stack-mobile:has(.ecovance-form-grid) {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: clamp(3rem, 6vw, 5rem);
  }

  :is(.wp-block-group, .wp-block-columns).is-style-ecovance-stack-mobile:has(.ecovance-form-grid) > * {
    width: 100% !important;
    max-width: 100% !important;
    flex-basis: auto !important;
    box-sizing: border-box;
  }
}

@media (min-width: 48rem) and (max-width: 64rem) {
  .ecovance-form-grid { padding-inline: clamp(2rem, 7vw, 4rem); }
  form.ecovance-form-grid,
  .ecovance-form-grid .wpcf7-form { grid-template-columns: minmax(0, 1fr); column-gap: 0; }
  .ecovance-form-field--wide { grid-column: auto; }
}

.ecovance-newsletter { display: grid; grid-template-columns: 1fr auto; gap: 2rem; align-items: center; min-height: 12.5rem; padding: 2rem max(1rem, calc((100vw - 78rem) / 2)); background: var(--ecovance-blue-pale); }
.ecovance-social-links { display: flex; width: 100%; max-width: 78rem; min-height: 8.75rem; align-items: center; justify-content: center; gap: 1.5rem; margin-inline: auto; background: var(--ecovance-green-pale); }

.ecovance-button-primary .wp-block-button__link,
.ecovance-button-secondary .wp-block-button__link,
.ecovance-button-external .wp-block-button__link,
.ecovance-button-direct .wp-block-button__link,
.ecovance-button-direct__control { box-sizing: border-box; min-height: 3.625rem; border: 2px solid var(--ecovance-blue-dark); border-radius: .625rem; font-size: 1.25rem; }
.ecovance-button-primary .wp-block-button__link {
  width: 14.6875rem;
  min-width: 14.6875rem;
  min-height: 4rem;
  justify-content: center;
  padding: .6rem .875rem;
  box-shadow: .1875rem .25rem 0 var(--ecovance-blue-dark);
}
.ecovance-button-primary .wp-block-button__link:hover {
  border-width: 1px;
  background: var(--ecovance-blue);
  box-shadow: .0625rem .125rem 0 var(--ecovance-blue-dark);
  transform: translate(.125rem, .125rem);
}
.ecovance-button-primary .wp-block-button__link:focus-visible,
.ecovance-button-secondary .wp-block-button__link:focus-visible,
.ecovance-button-external .wp-block-button__link:focus-visible,
.ecovance-button-direct__control:focus-visible { outline: 3px solid var(--ecovance-green-dark); outline-offset: 3px; }
.ecovance-button-secondary .wp-block-button__link { width: 14.0625rem; min-width: 14.0625rem; justify-content: center; padding: .6rem .5rem; background: transparent; color: var(--ecovance-blue-dark); white-space: nowrap; }
.ecovance-button-secondary .wp-block-button__link:hover {
  background: var(--ecovance-blue-pale);
  box-shadow: .1875rem .1875rem 0 var(--ecovance-blue-dark);
  color: var(--ecovance-blue-dark);
}
.ecovance-button-primary .wp-block-button__link::after { margin-left: .75rem; }
.ecovance-button-secondary .wp-block-button__link::after { margin-left: .25rem; transform: rotate(-45deg); }
.ecovance-button-external .wp-block-button__link::after { margin-left: .75rem; transform: rotate(-90deg); }

.ecovance-tags { display: block; width: min(calc(100% - 3rem), 78rem); max-width: 78rem; margin: 1.5rem auto; }
.ecovance-category-filters { scroll-margin-top: 1.5rem; }
.ecovance-category-filters__mobile-hint { display: none; }
.ecovance-category-filters__arrow { display: none; }
.ecovance-category-filters__track { display: flex; flex-wrap: wrap; gap: .75rem; }
.ecovance-tags a { display: inline-flex; min-height: 2.25rem; box-sizing: border-box; align-items: center; gap: .65rem; padding: .2rem 1rem; border: 1.5px solid var(--ecovance-blue-dark); border-radius: 1.125rem; color: var(--ecovance-blue-dark); font: 700 .875rem/1 "Atkinson Hyperlegible", Arial, sans-serif; text-decoration: none; white-space: nowrap; }
.ecovance-tags a:hover { background: var(--ecovance-blue-dark); color: #fff; }
.ecovance-tags a.is-active,
.ecovance-tags a[aria-current="true"] { background: var(--ecovance-blue-dark); color: #fff; }
.ecovance-tags a:focus-visible { outline: 3px solid var(--ecovance-green-dark); outline-offset: 2px; }

.ecovance-pagination { display: flex; width: min(100%, 30.9375rem); min-height: 3.3125rem; box-sizing: border-box; align-items: center; justify-content: space-between; gap: .35rem; margin: 2rem auto; padding: .45rem 1rem; border-radius: 1.25rem; background: #fff; box-shadow: 0 .25rem .25rem rgb(0 0 0 / 25%); }
.ecovance-pagination > a,
.ecovance-pagination > span:not(.ecovance-pagination__pages),
.ecovance-pagination__pages > a,
.ecovance-pagination__pages > span { display: inline-flex; min-width: 1.5rem; min-height: 1.5rem; align-items: center; justify-content: center; border-radius: 50%; color: var(--ecovance-blue-dark); font: 400 .8125rem/1 "Atkinson Hyperlegible", Arial, sans-serif; text-decoration: none; }
.ecovance-pagination [aria-current="page"] { background: var(--ecovance-blue-dark); color: #fff; font-weight: 700; }
.ecovance-pagination__previous, .ecovance-pagination__next { min-width: 3rem !important; border-radius: 1rem !important; font-size: .9375rem !important; }
.ecovance-pagination__previous, .ecovance-pagination__next { display: inline-flex; align-items: center; gap: .65rem; white-space: nowrap; }
.ecovance-pagination__arrow { display: inline-block; width: .9375rem; height: .5rem; flex: 0 0 auto; background: currentcolor; -webkit-mask: url("../images/partner-band-arrow.svg") center / contain no-repeat; mask: url("../images/partner-band-arrow.svg") center / contain no-repeat; }
.ecovance-pagination__arrow--previous { transform: rotate(180deg); }
.ecovance-pagination .is-disabled { opacity: .45; }
.ecovance-pagination__pages { display: flex; align-items: center; gap: .75rem; }
.ecovance-pagination__compact { display: none !important; align-items: center; gap: .35rem; min-width: 3rem !important; border-radius: 0 !important; }
.ecovance-pagination__compact strong { display: inline-flex; width: 1.5rem; height: 1.5rem; align-items: center; justify-content: center; border-radius: 50%; background: var(--ecovance-blue-dark); color: #fff; }
.ecovance-pagination a:focus-visible { outline: 3px solid var(--ecovance-green-dark); outline-offset: 2px; }
.ecovance-news-pagination .prev,
.ecovance-news-pagination .next { min-width: 3rem; border-radius: 1rem; font-size: .9375rem; }

.ecovance-pole-icons { gap: clamp(1rem, 4vw, 4rem); }
.ecovance-pole-icon { text-align: center; }
.ecovance-pole-icon figure { width: min(100%, 10rem); margin: 0 auto; }
.ecovance-pole-icon img { width: 100%; height: auto; }
.ecovance-pole-icon p { margin-top: .75rem; font: 700 1.125rem/1.2 "Atkinson Hyperlegible", Arial, sans-serif; }

.ecovance-partner-lines { width: 100%; max-width: none; margin: 0; padding: 0; list-style: none; }
.ecovance-partner-line-block { width: min(calc(100% - 3rem), 69.5rem); max-width: 69.5rem; margin-inline: auto; padding: 0; list-style: none; }
.ecovance-partner-line-block + .ecovance-partner-line-block { margin-top: .875rem; }
.ecovance-partner-line {
  position: relative;
  display: grid;
  width: 100%;
  min-height: 7.5625rem;
  box-sizing: border-box;
  grid-template-columns: 13.5rem minmax(0, 1fr) 9.375rem;
  margin: 0;
  overflow: hidden;
  border-radius: .9375rem;
  background: #fff;
  color: var(--ecovance-blue-dark);
  box-shadow: 0 .25rem .25rem rgb(22 58 87 / 12%);
  transition: min-height var(--ecovance-motion-base) var(--ecovance-ease-emphasized), box-shadow var(--ecovance-motion-base) var(--ecovance-ease-standard);
}
.ecovance-partner-line__logo { display: grid; width: 100%; height: 7.5625rem; place-items: center; margin: 0; }
.ecovance-partner-line__logo img { display: block; width: 9.8125rem; height: 6.5rem; object-fit: contain; }
.ecovance-partner-line__logo.ecovance-partner-editor-preview__logo { width: 9.8125rem; height: 6.5rem; place-self: center; }
.ecovance-partner-line__content {
  min-width: 0;
  box-sizing: border-box;
  margin-block: .25rem;
  padding: 1rem 9.4375rem 1rem 1.75rem;
  border-radius: .9375rem;
  background: var(--ecovance-green-pale, #e7f2e0);
}
.ecovance-partner-line__heading-row { display: grid; grid-template-columns: minmax(14rem, 22.5625rem) auto; align-items: center; gap: 0; }
.ecovance-partner-line :is(h2, h3, h4, h5, h6) { margin: 0; font-size: 1.5625rem; line-height: 1.08; }
.ecovance-partner-line__meta { display: flex; align-items: center; gap: 1.0625rem; font: 400 1.0625rem/1.147 "Atkinson Hyperlegible", Arial, sans-serif; }
.ecovance-partner-line__country { padding: .1rem .65rem; border: 1px solid var(--ecovance-blue-dark); border-radius: .9375rem; font-size: .875rem; text-transform: uppercase; }
.ecovance-partner-line__excerpt { width: min(100%, 35.4375rem); margin: .55rem 0 0; font: 400 .9375rem/1.093 Arial, sans-serif; }
.ecovance-partner-line__full {
  width: min(100%, 42.3125rem);
  height: auto;
  margin-top: .55rem;
  overflow: hidden;
  opacity: 1;
  font: 400 .9375rem/1.18 Arial, sans-serif;
  transition: height var(--ecovance-motion-base) var(--ecovance-ease-emphasized), opacity var(--ecovance-motion-base) var(--ecovance-ease-standard);
}
.ecovance-partner-line__full[hidden] { display: none; }
.ecovance-partner-line__full.is-collapsing { opacity: 0; }
.ecovance-partner-line__full > :first-child { margin-top: 0; }
.ecovance-partner-line__full > :last-child { margin-bottom: 0; }
.ecovance-partner-line__toggle { position: absolute; z-index: 2; top: .3125rem; right: 10.0625rem; display: inline-flex; min-height: 2.65625rem; align-items: center; gap: .25rem; padding: 0; border: 0; background: transparent; color: var(--ecovance-blue-dark); font: 700 1.125rem/1 "Atkinson Hyperlegible", Arial, sans-serif; text-decoration: underline; cursor: pointer; }
.ecovance-partner-line__toggle-icon { display: block; width: 1.875rem; height: 1.875rem; flex: 0 0 1.875rem; background: url("../images/partner-disclosure.svg") center / contain no-repeat; transform: rotate(-45deg); }
.ecovance-partner-line__toggle-close { display: none; }
.ecovance-partner-line__toggle:focus-visible { border-radius: .25rem; outline: 3px solid var(--ecovance-green-dark); outline-offset: 3px; }
.ecovance-partner-line__website {
  display: flex;
  width: 100%;
  min-width: 0;
  height: 100%;
  box-sizing: border-box;
  align-self: stretch;
  align-items: flex-start;
  justify-content: center;
  padding: .25rem .3125rem .3125rem .5rem;
  background: #fff;
}
.ecovance-partner-line__website a,
.ecovance-partner-line__website > span {
  display: flex;
  width: 100%;
  height: 7rem;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  border-radius: 1.25rem;
  background: var(--ecovance-blue-dark);
  color: #fff;
  font: 700 1.125rem/1.147 "Atkinson Hyperlegible", Arial, sans-serif;
  text-align: center;
  text-decoration: none;
}
.ecovance-partner-line__website a:focus-visible {
  outline: 3px solid #fff;
  outline-offset: -6px;
  box-shadow: inset 0 0 0 9px var(--ecovance-green-dark);
}
.ecovance-partner-line-block.is-expanded .ecovance-partner-line { min-height: 29.25rem; }
.ecovance-partner-line-block.is-expanded .ecovance-partner-line__content { padding-right: 2.5625rem; padding-bottom: 1.5rem; }
.ecovance-partner-line-block.is-expanded .ecovance-partner-line__excerpt { display: none; }
.ecovance-partner-line-block.is-expanded .ecovance-partner-line__toggle { top: .875rem; }
.ecovance-partner-line-block.is-expanded .ecovance-partner-line__toggle-icon { transform: none; }
.ecovance-partner-line-block.is-expanded .ecovance-partner-line__toggle-more { display: none; }
.ecovance-partner-line-block.is-expanded .ecovance-partner-line__toggle-close { display: inline; }

@media (prefers-reduced-motion: reduce) {
  .ecovance-partner-line,
  .ecovance-partner-line__full { transition: none; }
}
.ecovance-partner-block-placeholder { min-height: 5rem; box-sizing: border-box; padding: 1rem; border: 2px dashed var(--ecovance-blue-pale); }

.single-post .wp-block-ecovance-article-breadcrumbs,
.editor-styles-wrapper .wp-block-ecovance-article-breadcrumbs {
  width: min(calc(100% - 10rem), 80rem);
  max-width: 80rem;
  min-height: 5.9375rem;
  margin: 0 auto;
  padding: 2.5rem 0 1.75rem;
  font-size: .875rem;
}
.single-post .wp-block-ecovance-article-breadcrumbs ol,
.editor-styles-wrapper .wp-block-ecovance-article-breadcrumbs ol { gap: .625rem; }
.single-post .wp-block-ecovance-article-breadcrumbs li + li::before,
.editor-styles-wrapper .wp-block-ecovance-article-breadcrumbs li + li::before {
  content: "›";
  margin-right: .625rem;
  color: var(--ecovance-blue);
  font-size: 1.25rem;
  line-height: 0;
}
.single-post .wp-block-ecovance-article-breadcrumbs a:focus-visible,
.ecovance-article a:focus-visible { border-radius: .125rem; outline: 3px solid var(--ecovance-green-dark); outline-offset: 3px; }

.ecovance-article {
  width: min(calc(100% - 10rem), 80rem);
  max-width: 80rem;
  margin: 0 auto;
  padding: 0 0 5rem;
}
.ecovance-article > * { margin-block-start: 0; }
.ecovance-article__back {
  min-height: 2.9375rem;
  box-sizing: border-box;
  margin: 0 0 .625rem;
  padding: .25rem .375rem .625rem;
  border-bottom: 1px solid var(--ecovance-blue-dark);
  font: 700 .875rem/1.2 "Atkinson Hyperlegible", Arial, sans-serif;
}
.ecovance-article__back a { display: inline-flex; align-items: center; gap: .5rem; color: var(--ecovance-green-dark); text-decoration: none; }
.ecovance-article__back a::before { transform: rotate(135deg); }
.ecovance-article > .wp-block-post-title {
  max-width: 72rem;
  margin: .25rem 0 0;
  font-size: 2.8125rem;
  line-height: .94;
}
.ecovance-article > .ecovance-article-meta {
  display: flex;
  min-height: 2.9375rem;
  align-items: center;
  gap: .625rem;
  margin: 0;
  padding: .75rem .25rem .6875rem;
  border: 0;
}
.ecovance-article-meta > * { margin: 0; }
.ecovance-article-meta :is(.wp-block-post-terms, .wp-block-post-date) {
  display: inline-flex;
  min-height: 1.4375rem;
  box-sizing: border-box;
  align-items: center;
  padding: .2rem .8125rem;
  border-radius: 1.25rem;
  color: var(--ecovance-blue-dark);
  font: 700 .625rem/1 "Atkinson Hyperlegible", Arial, sans-serif;
}
.ecovance-article-meta .wp-block-post-terms { background: var(--ecovance-green-pale); }
.ecovance-article-meta .ecovance-article-meta__tags { background: var(--ecovance-blue-pale); }
.ecovance-article-meta .wp-block-post-date { border: 1px solid var(--ecovance-blue-dark); background: #fff; }
.ecovance-article-meta a { color: inherit; text-decoration: none; }
.ecovance-article-meta .wp-block-post-terms.ecovance-article-meta__category {
  min-height: 0;
  padding: 0;
  background: transparent;
}
.ecovance-article-meta .ecovance-article-meta__category a {
  display: inline-flex;
  min-height: 2rem;
  box-sizing: border-box;
  align-items: center;
  padding: .35rem .8125rem;
  border-radius: 1.25rem;
  background: var(--ecovance-green-pale);
  color: var(--ecovance-blue-dark);
  cursor: pointer;
  text-decoration: underline;
  text-decoration-thickness: .08em;
  text-underline-offset: .14em;
}
.ecovance-article-meta .ecovance-article-meta__category a:hover {
  background: var(--ecovance-blue-dark);
  color: #fff;
}
.ecovance-article-meta .ecovance-article-meta__category a:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 2px;
  box-shadow: 0 0 0 7px var(--ecovance-green-dark);
}
.ecovance-article-meta .wp-block-post-terms__separator { margin-inline: .25rem; }

.ecovance-article__layout {
  display: grid;
  grid-template-areas: "main toc";
  grid-template-columns: minmax(0, 43.375rem) minmax(0, 21.6875rem);
  gap: 5.25rem;
  align-items: start;
  margin: 0;
}
.ecovance-article__main { grid-area: main; min-width: 0; margin: 0; }
.ecovance-article__main > * { margin-block-start: 0; }
.ecovance-article__lead {
  margin: 0 0 1.5rem;
  font: 400 1.5625rem/1.16 "Atkinson Hyperlegible", Arial, sans-serif;
}
.ecovance-article__main > .wp-block-post-featured-image { margin: 0 0 2rem; }
.ecovance-article__main > .wp-block-post-featured-image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 694 / 259;
  border-radius: .9375rem;
  object-fit: cover;
}
.ecovance-article .wp-block-post-content { margin: 0; font: 400 1.125rem/1.22 Arial, sans-serif; }
.ecovance-article .wp-block-post-content > :first-child { margin-top: 0; }
.ecovance-article .wp-block-post-content :where(h2,h3) { scroll-margin-top: 2rem; margin-top: 2.25em; }
.ecovance-article .wp-block-post-content p { margin-block: 0 1.25rem; }

.ecovance-article-video-link {
  position: relative;
  width: min(100%, 25.25rem);
  min-height: 5.1875rem;
  box-sizing: border-box;
  align-items: stretch;
  margin: 2rem 0 2rem .3125rem;
  padding-left: 1.9375rem;
}
.ecovance-article-video-link::before {
  content: "▶";
  position: absolute;
  z-index: 1;
  top: .625rem;
  left: 0;
  display: grid;
  width: 3.875rem;
  height: 3.875rem;
  place-items: center;
  border: 1px solid var(--ecovance-blue-dark);
  border-radius: 50%;
  background: var(--ecovance-blue-dark);
  color: #fff;
  font-size: 1.125rem;
  line-height: 1;
  pointer-events: none;
}
.ecovance-article-video-link .wp-block-button { width: 100%; }
.ecovance-article-video-link .wp-block-button__link {
  display: flex;
  width: 100%;
  min-height: 5.1875rem;
  box-sizing: border-box;
  align-items: center;
  padding: 1rem 1.5rem 1rem 3.5rem;
  border: 0;
  border-radius: .9375rem;
  background: var(--ecovance-blue-pale);
  color: var(--ecovance-blue-dark);
  font: 400 1.125rem/1.15 "Atkinson Hyperlegible", Arial, sans-serif;
  text-align: left;
  text-decoration: none;
}
.ecovance-article-video-link .wp-block-button__link:hover { background: #cbd9ed; }
.ecovance-article-video-link .wp-block-button__link:focus-visible { outline: 3px solid var(--ecovance-green-dark); outline-offset: 3px; }

.ecovance-article-toc {
  grid-area: toc;
  min-height: 9.4375rem;
  box-sizing: border-box;
  margin: 0;
  padding: 1.25rem 1.875rem 1.125rem;
  border-left: 1px solid var(--ecovance-blue-dark);
  border-radius: 0 0 .9375rem 0;
  background: #f5f5f5;
  color: var(--ecovance-blue-dark);
  position: sticky;
  top: 1.5rem;
}
.ecovance-article-toc__title { margin: 0 0 .75rem; font: 400 1.25rem/1.1 "Atkinson Hyperlegible", Arial, sans-serif; }
.ecovance-article-toc ol { margin: 0; padding: 0; list-style: none; }
.ecovance-article-toc li { margin: .25rem 0; font: 400 1.125rem/1.15 "Atkinson Hyperlegible", Arial, sans-serif; }
.ecovance-article-toc__level-3 { padding-left: 1rem; }
.ecovance-article-toc a { color: inherit; text-decoration-thickness: .06em; text-underline-offset: .12em; }
.ecovance-article-toc a[aria-current="location"] { font-weight: 700; }
.ecovance-article-toc a:focus-visible { border-radius: .125rem; outline: 3px solid var(--ecovance-green-dark); outline-offset: 3px; }

.ecovance-legal-page {
  width: min(calc(100% - 10rem), 80rem);
  max-width: 80rem;
  margin: 0 auto;
  padding: 2.5rem 0 5rem;
}
.ecovance-legal-page > .wp-block-post-title { margin-top: 0; }
.ecovance-legal-page__layout {
  display: grid;
  grid-template-areas: "main toc";
  grid-template-columns: minmax(0, 43.375rem) minmax(0, 21.6875rem);
  align-items: start;
  gap: 5.25rem;
}
.ecovance-legal-page__main { grid-area: main; min-width: 0; }
.ecovance-legal-page__layout > .wp-block-ecovance-article-toc { grid-area: toc; }

.ecovance-sitemap-page__main { max-width: none; }
.ecovance-html-sitemap { margin-top: 2.5rem; }
.ecovance-html-sitemap__toc {
  padding: 1.125rem 1.5rem;
  border-left: .375rem solid var(--ecovance-green-dark);
  background: #f5f5f5;
}
.ecovance-html-sitemap__toc-title { font-size: 1.25rem; }
.ecovance-html-sitemap__toc ul {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem 1.75rem;
  margin: .75rem 0 0;
  padding: 0;
  list-style: none;
}
.ecovance-html-sitemap__toc li { margin: 0; }
.ecovance-html-sitemap__toc a {
  color: var(--ecovance-blue-dark);
  font-weight: 700;
  text-underline-offset: .14em;
}
.ecovance-html-sitemap__sections {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  gap: 2.5rem 4rem;
  margin-top: 2.5rem;
}
.ecovance-html-sitemap section,
.ecovance-html-sitemap h2 { margin-block: 0; }
.ecovance-html-sitemap__sections h2 {
  scroll-margin-top: 2rem;
}
.ecovance-html-sitemap__sections h2:focus {
  border-radius: .125rem;
  outline: 3px solid var(--ecovance-green-dark);
  outline-offset: 4px;
}
.ecovance-html-sitemap__list {
  margin: 1rem 0 0;
  padding-left: 1.25rem;
}
.ecovance-html-sitemap__list li { margin-block: .5rem; }
.ecovance-html-sitemap__list ul {
  margin: .5rem 0 0;
  padding-left: 1.25rem;
}
.ecovance-html-sitemap__list a {
  color: var(--ecovance-blue-dark);
  overflow-wrap: anywhere;
  text-decoration: underline;
  text-underline-offset: .14em;
}
.ecovance-html-sitemap__all-news { font-weight: 700; }

.ecovance-article-related { width: min(100%, 69.75rem); margin: 4.75rem 0 0 .375rem; }
.ecovance-article-related__header { display: flex; min-height: 2.375rem; align-items: center; justify-content: space-between; gap: 1.5rem; margin: 0; }
.ecovance-article-related__header h2 { margin: 0; font-size: 1.875rem; line-height: .9; }
.ecovance-article-related__header .wp-block-buttons,
.ecovance-article-related__header .wp-block-button { max-width: 100%; margin: 0; }
.ecovance-article-related__header .ecovance-button-primary .wp-block-button__link {
  width: auto;
  min-width: 12.875rem;
  max-width: 100%;
  min-height: 2.375rem;
  height: auto;
  box-sizing: border-box;
  justify-content: center;
  padding: .5rem .625rem;
  font-size: .875rem;
  font-weight: 400;
  line-height: 1.25;
  text-align: center;
  white-space: normal;
  overflow-wrap: break-word;
}
.ecovance-article-related .ecovance-news-listing__grid { margin-top: 2rem; }
.ecovance-post-navigation { display: flex; justify-content: space-between; gap: 1rem; margin-top: 4rem; padding-top: 1.5rem; border-top: 1px solid var(--ecovance-blue-pale); }

.ecovance-skip-link {
  position: fixed;
  top: .5rem;
  left: .5rem;
  z-index: 1000;
  padding: .7rem 1rem;
  background: #fff;
  color: var(--ecovance-blue-dark);
  transform: translateY(-200%);
}
.ecovance-skip-link:focus { transform: translateY(0); }
.skip-link.screen-reader-text:focus {
  position: fixed;
  top: .5rem;
  left: .5rem;
  z-index: 1000;
  width: 18.75rem;
  height: auto;
  min-height: 2.75rem;
  box-sizing: border-box;
  margin: 0;
  padding: .7rem 1rem;
  clip: auto !important;
  clip-path: none !important;
  border-radius: .25rem;
  background: #fff;
  color: var(--ecovance-blue-dark);
  font-weight: 700;
}

/* Internal component catalogue. This page is intentionally absent from menus. */
.ecovance-ui-kit-page { padding-bottom: 5rem; background: #f8fafb; }
.ecovance-ui-kit-introduction { width: min(calc(100% - 9.375rem), var(--ecovance-wide)); padding: clamp(3rem, 6vw, 5rem) 0 2rem; }
.ecovance-ui-kit-introduction > * { max-width: 52rem; }
.ecovance-ui-kit-group {
  width: min(calc(100% - 9.375rem), var(--ecovance-wide));
  margin: 2rem auto;
  padding: clamp(1.5rem, 4vw, 3rem);
  border: 1px solid #d9e3f2;
  border-radius: 1.25rem;
  background: #fff;
}
.ecovance-ui-kit-group > .alignfull {
  width: 100vw;
  max-width: none;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
}
.ecovance-ui-kit-group > h2:first-child { margin-top: 0; padding-bottom: .75rem; border-bottom: 2px solid var(--ecovance-blue-pale); }
.ecovance-ui-kit-group .ecovance-ui-section { width: 100%; margin: 2.5rem 0; }

/* 30 · Bloc philosophie. Les quatre images restent de vrais blocs remplaçables. */
.ecovance-philosophy { position: relative; min-height: 63.5rem; box-sizing: border-box; overflow: hidden; }
.ecovance-philosophy__surface,
.ecovance-philosophy__arrow { position: absolute; z-index: 0; margin: 0; pointer-events: none; }
.ecovance-philosophy__surface { inset: 0; width: 100%; height: 100%; }
.ecovance-philosophy.has-ecovance-background-image > .ecovance-philosophy__surface { z-index: -2; }
.ecovance-philosophy__surface img { display: block; width: 100%; height: 100%; object-fit: fill; }
.ecovance-philosophy__surface--mobile,
.ecovance-philosophy__arrow--mobile { display: none; }
.ecovance-philosophy__arrow--desktop { top: 15rem; right: 0; width: 12.8125rem; }
.ecovance-philosophy__arrow img { display: block; width: 100%; height: auto; }
.ecovance-philosophy__content { position: relative; z-index: 1; display: grid; width: min(calc(100% - 9.375rem), 85.8125rem); max-width: 85.8125rem; box-sizing: border-box; grid-template-columns: minmax(20rem, .9fr) minmax(30rem, 1.35fr); column-gap: clamp(4rem, 8vw, 8rem); row-gap: 0; margin: 0 auto; padding: 6.25rem 0 5rem; }

/* Dans Gutenberg, le fond ajouté est un pseudo-élément. On conserve les calques
   décoratifs absolus de la composition sans les faire repasser dans le flux. */
.editor-styles-wrapper .block-editor-block-list__block.ecovance-philosophy.has-ecovance-background-image::before { z-index: 1; }
.editor-styles-wrapper .block-editor-block-list__block.ecovance-philosophy.has-ecovance-background-image > .ecovance-philosophy__surface { z-index: 0; }
.editor-styles-wrapper .block-editor-block-list__block.ecovance-philosophy.has-ecovance-background-image > :is(.ecovance-philosophy__arrow, .ecovance-philosophy__content) { z-index: 2; }
.ecovance-philosophy__content > :is(.ecovance-philosophy__header, .is-style-ecovance-grid-span-all, .wp-block-group.is-layout-flex:first-child) { grid-column: 1 / -1; }
.ecovance-philosophy__header { display: flex; flex-wrap: nowrap; align-items: center; justify-content: center; gap: 1.25rem; }
.ecovance-philosophy__header > :where(.ecovance-section-label, .ecovance-philosophy__title) { margin: 0; }
.ecovance-philosophy__header > .ecovance-philosophy__title { width: auto; max-width: none; }
.ecovance-philosophy__content:has(> :is(.ecovance-philosophy__header, .is-style-ecovance-grid-span-all, .wp-block-group.is-layout-flex:first-child)) { row-gap: 6rem; }
.ecovance-philosophy__content:has(> :is(.ecovance-philosophy__header, .is-style-ecovance-grid-span-all, .wp-block-group.is-layout-flex:first-child)) > .ecovance-philosophy__accordion { margin-top: 1rem; }
.ecovance-philosophy__copy { max-width: 31rem; }
.ecovance-philosophy__title { width: 40.375rem; max-width: none; margin: .5rem 0 3.5rem; color: var(--ecovance-blue-dark); font-size: 1.875rem; line-height: normal; }
.ecovance-philosophy__copy > p:not(.ecovance-section-label) { font-size: 1.125rem; line-height: 1.18; }
.ecovance-philosophy__copy > p + p { margin-top: 1.4rem; }
.ecovance-philosophy__accordion { align-self: start; margin-top: 6.75rem; }
.ecovance-philosophy__accordion details { margin: 0; border-bottom: 1px solid rgb(22 58 87 / 42%); color: var(--ecovance-green-dark); }
.ecovance-philosophy__accordion summary { position: relative; display: flex; min-height: 4.5625rem; box-sizing: border-box; align-items: center; padding: .85rem .5rem .85rem 3rem; cursor: pointer; color: inherit; font-family: "Atkinson Hyperlegible", Arial, sans-serif; font-size: 1.875rem; font-weight: 700; line-height: 1.05; list-style: none; }
.ecovance-philosophy__accordion summary::-webkit-details-marker { display: none; }
.ecovance-philosophy__accordion summary::before {
  content: "";
  position: absolute;
  left: .375rem;
  display: block;
  width: 1.6875rem;
  height: 1.6875rem;
  box-sizing: border-box;
  border: 1px solid currentColor;
  border-radius: 50%;
  background-color: transparent;
  background-image:
    linear-gradient(currentColor, currentColor),
    linear-gradient(currentColor, currentColor);
  background-position: center;
  background-repeat: no-repeat;
  background-size: .75rem .09375rem, .09375rem .75rem;
}
.ecovance-philosophy__accordion details[open] { color: var(--ecovance-blue-dark); }
.ecovance-philosophy__accordion details[open] summary::before {
  background-color: var(--ecovance-blue-dark);
  background-image: linear-gradient(currentColor, currentColor);
  background-size: .75rem .09375rem;
  color: #fff;
}
.ecovance-philosophy__accordion details > p { margin: -.25rem 0 1.2rem; padding: 0 .5rem 0 3rem; font-size: 1.25rem; line-height: 1.18; }

@media (min-width: 90rem) {
  .ecovance-philosophy__header > .ecovance-philosophy__title { white-space: nowrap; }
}

/* 31 · Bloc cibles. Le viewport rogne l’excédent sans créer de scroll horizontal. */
.ecovance-targets { --ecovance-target-closed-width: clamp(12rem, calc((100vw - 11rem) / 6), 18rem); box-sizing: border-box; overflow: hidden; overflow: clip; padding: 5rem 0 6rem; }
.ecovance-targets__inner { width: calc(100% - 6rem); max-width: none; margin: 0 auto; }
.ecovance-targets__introduction { width: min(100%, 34.4375rem); margin: -2.2rem 0 0 auto; font-size: 1.125rem; line-height: 1.18; }
.ecovance-targets__viewport { width: calc(100% + 6rem); max-width: none; box-sizing: border-box; margin-top: 3.375rem; margin-left: -3rem; padding-left: 3rem; overflow: hidden; overflow: clip; }
.ecovance-targets__track { display: flex; width: max-content; max-width: none; gap: 1rem; counter-reset: ecovance-target; transition: transform var(--ecovance-motion-base) var(--ecovance-ease-standard); }
.ecovance-targets__track.has-ecovance-target-open-left { transform: translateX(calc(var(--ecovance-target-closed-width) - 25.375rem)); }
.ecovance-target-card { flex: 0 0 var(--ecovance-target-closed-width); width: var(--ecovance-target-closed-width); height: 24.5625rem; box-sizing: border-box; margin: 0; overflow: hidden; border: 1px solid var(--ecovance-blue-dark); border-radius: .9375rem; background: var(--ecovance-blue-pale); color: var(--ecovance-blue-dark); counter-increment: ecovance-target; transition: flex-basis var(--ecovance-motion-base) var(--ecovance-ease-standard), width var(--ecovance-motion-base) var(--ecovance-ease-standard), background-color var(--ecovance-motion-base) var(--ecovance-ease-standard), color var(--ecovance-motion-base) var(--ecovance-ease-standard), box-shadow var(--ecovance-motion-base) var(--ecovance-ease-standard); }
.ecovance-target-card[open] { flex-basis: 25.375rem; width: 25.375rem; min-height: 24.5625rem; height: auto; background: var(--ecovance-blue-dark); color: #fff; box-shadow: 0 .25rem .25rem rgb(0 0 0 / 25%); }
.ecovance-target-card summary { position: relative; display: block; min-height: 12rem; box-sizing: border-box; padding: 5.45rem .65rem 1rem; cursor: pointer; color: inherit; font-family: "Atkinson Hyperlegible", Arial, sans-serif; font-size: 1.125rem; font-weight: 700; line-height: 1.05; text-transform: uppercase; list-style: none; }
.ecovance-target-card:not([open]) summary { height: 100%; }
.ecovance-target-card summary::-webkit-details-marker { display: none; }
.ecovance-target-card summary::before { content: counter(ecovance-target, decimal-leading-zero) "."; position: absolute; top: 2rem; left: .65rem; font-size: 2.5rem; font-weight: 400; line-height: .78; text-transform: none; }
.ecovance-target-card summary::after { content: "Ouvrir"; position: absolute; top: 2.1rem; right: 1.25rem; font-size: 1.125rem; font-weight: 400; text-decoration: underline; text-transform: none; opacity: 0; }
.ecovance-target-card[open] summary { padding-right: 1.25rem; padding-left: 1.25rem; }
.ecovance-target-card[open] summary::before { left: 1.25rem; }
.ecovance-target-card[open] summary::after { content: "Fermer"; opacity: 1; }
.ecovance-target-card summary:focus-visible { outline: 3px solid #fff; outline-offset: -6px; box-shadow: inset 0 0 0 9px var(--ecovance-green-dark); }
.ecovance-target-card[open] summary:focus-visible::after { border-radius: .125rem; outline: 2px solid #fff; outline-offset: 4px; text-decoration-thickness: .15em; }
.ecovance-target-card > p { margin: .75rem 0 0; padding: 0 1.25rem 1.5rem; color: inherit; font-size: 1.125rem; line-height: 1.18; }

/* 32 · Bloc outils. Les états Figma sont produits par les vrais détails ouverts. */
.ecovance-tools { box-sizing: border-box; overflow: hidden; overflow: clip; padding: 5rem 0 6rem; }
.ecovance-tools__inner { width: min(calc(100% - 9.375rem), 85.625rem); max-width: 85.625rem; margin: 0 auto; }
.ecovance-tools__inner > .ecovance-section-label { width: max-content; margin-right: auto; margin-left: auto; }
.ecovance-tools__title { width: min(100%, 25.4375rem); margin: .5rem auto 4.375rem; font-size: 1.875rem; line-height: .9; }
.ecovance-tools__list { width: 100%; }
.ecovance-tool-row { position: relative; display: block; box-sizing: border-box; margin: 0; border-bottom: 1px solid var(--ecovance-blue-dark); color: var(--ecovance-blue-dark); transition: background-color var(--ecovance-motion-base) var(--ecovance-ease-standard), box-shadow var(--ecovance-motion-base) var(--ecovance-ease-standard); }
.ecovance-tool-row:has(+ .ecovance-tool-row[open]) { border-bottom-color: transparent; }
.ecovance-tool-row[open] { display: grid; width: auto; min-height: 9.3125rem; grid-template-columns: minmax(20rem, 30.8125rem) minmax(0, 50rem); grid-template-rows: auto auto; margin-right: calc(50% - 50vw); border-bottom: 0; border-radius: 1.875rem 0 0 1.875rem; background: var(--ecovance-blue-pale); box-shadow: 0 .25rem .25rem rgb(0 0 0 / 18%); }
.ecovance-tool-row summary { position: relative; display: grid; min-height: 5.9375rem; box-sizing: border-box; grid-template-columns: minmax(20rem, 25.8125rem) minmax(0, 1fr); align-items: center; padding: 1rem .5rem; cursor: pointer; color: inherit; font-family: "Atkinson Hyperlegible", Arial, sans-serif; font-size: clamp(1.875rem, 3.2vw, 1.8125rem); font-weight: 700; line-height: .78; list-style: none; }
.ecovance-tool-row summary::-webkit-details-marker { display: none; }
.ecovance-tool-row summary::before { content: ""; position: absolute; left: 1.5rem; display: none; width: 3.125rem; height: 3.125rem; box-sizing: border-box; border: 2px solid var(--ecovance-blue); border-radius: 50%; }
.ecovance-tool-row[open] summary { min-height: 9.3125rem; grid-row: 1 / span 2; grid-template-columns: 1fr; padding-left: 6.1875rem; }
.ecovance-tool-row[open] summary::before { display: block; }
.ecovance-tool-row summary::after { content: ""; }
.ecovance-tool-row summary:focus-visible { border-radius: 1.875rem 0 0 1.875rem; outline: 3px solid var(--ecovance-green-dark); outline-offset: -4px; }
.ecovance-tool-row__excerpt { grid-column: 2; padding: 0 1rem; font-size: 1.0625rem; font-weight: 400; line-height: 1.18; }
.ecovance-tool-row[open] .ecovance-tool-row__excerpt { display: none; }
.ecovance-tool-row > p { grid-column: 2; grid-row: 1; max-width: 55rem; margin: 1.125rem 2rem .25rem 0; font-size: 1.0625rem; line-height: 1.18; }
.ecovance-tool-row > ul { grid-column: 2; grid-row: 2; max-width: 55rem; margin: 0 2rem 1rem; padding-left: 1.25rem; font-size: 1.0625rem; line-height: 1.2; list-style-type: disc; }

@media (prefers-reduced-motion: reduce) {
  .ecovance-section-navigation.is-fixed,
  .ecovance-targets__track,
  .ecovance-target-card,
  .ecovance-tool-row { transition: none; }
  .ecovance-section-navigation.is-fixed { animation: none; }
}

@media (min-width: 48rem) and (max-width: 70rem) {
  .ecovance-news-listing__grid { grid-template-columns: repeat(2, minmax(0, 20.875rem)); column-gap: 2rem; }
  .ecovance-article__layout { grid-template-columns: minmax(0, 2fr) minmax(16rem, 1fr); gap: 2.5rem; }
  .ecovance-results { display: block; min-height: 0; padding: 4rem clamp(3rem, 7vw, 5rem); }
  .ecovance-results__content { max-width: 40rem; }
  .ecovance-results__stats { margin-top: 3rem; }
}

@media (min-width: 48rem) and (max-width: 89.99rem) {
  .ecovance-partner-band { min-height: 620px; }
  .ecovance-partner-band__surface {
    top: 40px;
    height: 560px;
    min-height: 560px;
    border-radius: 150px 150px 0 0;
  }
  .ecovance-partner-band__squiggle { top: 90px; left: calc(50% - 340px); }
  .ecovance-partner-band__title { top: 93px; left: calc(50% - 300px); width: 600px; }
  .ecovance-partner-band__logos {
    top: 185px;
    right: auto;
    bottom: auto;
    left: 50%;
    display: grid;
    width: min(calc(100% - 64px), 700px);
    height: 180px;
    grid-template-areas:
      "koine sutargi estia recup"
      "mik mik crescendo lanum";
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: repeat(2, 80px);
    gap: 20px 24px;
    align-items: center;
    justify-items: center;
    transform: translateX(-50%);
  }
  .ecovance-partner-band__logo { position: relative; inset: auto; }
  .ecovance-partner-band__logo--koine { grid-area: koine; width: 95.195px; height: 62.922px; }
  .ecovance-partner-band__logo--sutargi { grid-area: sutargi; width: 130.103px; height: 44.215px; }
  .ecovance-partner-band__logo--estia { grid-area: estia; width: 146.818px; height: 35.352px; }
  .ecovance-partner-band__logo--mik { grid-area: mik; width: 229.785px; height: 53.394px; overflow: hidden; }
  .ecovance-partner-band__logo--mik img {
    position: absolute;
    top: -166.31%;
    left: .09%;
    width: 99.82%;
    height: 434.06%;
    max-width: none;
    object-fit: fill;
  }
  .ecovance-partner-band__logo--recup { grid-area: recup; width: 79.928px; height: 72.559px; }
  .ecovance-partner-band__logo--crescendo { grid-area: crescendo; width: 140.009px; height: 35.713px; }
  .ecovance-partner-band__logo--lanum { grid-area: lanum; width: 121.86px; height: 32.074px; }
  .ecovance-partner-band__cta { top: 460px; left: calc(50% - 123.5px); }
}

@media (max-width: 47.99rem) {
  .ecovance-news-section { width: min(calc(100% - 3rem), 23rem); }
  .ecovance-news-listing__grid { grid-template-columns: minmax(0, 17.9375rem); gap: 1.25rem; margin-right: auto; margin-left: 0; }
  .ecovance-news-card > .ecovance-news-card__body { padding-right: 1.5rem; padding-left: 1.375rem; }
  .ecovance-news-card__terms { right: .6875rem; left: .6875rem; }
  .ecovance-news-card__media > .ecovance-news-card__term { left: .6875rem; }
  .ecovance-ui-section { width: min(calc(100% - 3rem), 21.25rem); margin-block: 3rem; }
  .ecovance-section-label { font-size: 1.875rem; }
  .ecovance-partner-band {
    --ecovance-partner-canvas-offset: 0px;
    min-height: 723px;
  }
  .ecovance-partner-band__surface {
    top: 0;
    left: 10.5px;
    width: calc(100% - 21px);
    height: 604.5px;
    min-height: 604.5px;
    border-radius: min(47.5vw, 185px) min(47.5vw, 185px) 0 0;
  }
  .ecovance-partner-band__squiggle {
    top: 114px;
    left: 10.618%;
    width: 34.838px;
    height: 30.2px;
  }
  .ecovance-partner-band__title {
    top: 114px;
    left: 21.245%;
    width: 66.306%;
    font-size: 30px;
    line-height: .85;
  }
  .ecovance-partner-band__logo--koine { top: 225px; left: 16.915%; width: 24.564%; height: 59.994px; }
  .ecovance-partner-band__logo--sutargi { top: 234px; left: 55.616%; width: 33.572%; height: 42.158px; }
  .ecovance-partner-band__logo--mik { top: 291px; left: 17.456%; width: 62.188%; height: 53.394px; overflow: hidden; }
  .ecovance-partner-band__logo--mik img {
    position: absolute;
    top: -166.31%;
    left: .09%;
    width: 99.82%;
    height: 434.06%;
    max-width: none;
    object-fit: fill;
  }
  .ecovance-partner-band__logo--recup { top: 352px; left: 15.562%; width: 20.623%; height: 69.188px; }
  .ecovance-partner-band__logo--estia { top: 362px; left: 52.097%; width: 37.885%; height: 33.707px; }
  .ecovance-partner-band__logo--crescendo { top: 435px; left: 12.855%; width: 36.128%; height: 34.051px; }
  .ecovance-partner-band__logo--lanum { top: 435px; left: 56.98%; width: 31.445%; height: 30.582px; }
  .ecovance-partner-band__cta { top: 509px; left: 15.562%; }
  .ecovance-project-introduction { display: block; min-height: 0; padding: 2.5rem 1.5rem; }
  .ecovance-project-introduction__lead { font-size: 1.875rem; }
  .ecovance-project-introduction__body { margin-top: 2rem; }
  .ecovance-project-introduction__body p { font-size: 1rem; }

  .ecovance-poles-grid { display: grid; grid-template-columns: 1fr; gap: 1rem; margin-top: 2rem; }
  .ecovance-pole-card,
  .ecovance-pole-card:nth-child(even) { min-height: 16.8125rem; margin: 0; padding: 2.25rem 1.5rem 1.25rem; }

  .ecovance-results { display: block; min-height: 0; padding: 3rem 1.5rem 4rem; }
  .ecovance-results__content { max-width: none; }
  .ecovance-results__copy { margin-top: 2rem; font-size: 1rem; line-height: 1.2; }
  .ecovance-results__stats { display: grid; min-height: 0; gap: .5rem; margin-top: 2.5rem; }
  .ecovance-results__stats::before,
  .ecovance-results__stats::after { width: 19.5rem; height: 19.5rem; }
  .ecovance-results__stats::before { top: 2rem; left: -5rem; }
  .ecovance-results__stats::after { right: -7rem; bottom: 1rem; }
  .ecovance-result-stat,
  .ecovance-result-stat:nth-child(n) { position: static; display: grid; grid-template-columns: max-content minmax(0, 1fr); align-items: center; gap: .625rem; }
  .ecovance-result-stat__value { font-size: 7.5rem; }
  .ecovance-result-stat__label { max-width: 12rem; justify-self: start; font-size: 1.25rem; text-align: left; }
  .ecovance-results__stats.has-expanded-text-spacing { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
  .ecovance-results__stats.has-expanded-text-spacing .ecovance-result-stat,
  .ecovance-results__stats.has-expanded-text-spacing .ecovance-result-stat:nth-child(n) { display: flex; flex-direction: column; align-items: flex-start; gap: .25rem; }
  .ecovance-results__stats.has-expanded-text-spacing .ecovance-result-stat__label { width: 100%; max-width: none; }

  .ecovance-deliverable { display: block; min-height: 0; padding: 1.5rem; }
  .ecovance-deliverable h3 { font-size: 1.75rem; }
  .ecovance-deliverable p { font-size: 1rem; }
  .ecovance-download-link { width: 100%; min-width: 0; margin-top: 1.5rem; font-size: 1rem; }

  .ecovance-section-navigation {
    position: relative;
    width: calc(100% - 1.5rem);
    max-width: none;
    min-height: 4rem;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: flex-start;
    gap: .35rem;
    margin-inline: auto;
    padding: .65rem;
    overflow: visible;
  }
  .ecovance-section-navigation__track {
    display: flex;
    min-width: 0;
    flex: 1 1 auto;
    align-items: center;
    gap: .35rem;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
  }
  .ecovance-section-navigation__track::-webkit-scrollbar { display: none; }
  .ecovance-section-navigation__track > a {
    width: auto;
    box-sizing: border-box;
    flex: 0 0 auto;
    white-space: nowrap;
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1.15;
  }
  .ecovance-section-navigation__arrow { display: inline-flex; }
  .ecovance-section-navigation a[aria-current="location"] { display: inline-flex; min-width: 8.625rem; min-height: 2.625rem; align-items: center; justify-content: center; padding-block: .4rem; font-size: 1.25rem; font-weight: 400; line-height: 1.15; }
  .ecovance-section-navigation.is-fixed {
    position: fixed;
    top: 0;
    left: .75rem;
    width: calc(100vw - 1.5rem) !important;
    max-width: none !important;
    min-height: 4rem;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: flex-start;
    gap: .35rem;
    margin: 0;
    padding: .65rem;
    border-radius: 0 0 .9375rem .9375rem;
    overflow: visible;
  }
  .ecovance-section-navigation.is-fixed .ecovance-section-navigation__track > a { display: block; width: auto; }
  .ecovance-section-navigation.is-fixed .ecovance-section-navigation__arrow { display: inline-flex; width: 2.25rem; }
  .ecovance-section-navigation.is-fixed a[aria-current="location"] { min-width: 8.625rem; text-align: center; }
  .admin-bar .ecovance-section-navigation.is-fixed { top: 46px; }

  .ecovance-news-card { width: 17.9375rem; margin-inline: auto; }
  .ecovance-featured { display: flex; width: 100%; min-height: 0; flex-direction: column; gap: 1rem; }
  .ecovance-featured__content { min-height: 24rem; padding: 1.5rem 1.2rem 2rem; }
  .ecovance-featured h2 { font-size: 1.75rem; }
  .ecovance-featured p { font-size: 1rem; }
  .ecovance-featured__image { width: calc(100% - 3.375rem); height: 19rem; margin: 0 0 0 auto; }
  .ecovance-featured__image img { border-radius: 1.25rem 0 0 1.25rem; }
  .ecovance-featured.is-style-ecovance-featured-image-left .ecovance-featured__content { order: 0; border-radius: 0 1.25rem 1.25rem 0; }
  .ecovance-featured.is-style-ecovance-featured-image-left .ecovance-featured__image { order: 1; margin-inline: 0 auto; }
  .ecovance-featured.is-style-ecovance-featured-image-left .ecovance-featured__image img { border-radius: 0 1.25rem 1.25rem 0; }

  .ecovance-external-cta,
  .ecovance-contextual-cta { display: block; padding: 2rem 1.5rem; }
  .ecovance-external-cta .wp-block-buttons,
  .ecovance-contextual-cta .wp-block-buttons { margin-top: 1.5rem; }
  .ecovance-form-grid {
    max-width: 349px;
    padding: 25px 16px 24px;
    background-position: 89px 1104px;
  }
  form.ecovance-form-grid,
  .ecovance-form-grid .wpcf7-form { grid-template-columns: 1fr; column-gap: 0; row-gap: 24px; }
  .ecovance-form-grid :where(#ecovance-required-note, .ecovance-form-note, .ecovance-required-note) {
    margin-bottom: 10px;
    font-size: 15px;
    line-height: 19px;
  }
  .ecovance-form-field--wide { grid-column: auto; }
  .ecovance-form-field label,
  .ecovance-form-field legend { margin-bottom: 8px; }
  .ecovance-form-grid .wpcf7-form > .ecovance-form-field:nth-of-type(1) label,
  form.ecovance-form-grid > .ecovance-form-field:nth-of-type(1) label { margin-bottom: 9px; }
  .ecovance-phone-field { margin-top: 8px; }
  .ecovance-form-grid .wpcf7-form > .ecovance-form-field:nth-of-type(5),
  form.ecovance-form-grid > .ecovance-form-field:nth-of-type(5) { margin-top: 4px; }
  .ecovance-form-field textarea { height: 233px; min-height: 233px; }
  .ecovance-consent { top: 0; margin: -19px 0 -9px; }
  .ecovance-consent label { margin-bottom: 0; }
  .ecovance-consent > label,
  .ecovance-consent .wpcf7-list-item-label { max-width: 264px; margin-top: 4px; }
  .ecovance-form-actions { top: 0; }
  .ecovance-form-actions :where(.wpcf7-submit, button) {
    width: 100%;
    height: 55px;
    min-height: 55px;
    padding-inline: 20px;
    font-size: 20px;
    line-height: 25px;
  }
  .ecovance-newsletter { display: block; padding: 2rem 1.5rem; }
  .ecovance-button-primary .wp-block-button__link { width: 14.6875rem; min-width: 14.6875rem; }
  .ecovance-button-secondary .wp-block-button__link { width: 14.0625rem; min-width: 14.0625rem; }
  .ecovance-button-external .wp-block-button__link,
  .ecovance-button-direct .wp-block-button__link,
  .ecovance-button-direct__control { min-width: 0; width: 100%; }
  .ecovance-tags { width: 100%; margin-inline: 0; overflow: hidden; }
  .ecovance-category-filters { position: relative; overflow: hidden; }
  .ecovance-category-filters__mobile-hint { display: block; }
  .ecovance-category-filters__track { width: calc(100% - 5.5rem); box-sizing: border-box; flex-wrap: nowrap; margin-inline: auto; padding: .25rem .375rem .75rem; overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: none; -webkit-mask-image: linear-gradient(to right, transparent 0, #000 1.5rem, #000 calc(100% - 1.5rem), transparent 100%); mask-image: linear-gradient(to right, transparent 0, #000 1.5rem, #000 calc(100% - 1.5rem), transparent 100%); }
  .ecovance-category-filters__track::-webkit-scrollbar { display: none; }
  .ecovance-category-filters__arrow { position: absolute; z-index: 4; top: .125rem; display: grid; width: 2.75rem; height: 2.75rem; place-items: center; padding: 0; border: 0; background: transparent; color: #fff; cursor: pointer; }
  .ecovance-category-filters__arrow::before { content: ""; display: block; width: 1.875rem; height: 1.875rem; border-radius: 50%; background: var(--ecovance-blue-dark) url("../images/partner-band-arrow.svg") center / 1rem auto no-repeat; }
  .ecovance-category-filters__arrow--previous { left: 0; }
  .ecovance-category-filters__arrow--previous::before { transform: rotate(180deg); }
  .ecovance-category-filters__arrow--next { right: 0; }
  .ecovance-category-filters__arrow:disabled { cursor: default; opacity: .35; }
  .ecovance-category-filters__arrow:focus-visible { outline: .1875rem solid var(--ecovance-green); outline-offset: -.1875rem; border-radius: 50%; }
  .ecovance-tags a { flex: 0 0 auto; }
  .ecovance-pagination__pages { display: none; }
  .ecovance-pagination__compact { display: inline-flex !important; }
  .ecovance-pagination { width: min(calc(100% - 3rem), 19.375rem); padding-inline: 1rem; }
  .ecovance-pagination__previous,
  .ecovance-pagination__next { min-width: 0 !important; }
  .ecovance-breadcrumbs__current { max-width: 10rem; }
  .ecovance-pole-icons { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .ecovance-partner-line-block { width: min(calc(100% - 3rem), 21.125rem); max-width: 21.125rem; }
  .ecovance-partner-line { display: block; min-height: 25.9375rem; padding-bottom: 5.6875rem; }
  .ecovance-partner-line__logo { width: 100%; height: 7rem; }
  .ecovance-partner-line__logo img { width: 9.8125rem; height: 6.5rem; }
  .ecovance-partner-line__content { margin-block: 0; padding: .9375rem 1.125rem 1rem; border-radius: .9375rem 0 0 .9375rem; }
  .ecovance-partner-line__heading-row { display: block; }
  .ecovance-partner-line :is(h2, h3, h4, h5, h6) { font-size: 1.25rem; line-height: 1.1; }
  .ecovance-partner-line__meta { margin-top: .2rem; gap: 1.0625rem; }
  .ecovance-partner-line__excerpt { width: 100%; margin-top: 1rem; font-size: .9375rem; line-height: 1.093; }
  .ecovance-partner-line__full { width: 100%; margin-top: .8rem; font-size: .9375rem; line-height: 1.18; }
  .ecovance-partner-line__toggle { top: auto; right: auto; bottom: 6.0625rem; left: 50%; min-height: 2.65625rem; transform: translateX(-50%); white-space: nowrap; }
  .ecovance-partner-line__toggle-icon { width: 1.875rem; height: 1.875rem; }
  .ecovance-partner-line__website { position: absolute; right: .8125rem; bottom: .5625rem; left: .75rem; width: auto; height: 4.3125rem; padding: 0; background: transparent; }
  .ecovance-partner-line__website a,
  .ecovance-partner-line__website > span { height: 4.3125rem; border-radius: 1.25rem; font-size: 1.125rem; }
  .ecovance-partner-line-block.is-expanded .ecovance-partner-line { min-height: 66.75rem; padding-bottom: 10rem; }
  .ecovance-partner-line-block.is-expanded .ecovance-partner-line__content { padding-right: 1.125rem; padding-bottom: 1rem; }
  .ecovance-partner-line-block.is-expanded .ecovance-partner-line__toggle { top: auto; bottom: 6.875rem; }
  .single-post .wp-block-ecovance-article-breadcrumbs,
  .editor-styles-wrapper .wp-block-ecovance-article-breadcrumbs {
    width: min(calc(100% - 2.25rem), 22.125rem);
    min-height: 4rem;
    margin: 0 auto;
    padding: 1.25rem 0 1.5rem;
    overflow: hidden;
  }
  .single-post .wp-block-ecovance-article-breadcrumbs ol,
  .editor-styles-wrapper .wp-block-ecovance-article-breadcrumbs ol { gap: .45rem; }
  .single-post .wp-block-ecovance-article-breadcrumbs li + li::before,
  .editor-styles-wrapper .wp-block-ecovance-article-breadcrumbs li + li::before { margin-right: .45rem; }
  .single-post .wp-block-ecovance-article-breadcrumbs .ecovance-breadcrumbs__current,
  .editor-styles-wrapper .wp-block-ecovance-article-breadcrumbs .ecovance-breadcrumbs__current { max-width: 10.5rem; }
  .ecovance-article { width: min(calc(100% - 2.375rem), 22rem); padding-bottom: 3.5rem; }
  .ecovance-article__back { min-height: 2rem; margin-bottom: .625rem; padding: 0 0 .75rem; }
  .ecovance-article > .wp-block-post-title { max-width: 20.5rem; margin: 0; font-size: 2.5rem; line-height: .9375; }
  .ecovance-article > .ecovance-article-meta { min-height: 3.375rem; gap: .5rem; padding: .75rem .125rem; }
  .ecovance-article-meta :is(.wp-block-post-terms, .wp-block-post-date) { padding-inline: .6875rem; }
  .ecovance-article__layout { display: flex; flex-direction: column; gap: 1.6875rem; }
  .ecovance-article-toc { position: static; order: 0; width: 100%; min-height: 9.4375rem; padding: 1.25rem 1.75rem 1rem; }
  .ecovance-legal-page { width: min(calc(100% - 2.375rem), 22rem); padding: 2rem 0 3.5rem; }
  .ecovance-legal-page__layout { display: flex; flex-direction: column; gap: 1.6875rem; }
  .ecovance-legal-page__layout > .wp-block-ecovance-article-toc { order: 0; }
  .ecovance-legal-page__main { order: 1; }
  .ecovance-article__main { order: 1; width: 100%; }
  .ecovance-article__lead { margin-bottom: 1.75rem; font-size: 1.375rem; line-height: 1.15; }
  .ecovance-article__main > .wp-block-post-featured-image { width: 21.25rem; max-width: 100%; margin-bottom: 1.875rem; }
  .ecovance-article__main > .wp-block-post-featured-image img { aspect-ratio: 340 / 153; border-radius: .9375rem; }
  .ecovance-article .wp-block-post-content { font-size: 1.125rem; line-height: 1.18; }
  .ecovance-article .wp-block-post-content :where(h2,h3) { scroll-margin-top: 1rem; }
  .ecovance-article-video-link { width: min(100%, 21.6875rem); margin-left: .125rem; }
  .ecovance-article-video-link .wp-block-button__link { padding-right: 1rem; padding-left: 3.25rem; }
  .ecovance-article-related { width: 100%; margin: 4rem 0 0 .25rem; }
  .ecovance-article-related__header { display: block; }
  .ecovance-article-related__header h2 { font-size: 1.875rem; }
  .ecovance-article-related__header .wp-block-buttons { margin-top: 1rem; }
  .ecovance-article-related__header .ecovance-button-primary .wp-block-button__link { width: auto; min-width: min(12.875rem, 100%); }
  .ecovance-article-related .ecovance-news-listing__grid { margin-top: 1.625rem; }
  .ecovance-post-navigation { display: grid; }
  .ecovance-ui-kit-introduction { width: min(calc(100% - 3rem), 21.25rem); }
  .ecovance-ui-kit-group { width: min(calc(100% - 1.5rem), 22.875rem); padding: 1.25rem; }

  .ecovance-philosophy { min-height: 114.75rem; }
  .ecovance-philosophy__surface--desktop,
  .ecovance-philosophy__arrow--desktop { display: none; }
  .ecovance-philosophy__surface--mobile,
  .ecovance-philosophy__arrow--mobile { display: block; }
  .ecovance-philosophy__surface--mobile img { border-radius: 50% 50% 0 0 / 5rem 5rem 0 0; }
  .ecovance-philosophy__arrow--mobile { top: 50rem; right: 0; width: 8.1875rem; }
  .ecovance-philosophy__content { display: block; width: min(calc(100% - 3rem), 23.375rem); padding: 3.75rem 0 4rem; }
  .ecovance-philosophy__copy { max-width: none; }
  .ecovance-philosophy__copy > .ecovance-section-label { margin-left: 4rem; }
  .ecovance-philosophy__title { width: calc(100% + 2.0625rem); margin: .75rem 0 2rem -1.03125rem; font-size: 1.875rem; line-height: normal; }
  .ecovance-philosophy__copy > p:not(.ecovance-section-label) { font-size: 1.0625rem; line-height: 1.18; }
  .ecovance-philosophy__accordion { margin-top: 2.75rem; }
  .ecovance-philosophy__accordion summary { min-height: 4.25rem; padding-left: 3.65rem; font-size: 1.5rem; }
  .ecovance-philosophy__accordion summary::before { left: .25rem; width: 2.3125rem; height: 2.3125rem; }
  .ecovance-philosophy__accordion details > p { padding-left: 3.65rem; font-size: 1.0625rem; }
  .ecovance-philosophy__content > :is(.ecovance-philosophy__header, .is-style-ecovance-grid-span-all, .wp-block-group.is-layout-flex:first-child) { display: flex; flex-wrap: wrap; justify-content: center; gap: .75rem 1rem; margin-bottom: 2rem; }
  .ecovance-philosophy__header > .ecovance-section-label { justify-content: center; margin: 0; text-align: center; }
  .ecovance-philosophy__header > .ecovance-philosophy__title { flex: 1 1 100%; width: 100%; margin: 0; text-align: center; white-space: normal; }

  .ecovance-targets { padding: 4.5rem 0; background: var(--ecovance-blue-pale); }
  .ecovance-targets > .wp-block-group.is-layout-flex:first-child {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 2.5rem;
  }
  .ecovance-targets > .wp-block-group.is-layout-flex:first-child > .ecovance-section-label {
    align-self: center;
    margin: 0;
    text-align: center;
  }
  .ecovance-targets > .wp-block-group.is-layout-flex:first-child > .ecovance-targets__introduction { margin: 0; }
  .ecovance-targets__inner { width: min(calc(100% - 3rem), 21.0625rem); }
  .ecovance-targets__inner > .ecovance-section-label { width: max-content; margin-right: auto; margin-left: auto; text-align: center; }
  .ecovance-targets__introduction { width: 100%; margin: 2.5rem 0 0; font-size: 1.0625rem; line-height: 1.18; }
  .ecovance-targets__viewport { width: 100%; margin-top: 3.5rem; margin-left: 0; padding-left: 0; }
  .ecovance-targets__track,
  .ecovance-targets__track.has-ecovance-target-open-left { display: grid; width: 100%; gap: 1.125rem; transform: none; }
  .ecovance-target-card,
  .ecovance-target-card[open] { width: 100%; min-height: 9.3125rem; height: auto; flex-basis: auto; }
  .ecovance-target-card[open] { min-height: 20.0625rem; height: auto; }
  .ecovance-target-card summary { min-height: 9.3125rem; height: auto; padding: 5.3rem 1.5rem 1rem; }
  .ecovance-target-card summary::before { top: 2rem; left: 1.5rem; }
  .ecovance-target-card summary::after { top: 2rem; right: 1.5rem; opacity: 1; }
  .ecovance-target-card[open] summary { min-height: 9rem; padding: 5.3rem 1.5rem 1rem; }
  .ecovance-target-card[open] summary::before { left: 1.5rem; }
  .ecovance-target-card > p { margin-top: 2rem; padding: 0 1.5rem 1.5rem; font-size: 1.0625rem; }

  .ecovance-tools { padding: 4.5rem 0; }
  .ecovance-tools__inner { width: min(calc(100% - 3.5rem), 23.25rem); max-width: none; margin-right: 0; margin-left: 1.75rem; }
  .ecovance-tools__title { margin: .8rem auto 2.5rem; font-size: 1.875rem; line-height: .88; }
  .ecovance-tool-row[open] { display: flex; width: auto; min-height: 20.0625rem; flex-direction: column; margin-right: calc(50% - 50vw - 1.25rem); border-radius: 3.125rem 0 0 3.125rem; box-shadow: none; }
  .ecovance-tool-row summary,
  .ecovance-tool-row[open] summary { display: block; min-height: 4.625rem; padding: 1.35rem 5rem 1.35rem 2.5rem; font-size: 1.875rem; line-height: .78; }
  .ecovance-tool-row:not([open]) summary { min-height: 5.625rem; }
  .ecovance-tool-row[open] summary { min-height: 5.8375rem; padding: 3.875rem 5rem .5rem 2.5rem; }
  .ecovance-tool-row summary::before { display: none; }
  .ecovance-tool-row summary::after { content: "Ouvrir"; position: absolute; top: 1.5rem; right: 1.5rem; font-size: .875rem; font-weight: 400; line-height: 1; text-decoration: underline; }
  .ecovance-tool-row[open] summary::before { content: "×"; top: 1rem; left: 2.5rem; display: flex; width: 1.4375rem; height: 1.4375rem; align-items: center; justify-content: center; border: 0; border-radius: 50%; background: #fff; color: var(--ecovance-blue); font-family: Arial, sans-serif; font-size: 1.125rem; font-weight: 400; line-height: 1; }
  .ecovance-tool-row[open] summary::after { content: "Fermer"; top: 1.25rem; right: auto; left: 4.375rem; font-size: 1.125rem; line-height: .78; }
  .ecovance-tool-row summary:focus-visible { border-radius: 3.125rem 0 0 3.125rem; }
  .ecovance-tool-row__excerpt { display: -webkit-box; margin-top: .75rem; padding: 0; overflow: hidden; font-size: 1.0625rem; line-height: 1.05; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .ecovance-tool-row[open] .ecovance-tool-row__excerpt { display: none; }
  .ecovance-tool-row > ul { order: 1; margin: 0 3rem 0 3.65rem; padding-left: .85rem; color: var(--ecovance-blue); font-size: .9375rem; font-weight: 700; line-height: 1.13; }
  .ecovance-tool-row > ul li::marker { font-size: 1.2em; }
  .ecovance-tool-row > p { order: 2; width: min(100%, 17.6875rem); max-width: 17.6875rem; margin: 1.5rem 3rem 1.3125rem 2.5rem; font-size: 1.0625rem; line-height: 1.05; }
}

@media (max-width: 21.875rem) {
  .ecovance-article .wp-block-post-content { font-size: 1.0625rem; line-height: 1.25; }
  .ecovance-article .wp-block-post-content h2 { font-size: 1.625rem; }
  .ecovance-article .wp-block-post-content h3 { font-size: 1.375rem; }
  .ecovance-article .wp-block-post-content :where(h2, h3, p, li, a) {
    max-width: 100%;
    overflow-wrap: anywhere;
    hyphens: auto;
  }
}

:where(.ecovance-project-introduction, .ecovance-philosophy, .ecovance-targets, .ecovance-tools, .ecovance-results) { scroll-margin-top: 5rem; }

.editor-styles-wrapper .ecovance-results {
  display: block;
  min-height: 0;
  overflow: visible;
  padding: 3rem clamp(1.5rem, 4vw, 4rem);
}

.editor-styles-wrapper .ecovance-results__content {
  width: 100%;
  max-width: 40rem;
}

.editor-styles-wrapper .ecovance-results__stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(24rem, 100%), 1fr));
  gap: 1rem;
  width: 100%;
  max-width: none;
  min-height: 0;
  margin-top: 2.5rem;
  transform: none;
}

.editor-styles-wrapper .ecovance-results__stats::before,
.editor-styles-wrapper .ecovance-results__stats::after {
  display: none;
}

.editor-styles-wrapper .ecovance-results .ecovance-result-stat,
.editor-styles-wrapper .ecovance-results .ecovance-result-stat:nth-child(n) {
  position: static !important;
  inset: auto !important;
  display: grid;
  grid-template-columns: 9rem minmax(0, 1fr);
  align-items: center;
  gap: .75rem;
  width: auto;
  min-height: 7rem;
  margin: 0 !important;
  padding: 1rem;
  border: 1px dashed rgb(255 255 255 / 55%);
  border-radius: .75rem;
  background: rgb(255 255 255 / 8%);
}

.editor-styles-wrapper .ecovance-results .ecovance-result-stat__value {
  font-size: 5rem;
  line-height: .8;
  white-space: nowrap;
}

.editor-styles-wrapper .ecovance-results .ecovance-result-stat__label {
  max-width: none;
  font-size: 1rem;
  line-height: 1.15;
}

.editor-styles-wrapper .ecovance-partner-band {
  width: 100%;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.editor-styles-wrapper .block-editor-block-list__block.ecovance-partner-band__surface,
.editor-styles-wrapper .block-editor-block-list__block.ecovance-partner-band__squiggle,
.editor-styles-wrapper .block-editor-block-list__block.ecovance-partner-band__title,
.editor-styles-wrapper .block-editor-block-list__block.ecovance-partner-band__logos,
.editor-styles-wrapper .block-editor-block-list__block.ecovance-partner-band__logo,
.editor-styles-wrapper .block-editor-block-list__block.ecovance-partner-band__cta,
.editor-styles-wrapper .block-editor-block-list__block.ecovance-partner-band__cta-arrow {
  position: absolute;
}

@media (min-width: 48rem) and (max-width: 89.99rem) {
  .editor-styles-wrapper .block-editor-block-list__block.ecovance-partner-band__logo {
    position: relative;
    inset: auto;
  }
}

@media (forced-colors: active) {
  .ecovance-news-card__term.is-active {
    border-color: CanvasText;
    outline: 2px solid CanvasText;
    outline-offset: 2px;
    box-shadow: none;
  }
  .ecovance-partner-line__website a:focus-visible,
  .ecovance-download-link:focus-visible,
  .ecovance-target-card summary:focus-visible { outline-color: Highlight; box-shadow: none; }
  .ecovance-target-card[open] summary:focus-visible::after { outline-color: Highlight; }
  .ecovance-pole-card,
  .ecovance-partner-card,
  .ecovance-deliverable,
  .ecovance-alert,
  .ecovance-section-navigation,
  .ecovance-target-card,
  .ecovance-tool-row { border: 2px solid CanvasText; }
}
