.eco-cs-card {
  --eco-green: #063c32;
  --eco-orange: #f16a25;
  --eco-muted: #6b7781;
  --eco-line: #e2e8e7;
  background: #fff;
  border: 1px solid var(--eco-line);
  border-radius: 14px;
  padding: 20px;
  color: #172d32;
  font-family: inherit;
  box-shadow: 0 5px 22px rgba(6, 60, 50, 0.035);
}
.eco-cs-card * {
  box-sizing: border-box;
}
.eco-cs-title {
  margin: 0;
  font-size: 16px;
  line-height: 1.7;
  color: #172d32;
}
.eco-cs-expert {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 15px 0;
  border-bottom: 1px solid var(--eco-line);
}
.eco-cs-expert:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.eco-cs-avatar {
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  overflow: hidden;
  background: #e5f1ed;
  color: var(--eco-green);
  display: grid;
  place-items: center;
  font-size: 18px;
  font-weight: 700;
}
.eco-cs-avatar img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.eco-cs-expert-info {
  min-width: 0;
}
.eco-cs-expert-info strong {
  display: block;
  font-size: 13px;
  line-height: 1.7;
  color: #173b35;
}
.eco-cs-expert-info small {
  display: block;
  color: var(--eco-muted);
  font-size: 10px;
  line-height: 1.8;
}
.eco-cs-expert-info a {
  display: inline-block;
  color: var(--eco-green);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.8;
  text-decoration: none;
}
.eco-cs-filters {
  margin-top: 18px;
}
.eco-cs-filter-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.eco-cs-filter-heading > span {
  margin-right: auto;
  background: #fff3e9;
  color: #a94c19;
  border-radius: 20px;
  padding: 3px 8px;
  font-size: 9px;
}
.eco-cs-mobile-toggle {
  display: none;
}
.eco-cs-filter-group {
  border-top: 1px solid var(--eco-line);
  padding: 0;
}
.eco-cs-filter-group:first-child {
  margin-top: 12px;
}
.eco-cs-filter-group summary {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 14px 0;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}
.eco-cs-filter-group summary::-webkit-details-marker {
  display: none;
}
.eco-cs-filter-group summary i {
  width: 8px;
  height: 8px;
  border-left: 1.5px solid var(--eco-green);
  border-bottom: 1.5px solid var(--eco-green);
  transform: rotate(-45deg);
  transition: transform 0.18s;
}
.eco-cs-filter-group[open] summary i {
  transform: rotate(135deg);
}
.eco-cs-filter-options {
  padding: 0 0 13px;
}
.eco-cs-option-list {
  max-height: 225px;
  overflow: auto;
  scrollbar-width: thin;
  scrollbar-color: #b9cbc5 transparent;
}
.eco-cs-option {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) auto;
  align-items: center;
  gap: 7px;
  padding: 6px 2px;
  cursor: pointer;
  color: #45605b;
  font-size: 11px;
}
.eco-cs-option:hover {
  color: var(--eco-green);
}
.eco-cs-option input {
  appearance: none;
  width: 16px;
  height: 16px;
  margin: 0;
  border: 1px solid #b8cac4;
  border-radius: 4px;
  background: #fff;
  display: grid;
  place-items: center;
  cursor: pointer;
}
.eco-cs-option input:checked {
  border-color: var(--eco-green);
  background: var(--eco-green);
}
.eco-cs-option input:checked:after {
  content: "✓";
  color: #fff;
  font-size: 11px;
  line-height: 1;
}
.eco-cs-option small {
  min-width: 22px;
  text-align: center;
  color: #7b8e89;
  background: #f2f6f4;
  border-radius: 10px;
  padding: 1px 5px;
  font-size: 9px;
}
.eco-cs-option-search {
  position: relative;
  display: block;
  margin-bottom: 7px;
}
.eco-cs-option-search span {
  position: absolute;
  right: 9px;
  top: 5px;
  color: var(--eco-muted);
  font-size: 18px;
}
.eco-cs-option-search input {
  width: 100%;
  height: 34px;
  border: 1px solid #d5e0dd;
  border-radius: 7px;
  padding: 6px 32px 6px 8px;
  background: #fafcfb;
  color: #29463f;
  font: inherit;
  font-size: 10px;
  outline: 0;
}
.eco-cs-option-search input:focus {
  border-color: var(--eco-green);
  box-shadow: 0 0 0 2px rgba(6, 60, 50, 0.08);
}
.eco-cs-filter-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-top: 15px;
  border-top: 1px solid var(--eco-line);
}
.eco-cs-filter-actions button {
  flex: 1;
  min-height: 40px;
  border: 0;
  border-radius: 8px;
  background: var(--eco-green);
  color: #fff;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}
.eco-cs-filter-actions button:hover {
  background: #0a5143;
}
.eco-cs-filter-actions a {
  color: var(--eco-orange);
  font-size: 10px;
  text-decoration: none;
  white-space: nowrap;
}
.eco-cs-option.is-hidden {
  display: none;
}
@media (max-width: 767px) {
  .eco-cs-card {
    padding: 16px;
  }
  .eco-cs-experts .eco-cs-expert-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 16px;
  }
  .eco-cs-filters {
    margin-top: 12px;
  }
  .eco-cs-filter-heading {
    flex-wrap: wrap;
  }
  .eco-cs-mobile-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-top: 9px;
    border: 0;
    border-radius: 8px;
    background: #edf5f2;
    color: var(--eco-green);
    padding: 10px 12px;
    font: inherit;
    font-size: 11px;
    font-weight: 700;
    cursor: pointer;
  }
  .eco-cs-mobile-toggle span {
    transition: transform 0.18s;
  }
  .eco-cs-mobile-toggle[aria-expanded="true"] span {
    transform: rotate(180deg);
  }
  .eco-cs-filter-form {
    display: none;
  }
  .eco-cs-filters.is-open .eco-cs-filter-form {
    display: block;
  }
  .eco-cs-filter-group:first-child {
    margin-top: 10px;
  }
}
@media (max-width: 480px) {
  .eco-cs-experts .eco-cs-expert-list {
    grid-template-columns: 1fr;
  }
  .eco-cs-expert {
    padding: 12px 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .eco-cs-filter-group summary i,
  .eco-cs-mobile-toggle span {
    transition: none;
  }
}

/* Keep shortcode widgets in the normal document flow, even if Elementor sticky is enabled. */
.eco-cs-card {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  width: 300px !important;
}
.eco-cs-static-host,
.eco-cs-static-host.elementor-sticky--active,
.eco-cs-static-host.elementor-sticky--effects {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  width: auto !important;
}

.eco-cs-category-intro{--eco-green:#063c32;--eco-orange:#f16a25;--eco-muted:#6b7781;position:relative;overflow:hidden;color:#172d32;font-family:inherit;line-height:2;padding:27px 30px;background:#fff;border:1px solid #e2e8e7;border-radius:14px;box-shadow:0 7px 28px rgba(6,60,50,.045)}.eco-cs-category-intro:before{content:"";position:absolute;top:0;right:0;width:105px;height:4px;background:var(--eco-orange);border-radius:0 0 0 5px}.eco-cs-category-intro *{box-sizing:border-box}.eco-cs-intro-eyebrow{display:inline-flex;align-items:center;gap:7px;color:var(--eco-orange);font-size:12px;font-weight:700;margin-bottom:3px}.eco-cs-intro-eyebrow:before{content:"";width:16px;height:2px;border-radius:2px;background:var(--eco-orange)}.eco-cs-category-intro h1{color:var(--eco-green);font-size:clamp(23px,3vw,30px);line-height:1.55;margin:0 0 10px}.eco-cs-intro-meta{display:flex;align-items:center;gap:8px 10px;flex-wrap:wrap;color:var(--eco-muted);font-size:12px;margin-bottom:15px}.eco-cs-intro-meta span{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#f3f7f5;border-radius:7px}.eco-cs-intro-meta b{color:var(--eco-green)}.eco-cs-intro-summary{padding:13px 16px;margin:0 0 11px!important;background:#f2f7f5;border-right:3px solid var(--eco-green);border-radius:8px}.eco-cs-intro-summary,.eco-cs-intro-content p{color:#42585d;font-size:14px;line-height:2.15;margin:0 0 8px}.eco-cs-intro-summary strong{color:var(--eco-green)}.eco-cs-intro-content p:last-child{margin-bottom:0}@media(max-width:767px){.eco-cs-category-intro{padding:21px 18px;border-radius:11px}.eco-cs-category-intro:before{width:75px}.eco-cs-category-intro h1{font-size:22px}.eco-cs-intro-meta{align-items:stretch;flex-direction:column;gap:5px}.eco-cs-intro-meta span{width:100%}.eco-cs-intro-summary{padding:11px 12px}.eco-cs-intro-summary,.eco-cs-intro-content p{font-size:13px;line-height:2}}

.eco-cs-purchase{--eco-green:#063c32;--eco-orange:#f16a25;--eco-muted:#6b7781;padding:25px;background:#fff;border:1px solid #e2e8e7;border-radius:14px;box-shadow:0 7px 28px rgba(6,60,50,.045);font-family:inherit}.eco-cs-purchase *{box-sizing:border-box}.eco-cs-purchase__head{margin-bottom:17px}.eco-cs-purchase__head span{color:var(--eco-orange);font-size:11px;font-weight:700}.eco-cs-purchase__head h2{margin:2px 0 0;color:var(--eco-green);font-size:20px}.eco-cs-purchase__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.eco-cs-purchase__step{position:relative;aspect-ratio:1/1;min-width:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:15px 10px;border-radius:12px;background:var(--eco-green);color:#fff;overflow:visible}.eco-cs-purchase__number{position:absolute;top:9px;right:10px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.12);font-size:10px;font-weight:800}.eco-cs-purchase__step i{display:grid;place-items:center;width:45px;height:45px;margin-bottom:9px;border-radius:12px;background:rgba(255,255,255,.1);color:#fff;font-style:normal;font-size:25px}.eco-cs-purchase__step strong{font-size:12px;line-height:1.8}.eco-cs-purchase__step small{display:block;margin-top:4px;color:#b9d8cf;font-size:9px;line-height:1.8}.eco-cs-purchase__step>b{position:absolute;z-index:2;left:-19px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--eco-orange);color:#fff;border:3px solid #fff;font-size:13px}@media(max-width:900px){.eco-cs-purchase{padding:19px}.eco-cs-purchase__grid{gap:7px}.eco-cs-purchase__step{padding:11px 6px}.eco-cs-purchase__step i{width:37px;height:37px;font-size:20px}.eco-cs-purchase__step strong{font-size:10px}.eco-cs-purchase__step small{font-size:8px}.eco-cs-purchase__step>b{left:-14px;width:22px;height:22px}}@media(max-width:650px){.eco-cs-purchase__grid{grid-template-columns:1fr}.eco-cs-purchase__step{aspect-ratio:auto;min-height:92px;display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto;align-content:center;text-align:right;padding:13px 52px 13px 13px}.eco-cs-purchase__number{top:50%;right:14px;transform:translateY(-50%)}.eco-cs-purchase__step i{grid-row:1/3;margin:0 0 0 10px}.eco-cs-purchase__step strong{font-size:12px}.eco-cs-purchase__step small{font-size:9px}.eco-cs-purchase__step>b{left:50%;top:auto;bottom:-15px;transform:translateX(-50%) rotate(-90deg)}}

.eco-cs-category-cta{--eco-green:#063c32;--eco-orange:#f16a25;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:24px 27px;background:linear-gradient(110deg,#e6f1ed,#f3f8f6);border:1px solid #d4e3de;border-radius:14px;font-family:inherit;color:#173b35;overflow:hidden}.eco-cs-category-cta *{box-sizing:border-box}.eco-cs-category-cta span{color:var(--eco-orange);font-size:11px;font-weight:700}.eco-cs-category-cta h2{margin:2px 0 3px;color:var(--eco-green);font-size:20px;line-height:1.7}.eco-cs-category-cta p{margin:0;color:#587069;font-size:11px;line-height:1.9}.eco-cs-category-cta button{flex:0 0 auto;display:inline-flex;align-items:center;gap:9px;min-height:43px;padding:9px 17px;border:0;border-radius:9px;background:var(--eco-green);color:#fff;font:inherit;font-size:11px;font-weight:800;cursor:pointer;box-shadow:0 5px 14px rgba(6,60,50,.16);transition:transform .16s,background .16s}.eco-cs-category-cta button:hover{background:#0a5143;transform:translateY(-1px)}.eco-cs-category-cta button b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:rgba(255,255,255,.13);font-size:12px}@media(max-width:650px){.eco-cs-category-cta{display:block;padding:20px}.eco-cs-category-cta h2{font-size:17px}.eco-cs-category-cta button{width:100%;justify-content:center;margin-top:15px}}
