/* ECONUR "Good to know" FAQ + final call to action ([econur_help_cta]). Everything is scoped to .ehc. */
.ehc{ --ehc-teal:#0D585F; --ehc-teal-dark:#0A474D; --ehc-ink:#1E2624; --ehc-muted:#5F5B53; --ehc-line:#EDE6DA; --ehc-sage:#E3E9DD; --ehc-card:#FFFDF9; --ehc-answer:#4F524E;
  --ehc-serif:var(--ecn-font-head, "Fraunces", Georgia, serif);
  position:relative; isolation:isolate; overflow:hidden; border:1px solid #ECE4D4; border-radius:22px; background:#FAF7F0; box-shadow:0 12px 34px rgba(52,44,30,.05); color:var(--ehc-ink); text-align:left; }
.ehc *, .ehc *::before, .ehc *::after{ box-sizing:border-box; }
.ehc .ehc-art{ position:absolute; z-index:0; display:block; max-width:none !important; height:auto !important; margin:0 !important; border-radius:0 !important; box-shadow:none !important; pointer-events:none; user-select:none; }

/* shared type */
.ehc .ehc-eyebrow{ display:flex; align-items:center; justify-content:center; gap:12px; margin:0 0 10px !important; font-size:12px; font-weight:600; line-height:1.2; letter-spacing:.22em; text-transform:uppercase; color:var(--ehc-teal); }
.ehc .ehc-eyebrow::before, .ehc .ehc-eyebrow::after{ content:""; flex:none; width:28px; height:1px; background:currentColor; opacity:.5; }

/* ---------- FAQ ---------- */
.ehc-faq{ position:relative; display:flex; flex-direction:column; gap:22px; padding:34px 18px 0;
  background:linear-gradient(180deg, rgba(247,242,232,0) 72%, #F7F2E8 100%), radial-gradient(70% 45% at 0% 0%, rgba(214,224,200,.38), rgba(214,224,200,0) 70%), linear-gradient(160deg, #F6F1E6 0%, #FAF7F0 55%, #F8F4EA 100%); }
.ehc-faq > *{ position:relative; z-index:1; }
.ehc-faq > .ehc-art--leaves{ z-index:0; top:-22px; left:-30px; width:120px; opacity:.95; }
.ehc-intro{ display:contents; }
.ehc .ehc-eyebrow, .ehc .ehc-title, .ehc .ehc-sub{ order:1; }
.ehc .ehc-title{ margin:0 !important; padding:0 !important; font-family:var(--ehc-serif) !important; font-weight:500 !important; font-size:32px !important; line-height:1.05 !important; letter-spacing:-.015em; color:var(--ehc-ink) !important; text-align:center; }
.ehc .ehc-sub{ max-width:280px; margin:-12px auto 0 !important; font-size:15px; line-height:1.45; color:var(--ehc-muted); text-align:center; }
.ehc-acc{ order:2; }
.ehc-faq .ehc-art--soaps{ order:3; position:relative; z-index:1; width:190px; margin:-12px 0 -2px -18px !important; align-self:flex-start; }

/* accordion: one panel, rows divided by thin lines */
.ehc-acc{ padding:4px 18px; background:var(--ehc-card); border:1px solid rgba(214,202,180,.5); border-radius:20px; box-shadow:0 1px 2px rgba(52,44,30,.025), 0 10px 32px rgba(52,44,30,.035); }
.ehc-item + .ehc-item{ border-top:1px solid var(--ehc-line); }
.ehc .ehc-q{ margin:0 !important; padding:0 !important; font:inherit !important; }
.ehc .ehc-q button{ -webkit-appearance:none; appearance:none; display:flex; align-items:center; justify-content:space-between; gap:14px; width:100%; min-height:66px; margin:0; padding:12px 0; -webkit-tap-highlight-color:transparent; border:0 !important; border-radius:0; background:transparent !important; box-shadow:none !important; color:var(--ehc-ink) !important; font-family:var(--ehc-serif) !important; font-size:16px !important; font-weight:500 !important; line-height:1.3 !important; letter-spacing:0 !important; text-align:left; text-transform:none !important; cursor:pointer; }
@media (hover:hover){ .ehc .ehc-q button:hover .ehc-q-text{ color:var(--ehc-teal); } }
.ehc .ehc-q button:focus, .ehc .ehc-q button:focus-visible, .ehc .ehc-q button:active{ outline:none !important; box-shadow:none !important; }
.ehc .ehc-q button:focus-visible .ehc-q-text{ color:var(--ehc-teal); }
.ehc .ehc-q button:focus-visible .ehc-pm{ box-shadow:0 0 0 3px var(--ehc-card), 0 0 0 5px rgba(13,88,95,.4); }
.ehc-q-text{ transition:color .2s ease; }
.ehc-pm{ position:relative; flex:none; width:38px; height:38px; border-radius:50%; background:var(--ehc-sage); transition:background-color .25s ease, box-shadow .2s ease; }
.ehc-pm::before, .ehc-pm::after{ content:""; position:absolute; top:50%; left:50%; width:14px; height:2px; margin:-1px 0 0 -7px; border-radius:2px; background:var(--ehc-teal); transition:transform .25s ease, background-color .25s ease; }
.ehc-pm::after{ transform:rotate(90deg); }
.ehc-item.is-open .ehc-pm{ background:var(--ehc-teal); }
.ehc-item.is-open .ehc-pm::before, .ehc-item.is-open .ehc-pm::after{ background:#fff; }
.ehc-item.is-open .ehc-pm::after{ transform:rotate(90deg) scaleX(0); }
/* answers slide open (grid rows 0fr -> 1fr); closed answers are hidden from screen readers too */
.ehc-a{ display:grid; grid-template-rows:0fr; transition:grid-template-rows .26s ease; }
.ehc-item.is-open .ehc-a{ grid-template-rows:1fr; }
.ehc-a-in{ min-height:0; overflow:hidden; visibility:hidden; transition:visibility 0s linear .26s; }
.ehc-item.is-open .ehc-a-in{ visibility:visible; transition-delay:0s; }
.ehc .ehc-a p{ max-width:60ch; margin:-2px 0 0 !important; padding:0 0 14px; font-size:15px; line-height:1.6; color:var(--ehc-answer); }
.ehc .ehc-a a{ color:var(--ehc-teal) !important; text-decoration:underline; text-underline-offset:2px; }

/* ---------- CTA ---------- */
.ehc-cta{ position:relative; padding:34px 20px 26px; text-align:center;
  background:linear-gradient(180deg, #F7F2E8 0, rgba(247,242,232,0) 110px), radial-gradient(55% 60% at 100% 100%, rgba(214,224,200,.35), rgba(214,224,200,0) 70%), radial-gradient(40% 55% at 0% 30%, rgba(236,226,206,.6), rgba(236,226,206,0) 70%), linear-gradient(180deg, #F5EEE2 0%, #F3EBDD 100%); }
.ehc-cta > *{ position:relative; z-index:1; }
.ehc-cta > .ehc-art{ z-index:0; }
.ehc-cta > .ehc-art--sprig{ right:-34px; bottom:-18px; width:120px; opacity:.85; transform:rotate(160deg); }
.ehc-cta > .ehc-art--cta-soap{ display:none; }
.ehc .ehc-cta-title{ margin:0 auto !important; padding:0 !important; max-width:16ch; font-family:var(--ehc-serif) !important; font-weight:500 !important; font-size:30px !important; line-height:1.12 !important; letter-spacing:-.015em; color:var(--ehc-ink) !important; }
.ehc .ehc-cta-sub{ max-width:34ch; margin:10px auto 0 !important; font-size:15px; line-height:1.5; color:var(--ehc-muted); }
.ehc-btns{ display:flex; flex-direction:column; gap:12px; margin-top:20px; }
.ehc .ehc-btn{ display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:52px; padding:0 28px; border-radius:999px; font-size:16px; font-weight:600; line-height:1; letter-spacing:0; text-decoration:none !important; transition:background-color .2s ease, color .2s ease, border-color .2s ease; }
.ehc .ehc-btn svg{ flex:none; width:19px; height:19px; }
.ehc .ehc-btn--primary{ border:1.5px solid var(--ehc-teal); background:var(--ehc-teal); color:#fff !important; }
.ehc .ehc-btn--primary:hover, .ehc .ehc-btn--primary:focus-visible{ background:var(--ehc-teal-dark); border-color:var(--ehc-teal-dark); color:#fff !important; }
.ehc .ehc-btn--primary svg{ transition:transform .2s ease; }
.ehc .ehc-btn--primary:hover svg{ transform:translateX(3px); }
.ehc .ehc-btn--wa{ border:1.5px solid var(--ehc-teal); background:var(--ehc-card); color:var(--ehc-teal) !important; }
.ehc .ehc-btn--wa svg{ width:22px; height:22px; }
.ehc .ehc-btn--wa:hover, .ehc .ehc-btn--wa:focus-visible{ background:#EEF3EC; color:var(--ehc-teal-dark) !important; }
.ehc .ehc-btn:focus-visible{ outline:2px solid var(--ehc-teal); outline-offset:3px; }

/* reassurance: compact rows on phones */
.ehc .ehc-trust{ list-style:none; display:flex; flex-direction:column; margin:24px 0 0 !important; padding:0 !important; text-align:left; }
.ehc-trust-item{ display:flex; align-items:center; gap:14px; margin:0 !important; padding:10px 4px; }
.ehc-trust-item + .ehc-trust-item{ border-top:1px solid rgba(186,176,156,.35); }
.ehc-trust-ico{ flex:none; display:grid; place-items:center; width:44px; height:44px; border-radius:50%; background:#E6ECDF; color:var(--ehc-teal); }
.ehc-trust-ico svg{ width:21px; height:21px; }
.ehc-trust-copy{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.ehc-trust-copy b{ font-family:var(--ehc-serif); font-size:16px; font-weight:500; line-height:1.25; color:var(--ehc-ink); }
.ehc-trust-copy span{ font-size:13px; line-height:1.35; color:var(--ehc-muted); }

@media (hover:hover){ .ehc .ehc-btn--primary:hover{ box-shadow:0 8px 20px rgba(13,88,95,.18); } }
@media (prefers-reduced-motion:reduce){ .ehc-a, .ehc-a-in, .ehc-pm, .ehc-pm::before, .ehc-pm::after, .ehc .ehc-btn, .ehc .ehc-btn svg{ transition:none !important; } }

@media (max-width:359px){
  .ehc .ehc-title{ font-size:29px !important; }
  .ehc .ehc-cta-title{ font-size:27px !important; }
  .ehc-acc{ padding:4px 14px; }
  .ehc .ehc-q button{ font-size:15.5px !important; }
}

/* ---------- tablets: intro above the accordion, CTA in a row ---------- */
@media (min-width:700px){
  .ehc{ border-radius:24px; }
  .ehc-faq{ gap:26px; padding:44px 36px 0; }
  .ehc-faq > .ehc-art--leaves{ top:-30px; left:-40px; width:200px; }
  .ehc .ehc-eyebrow{ font-size:12.5px; }
  .ehc .ehc-eyebrow::before, .ehc .ehc-eyebrow::after{ width:36px; }
  .ehc .ehc-title{ font-size:44px !important; }
  .ehc .ehc-sub{ margin-top:-14px !important; font-size:18px; }
  .ehc-acc{ padding:6px 28px; }
  .ehc .ehc-q button{ min-height:74px; font-size:19px !important; }
  .ehc-pm{ width:42px; height:42px; }
  .ehc .ehc-a p{ padding-right:56px; font-size:15.5px; }
  .ehc-faq .ehc-art--soaps{ width:260px; margin:-16px 0 -4px -36px !important; }
  .ehc-cta{ padding:44px 36px 34px; }
  .ehc-cta > .ehc-art--sprig{ right:-40px; bottom:-26px; width:170px; }
  .ehc-cta > .ehc-art--cta-soap{ display:block; right:-30px; bottom:-40px; width:170px; opacity:.95; }
  .ehc .ehc-cta-title{ max-width:none; font-size:38px !important; }
  .ehc .ehc-cta-sub{ max-width:none; font-size:16.5px; }
  .ehc-btns{ flex-direction:row; justify-content:center; gap:16px; margin-top:26px; }
  .ehc .ehc-btn{ min-height:54px; padding:0 34px; }
  .ehc .ehc-trust{ flex-direction:row; justify-content:center; margin-top:32px !important; }
  .ehc-trust-item{ padding:0 22px; }
  .ehc-trust-item + .ehc-trust-item{ border-top:0; border-left:1px solid rgba(186,176,156,.45); }
  .ehc-trust-ico{ width:52px; height:52px; }
  .ehc-trust-copy b{ font-size:16.5px; }
}

/* ---------- desktop: intro and soap art beside the accordion ---------- */
@media (min-width:1000px){
  .ehc{ border-radius:26px; }
  .ehc-faq{ display:grid; grid-template-columns:minmax(0,39fr) minmax(0,61fr); align-items:stretch; gap:30px; padding:46px 40px 46px 44px; }
  .ehc-intro{ display:flex; flex-direction:column; align-items:center; padding-top:64px; text-align:center; }
  .ehc .ehc-eyebrow{ margin-bottom:12px !important; font-size:13px; }
  .ehc .ehc-eyebrow::before, .ehc .ehc-eyebrow::after{ width:40px; }
  .ehc .ehc-title{ font-size:52px !important; }
  .ehc .ehc-sub{ max-width:280px; margin:14px auto 0 !important; font-size:21px; line-height:1.4; }
  .ehc-faq > .ehc-art--leaves{ top:-34px; left:-44px; width:250px; }
  .ehc-faq .ehc-art--soaps{ width:360px; margin:auto 0 -46px -44px !important; padding-top:24px; }
  .ehc-acc{ align-self:start; padding:8px 32px; }
  .ehc .ehc-q button{ min-height:76px; font-size:19px !important; }
  .ehc-pm{ width:44px; height:44px; }
  .ehc-pm::before, .ehc-pm::after{ width:15px; margin-left:-7.5px; }
  .ehc .ehc-a p{ margin-top:-6px !important; padding:0 64px 16px 0; font-size:15.5px; line-height:1.6; }
  .ehc-cta{ padding:52px 60px 40px; }
  .ehc-cta > .ehc-art--sprig{ left:-46px; right:auto; bottom:-30px; width:220px; transform:rotate(200deg) scaleX(-1); opacity:.8; }
  .ehc-cta > .ehc-art--cta-soap{ right:-26px; bottom:-54px; width:240px; }
  .ehc .ehc-cta-title{ font-size:46px !important; }
  .ehc .ehc-cta-sub{ margin-top:14px !important; font-size:17.5px; }
  .ehc-btns{ margin-top:28px; }
  .ehc .ehc-btn{ min-height:56px; padding:0 38px; font-size:16.5px; }
  .ehc .ehc-trust{ margin-top:36px !important; }
  .ehc-trust-item{ padding:0 30px; }
  .ehc-trust-copy b{ font-size:17px; }
  .ehc-trust-copy span{ font-size:13.5px; }
}
/* art placement: clear of every line of text */
.ehc-faq .ehc-art--soaps{ transform:scaleX(-1); }
@media (max-width:699px){
  .ehc-faq > .ehc-art--leaves{ top:-30px; left:-40px; width:96px; }
  .ehc-faq .ehc-art--soaps{ margin:-12px -18px -2px auto !important; align-self:flex-end; }
}
@media (min-width:700px) and (max-width:999px){
  .ehc-faq .ehc-art--soaps{ margin:-16px -36px -4px auto !important; align-self:flex-end; }
}
@media (min-width:1000px){
  .ehc-faq > .ehc-art--leaves{ top:-48px; left:-54px; width:184px; opacity:.88; }
  .ehc-intro{ padding-top:72px; }
  .ehc-faq .ehc-art--soaps{ width:340px; margin:auto 0 -46px -44px !important; transform:translateY(-36px) scaleX(-1); }
  .ehc-cta > .ehc-art--sprig{ left:-58px; bottom:-56px; width:180px; }
  .ehc-cta > .ehc-art--cta-soap{ right:-40px; bottom:-78px; width:200px; }
}
@media (max-width:699px){
  .ehc-faq .ehc-art--soaps{ width:150px; margin:-14px auto -2px -18px !important; align-self:flex-start; }
}
@media (min-width:1000px){
  .ehc-cta > .ehc-art--cta-soap{ right:-26px; bottom:-60px; width:170px; }
}
/* narrow phones and tablets: CTA art would reach the trust rows, so it steps aside */
@media (max-width:374px){ .ehc-cta > .ehc-art--sprig{ display:none; } }
@media (min-width:700px) and (max-width:999px){ .ehc-cta > .ehc-art--sprig, .ehc-cta > .ehc-art--cta-soap{ display:none; } }
@media (min-width:1000px) and (max-width:1199px){
  .ehc-faq > .ehc-art--leaves{ top:-52px; left:-58px; width:150px; opacity:.88; }
  .ehc-cta > .ehc-art--cta-soap{ display:none; }
}
/* questions and reassurance titles in the reference's regular-weight serif (same self-hosted file the review section
   uses, under this section's own name so nothing else changes) */
@font-face{ font-family:"EHC Fraunces Text"; font-style:normal; font-weight:400; font-display:swap; src:url("/wp-content/plugins/econur-reviews/assets/fraunces-400-latin.woff2") format("woff2"); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
.ehc .ehc-q button, .ehc-trust-copy b{ font-family:"EHC Fraunces Text", var(--ehc-serif) !important; font-weight:400 !important; }
/* desktop: CTA closer to the reference's proportions */
@media (min-width:1000px){
  .ehc-cta{ padding:34px 60px 32px; }
  .ehc-cta .ehc-eyebrow{ margin-bottom:10px !important; }
  .ehc .ehc-cta-sub{ margin-top:10px !important; }
  .ehc-btns{ margin-top:24px; }
  .ehc .ehc-trust{ margin-top:28px !important; }
}
/* soap composition fades out at its base instead of ending on a hard edge */
.ehc-faq .ehc-art--soaps{ -webkit-mask-image:linear-gradient(to top, transparent 0, #000 16%); mask-image:linear-gradient(to top, transparent 0, #000 16%); }
