:root{
  --slate:#2A3A4B;
  --slate-deep:#1B2733;
  --stone:#EEF0F2;
  --stone-2:#DEE2E6;
  --ink:#1C2530;
  --ink-2:#4C5A68;
  --green:#3F7D4E;
  --green-soft:#DCEBDF;
  --amber:#D9A21B;
  --red:#C0392B;
  --paper:#FFFFFF;
  --serif:"Source Serif 4",Georgia,"Times New Roman",serif;
  --sans:"Source Sans 3","Helvetica Neue",Arial,sans-serif;
  --w:1120px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--sans);font-size:17px;line-height:1.55;color:var(--ink);background:var(--paper)}
body.elementor-page{margin:0}
h1,h2,h3,h4,h5,h6{font-family:var(--serif);font-weight:600;line-height:1.15;color:var(--ink);margin:0 0 .5em}
h1{font-size:clamp(2.1rem,4.2vw,3.4rem);letter-spacing:-.01em}
h2{font-size:clamp(1.6rem,2.8vw,2.3rem)}
h3{font-size:1.25rem}
p{margin:0 0 1em;max-width:62ch}
a{color:var(--slate);text-decoration-thickness:1px;text-underline-offset:3px}
img{max-width:100%;height:auto}
.wrap{max-width:var(--w);margin:0 auto;padding:0 24px;width:100%}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}

/* Header */
.site-header{position:sticky;top:0;z-index:999;background:rgba(255,255,255,.96);border-bottom:1px solid var(--stone-2);backdrop-filter:blur(6px)}
.admin-bar .site-header{top:32px}
.site-header__inner{max-width:var(--w);margin:0 auto;padding:0 24px;height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.site-logo{display:flex;align-items:center;text-decoration:none;flex:0 0 auto}
.site-logo__image,.custom-logo{height:42px;width:auto;display:block}
.site-menu{display:flex;align-items:center;gap:4px;list-style:none;padding:0;margin:0;flex-wrap:wrap}
.site-menu a{display:block;font-size:.98rem;color:var(--ink-2);text-decoration:none;padding:8px 12px;border-radius:6px}
.site-menu a:hover,.site-menu .current-menu-item>a{background:var(--stone);color:var(--ink)}
.site-menu li:last-child>a{color:var(--green);font-weight:600}
.menu-toggle{display:none;border:0;background:transparent;padding:8px;cursor:pointer}
.menu-toggle>span:not(.screen-reader-text){display:block;width:25px;height:2px;background:var(--slate);margin:5px 0}

/* Elementor page sections */
.eco-section.e-con{padding:72px 0!important;max-width:none!important;--content-width:100%!important;--width:100%!important;--gap:0px!important}
.eco-section.tight.e-con{padding:48px 0!important}
.eco-section.stone{background:var(--stone)}
.eco-section.slate{background:var(--slate);color:#fff}
.eco-section.slate h1,.eco-section.slate h2,.eco-section.slate h3,.slate h1,.slate h2,.slate h3{color:#fff}
.eco-section.slate p,.slate p{color:#E6EAEE}
.eco-section.slate a,.slate a{color:#fff}
.eco-section .elementor-widget-html,.eco-section .elementor-widget-container{width:100%}
.lead{font-size:1.2rem;color:var(--ink-2);max-width:56ch}
.slate .lead{color:#D5DCE3}

/* Buttons */
.btn,.elementor-button{display:inline-block;font:inherit;font-weight:600;padding:12px 20px;border-radius:6px;border:1px solid var(--slate);background:var(--slate);color:#fff;text-decoration:none;cursor:pointer;transition:.2s ease}
.btn:hover,.elementor-button:hover{transform:translateY(-1px);opacity:.94}
.btn.ghost{background:transparent;color:var(--slate)}
.slate .btn.ghost{color:#fff;border-color:#fff}
.slate .btn{background:#fff;color:var(--slate);border-color:#fff}
.btnrow{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.btn:focus-visible,.menu-toggle:focus-visible,.site-menu a:focus-visible{outline:2px solid var(--green);outline-offset:2px}

/* Layout */
.g2{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.g2.lean{grid-template-columns:.72fr 1.75fr;gap:36px}
.g2.evencol>div{display:flex;flex-direction:column;height:100%}
.g2.evencol>div p{flex:1 0 auto}.g2.evencol .btn{align-self:flex-start}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.item{border-top:2px solid var(--slate);padding-top:16px}
.item h3{margin-bottom:.35em}.item p{color:var(--ink-2);font-size:1rem;margin:0}.stone .item{border-top-color:var(--green)}
.claim{font-family:var(--serif);font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1.25;max-width:26ch;margin:0}

/* Steps */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--stone-2);border-radius:8px;overflow:hidden}
.steps>div{padding:24px;border-right:1px solid var(--stone-2)}.steps>div:last-child{border-right:0}
.steps.stack>div{padding:16px 20px;display:grid;grid-template-columns:44px 1fr;column-gap:14px;align-items:baseline}
.steps.stack .n{font-size:1.6rem;grid-row:span 2}.steps.stack h3{margin:0 0 .15em;font-size:1.1rem}.steps.stack p{grid-column:2}
.steps .n{font-family:var(--serif);font-size:2rem;color:var(--green);line-height:1}.steps h3{margin:.4em 0 .3em}.steps p{font-size:.98rem;color:var(--ink-2);margin:0}

/* Tables and cards */
table{width:100%;border-collapse:collapse;font-size:.98rem}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--stone-2);vertical-align:top}th{font-weight:600;color:var(--ink-2)}
.slate th,.slate td{border-bottom-color:#4A5B6C}.slate th{color:#fff;font-family:var(--serif);font-size:1.05rem}.slate td{color:#E6EAEE}
.sem{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.sem>div{padding:18px 20px;border-radius:8px;border:1px solid var(--stone-2);background:#fff}.sem>div span{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:8px;vertical-align:middle}.sem h3{font-size:1.05rem;margin:0 0 .3em}.sem p{font-size:.95rem;color:var(--ink-2);margin:0}
.protocol{margin-top:40px;border-left:4px solid var(--green);background:var(--stone);padding:28px 32px;border-radius:0 8px 8px 0}.protocol h3{margin-bottom:.4em}.protocol p{margin:0;max-width:78ch;color:var(--ink-2)}
.slate .protocol{background:rgba(255,255,255,.08)}
.pilot{border:1px solid var(--stone-2);border-radius:8px;padding:28px;background:#fff}.pilot .tag{display:inline-block;font-size:.85rem;padding:3px 10px;border-radius:999px;background:var(--green-soft);color:var(--green);margin-bottom:12px}.pilot p{font-size:1rem}

/* Images / map */
.map{width:100%;height:auto;display:block}.legend{display:flex;gap:18px;font-size:.92rem;color:var(--ink-2);margin-top:10px;flex-wrap:wrap}.legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:middle}
figure{margin:0}.photo{display:block;width:100%;border-radius:8px;object-fit:cover;background:var(--stone-2)}.photo.hero{aspect-ratio:4/3}.photo.card{aspect-ratio:16/9;margin-bottom:20px}.photo.wide{height:auto}figcaption{font-size:.88rem;color:var(--ink-2);margin-top:8px;max-width:62ch}.slate figcaption{color:#C9D2DB}

/* Forms + placeholders */
.form,.eco-form{display:grid;gap:14px;max-width:520px}.form label,.eco-form label{font-size:.92rem;color:var(--ink-2)}.form input,.form textarea,.form select,.eco-form input,.eco-form textarea,.eco-form select{font:inherit;width:100%;padding:11px 12px;border:1px solid #AAB4BE;border-radius:6px;background:#fff}.form textarea,.eco-form textarea{min-height:120px}.req{color:var(--red)}
.form .check{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;font-size:.92rem;color:var(--ink-2);margin-top:4px}.form .check input{width:auto;padding:0;margin-top:3px}
small.note{display:block;color:var(--ink-2);font-size:.9rem;margin-top:8px}
.ph,.eco-placeholder{border:1.5px dashed #8A98A6;border-radius:6px;background:repeating-linear-gradient(135deg,transparent 0 12px,rgba(42,58,75,.04) 12px 14px);color:var(--ink-2);padding:20px;font-size:.95rem;display:flex;align-items:center;justify-content:center;text-align:center;min-height:120px}.ph.tall{min-height:280px}.ph.inline,.eco-placeholder--inline{display:inline;padding:2px 8px;min-height:0;border-width:1px;border-radius:4px;font-size:inherit;color:var(--ink-2)}.slate .ph{border-color:#8FA2B5;color:#C9D2DB;background:repeating-linear-gradient(135deg,transparent 0 12px,rgba(255,255,255,.05) 12px 14px)}

/* Footer */
.site-footer{background:var(--slate-deep);color:#C9D2DB;padding:40px 0;font-size:.95rem}.site-footer__inner{max-width:var(--w);margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.site-footer a{color:#fff}.site-footer__logo{height:52px;width:auto;display:block;margin-bottom:12px}.site-footer__contacts>div+div{margin-top:8px}.site-footer .eco-placeholder{border-color:#8FA2B5;color:#C9D2DB}
.eco-default-content{padding:72px 0;min-height:60vh}

@media(max-width:900px){
  .admin-bar .site-header{top:46px}
  .menu-toggle{display:block}
  .site-navigation{position:absolute;left:0;right:0;top:76px;background:#fff;border-bottom:1px solid var(--stone-2);padding:12px 24px 18px;display:none}
  .site-navigation.is-open{display:block}.site-menu{display:block}.site-menu li{width:100%}.site-menu a{padding:10px 8px}
  .g2,.g3,.g4,.g2.lean{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}.steps>div{border-right:0;border-bottom:1px solid var(--stone-2)}.steps>div:last-child{border-bottom:0}
  .sem{grid-template-columns:1fr}
}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:600px){
  .site-header{top:0!important}.site-header__inner{height:68px;padding:0 18px}.site-navigation{top:68px}.site-logo__image,.custom-logo{height:36px}
  .eco-section.e-con{padding:52px 0!important}.eco-section.tight.e-con{padding:36px 0!important}.wrap{padding:0 20px}
  body{font-size:16px}.btnrow{gap:8px}.btn{width:100%;text-align:center}
  table{display:block;overflow-x:auto;white-space:normal}.site-footer__inner{padding:0 20px}
}

/* Elementor native widgets - Import Ecospheris 2 */
.eco-section>.wrap.e-con,
.eco-section .wrap.e-con{max-width:var(--w)!important;width:100%!important;margin-left:auto!important;margin-right:auto!important;padding-left:24px!important;padding-right:24px!important;--width:100%!important}
.eco-section .g2>.e-con,.eco-section .g3>.e-con,.eco-section .g4>.e-con,.eco-section .steps>.e-con,.eco-section .sem>.e-con{width:auto!important;max-width:none!important}
.eco-section .elementor-widget-heading .elementor-heading-title{font-family:var(--serif);font-weight:600;line-height:1.15;color:var(--ink)}
.eco-section .elementor-widget-heading h1.elementor-heading-title{font-size:clamp(2.1rem,4.2vw,3.4rem);letter-spacing:-.01em}
.eco-section .elementor-widget-heading h2.elementor-heading-title{font-size:clamp(1.6rem,2.8vw,2.3rem)}
.eco-section .elementor-widget-heading h3.elementor-heading-title{font-size:1.25rem}
.eco-section .elementor-widget-text-editor{font-family:var(--sans);font-size:17px;line-height:1.55;color:var(--ink)}
.eco-section .elementor-widget-text-editor p:last-child{margin-bottom:0}
.eco-section .lead,.eco-section .lead .elementor-widget-container,.eco-section .lead p{font-size:1.2rem;color:var(--ink-2);max-width:56ch}
.eco-section.slate .elementor-heading-title,.eco-section.slate .elementor-widget-text-editor{color:#fff}
.eco-section.slate .elementor-widget-text-editor p{color:#E6EAEE}
.eco-section.slate .lead,.eco-section.slate .lead p{color:#D5DCE3}
.eco-section .claim,.eco-section .claim .elementor-widget-container,.eco-section .claim p{font-family:var(--serif);font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1.25;max-width:26ch}
.eco-section .eco-btn{width:auto!important;max-width:max-content!important}
.eco-section .eco-btn .elementor-button{font-family:var(--sans);font-weight:600;padding:12px 20px;border-radius:6px;border:1px solid var(--slate);background:var(--slate);color:#fff;text-decoration:none}
.eco-section .eco-btn.ghost .elementor-button{background:transparent;color:var(--slate)}
.eco-section.slate .eco-btn .elementor-button{background:#fff;color:var(--slate);border-color:#fff}
.eco-section.slate .eco-btn.ghost .elementor-button{background:transparent;color:#fff;border-color:#fff}
.eco-section .btnrow.e-con{display:flex!important;flex-direction:row!important;gap:12px!important;flex-wrap:wrap!important;margin-top:24px}
.eco-section .btnrow>.elementor-element{width:auto!important;max-width:max-content!important}
.eco-section .photo img{display:block;width:100%;border-radius:8px;object-fit:cover;background:var(--stone-2)}
.eco-section .photo.hero img{aspect-ratio:4/3}.eco-section .photo.card img{aspect-ratio:16/9}.eco-section .photo.wide img{height:auto}
.eco-section .map img{display:block;width:100%;height:auto}
.eco-section .item{border-top:2px solid var(--slate);padding-top:16px}.eco-section.stone .item{border-top-color:var(--green)}
.eco-section .item .elementor-widget-heading h3{margin-bottom:.35em}.eco-section .item .elementor-widget-text-editor,.eco-section .item p{color:var(--ink-2);font-size:1rem}
.eco-section .steps .n .elementor-heading-title{font-family:var(--serif);font-size:2rem;color:var(--green);line-height:1}
.eco-section .steps.stack .n .elementor-heading-title{font-size:1.6rem}
.eco-section .steps.stack>.e-con{display:grid!important;grid-template-columns:44px 1fr;column-gap:14px;align-items:baseline}
.eco-section .steps.stack>.e-con>.n{grid-row:span 2}.eco-section .steps.stack>.e-con>.elementor-widget-text-editor{grid-column:2}
.eco-section .sem-dot .elementor-heading-title:before{content:"";display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:8px;vertical-align:middle}
.eco-section .sem-green .elementor-heading-title:before{background:var(--green)}.eco-section .sem-amber .elementor-heading-title:before{background:var(--amber)}.eco-section .sem-red .elementor-heading-title:before{background:var(--red)}
.eco-section .protocol.e-con{margin-top:40px;border-left:4px solid var(--green);background:var(--stone);padding:28px 32px;border-radius:0 8px 8px 0}.eco-section.slate .protocol.e-con{background:rgba(255,255,255,.08)}
.eco-section .pilot.e-con{border:1px solid var(--stone-2);border-radius:8px;padding:28px;background:#fff}
.eco-section .tag{width:auto!important;max-width:max-content!important;font-size:.85rem;padding:3px 10px;border-radius:999px;background:var(--green-soft);color:var(--green);margin-bottom:12px}
.eco-section .note,.eco-section .note .elementor-widget-container{color:var(--ink-2);font-size:.9rem;margin-top:8px}
.eco-section .eco-placeholder{border:1.5px dashed #8A98A6;border-radius:6px;background:repeating-linear-gradient(135deg,transparent 0 12px,rgba(42,58,75,.04) 12px 14px);color:var(--ink-2);padding:20px;font-size:.95rem;display:flex;align-items:center;justify-content:center;text-align:center;min-height:120px}
.eco-section .ph.inline{display:inline;padding:2px 8px;min-height:0;border:1px dashed #8A98A6;border-radius:4px;color:var(--ink-2)}
.eco-section .ecospheris-table-wrap{width:100%;overflow-x:auto}
.eco-section .ecospheris-form__message{margin-top:12px;font-weight:600;color:var(--green)}
.eco-hidden{display:none!important}.elementor-editor-active .eco-hidden{display:flex!important;opacity:.45}
@media(max-width:900px){.eco-section .g2,.eco-section .g3,.eco-section .g4{grid-template-columns:1fr}.eco-section .steps{grid-template-columns:1fr!important}.eco-section .steps.stack>.e-con{grid-template-columns:44px 1fr!important}.eco-section .sem{grid-template-columns:1fr}}
@media(max-width:600px){.eco-section>.wrap.e-con,.eco-section .wrap.e-con{padding-left:20px!important;padding-right:20px!important}.eco-section .btnrow.e-con{flex-direction:column!important}.eco-section .btnrow>.elementor-element,.eco-section .eco-btn{width:100%!important;max-width:none!important}.eco-section .eco-btn .elementor-button{width:100%;text-align:center}}

/* ==========================================================
   Elementor layout hardening — Ecospheris 3.0
   Keeps native Elementor widgets editable while preventing
   Kit/global styles from breaking the imported mockup layout.
   ========================================================== */
body .eco-section.e-con,
body .eco-section.elementor-element{
  --display:flex!important;
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  max-width:none!important;
  padding:72px 0!important;
  margin:0!important;
  gap:0!important;
}
body .eco-section.tight.e-con{padding-top:48px!important;padding-bottom:48px!important}
body .eco-section>.wrap.e-con,
body .eco-section .wrap.e-con{
  width:min(100%, var(--w))!important;
  max-width:var(--w)!important;
  margin:0 auto!important;
  padding-left:24px!important;
  padding-right:24px!important;
}
/* Native grid containers + CSS fallback for older Elementor CSS caches. */
body .eco-section .g2.e-con:not(.lean){--display:grid!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:40px!important;align-items:start!important}
body .eco-section .g3.e-con{--display:grid!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:28px!important;align-items:start!important}
body .eco-section .g4.e-con{--display:grid!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:24px!important;align-items:start!important}
body .eco-section .g2.lean.e-con{--display:grid!important;display:grid!important;grid-template-columns:minmax(0,.72fr) minmax(0,1.75fr)!important;gap:36px!important;align-items:start!important}
body .eco-section .steps.e-con{--display:grid!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important}
body .eco-section .sem.e-con{--display:grid!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}
body .eco-section .g2.e-con>.e-con,
body .eco-section .g3.e-con>.e-con,
body .eco-section .g4.e-con>.e-con,
body .eco-section .steps.e-con>.e-con,
body .eco-section .sem.e-con>.e-con{width:100%!important;max-width:none!important;min-width:0!important}

body .eco-section .btnrow.e-con{
  --display:flex!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  margin-top:24px!important;
}
body .eco-section .btnrow.e-con>.elementor-element{width:auto!important;max-width:max-content!important;flex:0 0 auto!important}

/* Elementor Kit global colors/typography must not overwrite mockup defaults. */
body .eco-section .elementor-widget-heading .elementor-heading-title{
  color:var(--ink)!important;
  font-family:var(--serif)!important;
  font-weight:600!important;
  line-height:1.15!important;
  margin:0!important;
}
body .eco-section .elementor-widget-heading h1.elementor-heading-title{font-size:clamp(2.1rem,4.2vw,3.4rem)!important;letter-spacing:-.01em!important}
body .eco-section .elementor-widget-heading h2.elementor-heading-title{font-size:clamp(1.6rem,2.8vw,2.3rem)!important}
body .eco-section .elementor-widget-heading h3.elementor-heading-title{font-size:1.25rem!important}
body .eco-section .elementor-widget-text-editor,
body .eco-section .elementor-widget-text-editor p,
body .eco-section .elementor-widget-text-editor li{
  color:var(--ink)!important;
  font-family:var(--sans)!important;
  font-size:17px!important;
  line-height:1.55!important;
}
body .eco-section .elementor-widget-text-editor p{max-width:62ch}
body .eco-section .lead,
body .eco-section .lead .elementor-widget-container,
body .eco-section .lead p{font-size:1.2rem!important;color:var(--ink-2)!important;max-width:56ch!important}
body .eco-section.slate .elementor-widget-heading .elementor-heading-title{color:#fff!important}
body .eco-section.slate .elementor-widget-text-editor,
body .eco-section.slate .elementor-widget-text-editor p,
body .eco-section.slate .elementor-widget-text-editor li{color:#E6EAEE!important}
body .eco-section.slate .lead,
body .eco-section.slate .lead p{color:#D5DCE3!important}
body .eco-section .claim,
body .eco-section .claim .elementor-widget-container,
body .eco-section .claim p{font-family:var(--serif)!important;font-size:clamp(1.5rem,2.6vw,2.1rem)!important;line-height:1.25!important;max-width:26ch!important;color:var(--ink)!important}

/* Buttons: native Elementor Button widgets, with reliable mockup styling. */
body .eco-section .eco-btn.elementor-widget-button{width:auto!important;max-width:max-content!important}
body .eco-section .eco-btn .elementor-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-height:46px!important;
  padding:12px 20px!important;
  border:1px solid var(--slate)!important;
  border-radius:6px!important;
  background:var(--slate)!important;
  color:#fff!important;
  font-family:var(--sans)!important;
  font-size:16px!important;
  font-weight:600!important;
  line-height:1.25!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
body .eco-section .eco-btn.ghost .elementor-button{background:transparent!important;color:var(--slate)!important}
body .eco-section.slate .eco-btn .elementor-button{background:#fff!important;color:var(--slate)!important;border-color:#fff!important}
body .eco-section.slate .eco-btn.ghost .elementor-button{background:transparent!important;color:#fff!important;border-color:#fff!important}

/* Images */
body .eco-section .elementor-widget-image{width:100%!important}
body .eco-section .elementor-widget-image img{max-width:100%!important;height:auto!important}
body .eco-section .map img{display:block!important;width:100%!important;aspect-ratio:520/380!important;object-fit:contain!important}
body .eco-section .photo img{display:block!important;width:100%!important;border-radius:8px!important;object-fit:cover!important;background:var(--stone-2)!important}
body .eco-section .photo.hero img{aspect-ratio:4/3!important}
body .eco-section .photo.card img{aspect-ratio:16/9!important}
body .eco-section .photo.wide img{height:auto!important;aspect-ratio:auto!important}

/* Cards / spacing */
body .eco-section .item.e-con{display:flex!important;flex-direction:column!important;gap:6px!important;border-top:2px solid var(--slate)!important;padding-top:16px!important}
body .eco-section.stone .item.e-con{border-top-color:var(--green)!important}
body .eco-section .item .elementor-widget-text-editor,
body .eco-section .item .elementor-widget-text-editor p{color:var(--ink-2)!important;font-size:1rem!important}
body .eco-section .steps.e-con{border:1px solid var(--stone-2)!important;border-radius:8px!important;overflow:hidden!important}
body .eco-section .steps.e-con>.e-con{padding:24px!important;border-right:1px solid var(--stone-2)!important}
body .eco-section .steps.e-con>.e-con:last-child{border-right:0!important}
body .eco-section .steps.stack.e-con>.e-con{display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;column-gap:14px!important;row-gap:0!important;align-items:baseline!important;padding:16px 20px!important}
body .eco-section .steps .n,
body .eco-section .steps .n .elementor-widget-container,
body .eco-section .steps .n p{font-family:var(--serif)!important;font-size:2rem!important;line-height:1!important;color:var(--green)!important;margin:0!important}
body .eco-section .steps.stack .n,
body .eco-section .steps.stack .n p{font-size:1.6rem!important;grid-row:span 2}
body .eco-section .steps.stack>.e-con>.elementor-widget-text-editor:last-child{grid-column:2}
body .eco-section .sem.e-con>.e-con{padding:18px 20px!important;border-radius:8px!important;border:1px solid var(--stone-2)!important;background:#fff!important}
body .eco-section .protocol.e-con{margin-top:40px!important;border-left:4px solid var(--green)!important;background:var(--stone)!important;padding:28px 32px!important;border-radius:0 8px 8px 0!important}
body .eco-section.slate .protocol.e-con{background:rgba(255,255,255,.08)!important}

/* Legend is still a native Text Editor widget. */
body .eco-section .legend .elementor-widget-container{display:flex!important;gap:18px!important;flex-wrap:wrap!important;margin-top:10px!important}
body .eco-section .legend span{display:inline-flex!important;align-items:center!important;gap:6px!important;color:var(--ink-2)!important;font-size:.92rem!important}
body .eco-section .legend i{display:inline-block!important;width:10px!important;height:10px!important;border-radius:50%!important;flex:0 0 10px!important}

@media(max-width:900px){
  body .eco-section .g2.e-con,
  body .eco-section .g2.lean.e-con,
  body .eco-section .g3.e-con,
  body .eco-section .g4.e-con,
  body .eco-section .steps.e-con,
  body .eco-section .sem.e-con{grid-template-columns:minmax(0,1fr)!important}
  body .eco-section .steps.e-con>.e-con{border-right:0!important;border-bottom:1px solid var(--stone-2)!important}
  body .eco-section .steps.e-con>.e-con:last-child{border-bottom:0!important}
}
@media(max-width:600px){
  body .eco-section.e-con{padding-top:52px!important;padding-bottom:52px!important}
  body .eco-section.tight.e-con{padding-top:36px!important;padding-bottom:36px!important}
  body .eco-section>.wrap.e-con,body .eco-section .wrap.e-con{padding-left:20px!important;padding-right:20px!important}
  body .eco-section .btnrow.e-con{flex-direction:column!important;width:100%!important}
  body .eco-section .btnrow.e-con>.elementor-element,
  body .eco-section .eco-btn.elementor-widget-button{width:100%!important;max-width:none!important}
  body .eco-section .eco-btn .elementor-button{width:100%!important}
  body .eco-section .elementor-widget-heading h1.elementor-heading-title{font-size:2.15rem!important}
  body .eco-section .elementor-widget-heading h2.elementor-heading-title{font-size:1.75rem!important}
  body .eco-section .elementor-widget-text-editor,
  body .eco-section .elementor-widget-text-editor p{font-size:16px!important}
}
