/* Generated by scripts/build-arc-icons.cjs; edit registry.json / compatibility.css. */
:root {
  --arc-icon-arrow-down: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%205v14%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22m19%2012-7%207-7-7%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  --arc-icon-arrow-up-right: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M7%207h10v10%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M7%2017%2017%207%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  --arc-icon-factory: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2016h.01%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M16%2016h.01%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M3%2019a2%202%200%200%200%202%202h14a2%202%200%200%200%202-2V8.5a.5.5%200%200%200-.769-.422l-4.462%202.844A.5.5%200%200%201%2015%2010.5v-2a.5.5%200%200%200-.769-.422L9.77%2010.922A.5.5%200%200%201%209%2010.5V5a2%202%200%200%200-2-2H5a2%202%200%200%200-2%202z%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M8%2016h.01%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  --arc-icon-droplets: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M7%2016.3c2.2%200%204-1.83%204-4.05%200-1.16-.57-2.26-1.71-3.19S7.29%206.75%207%205.3c-.29%201.45-1.14%202.84-2.29%203.76S3%2011.1%203%2012.25c0%202.22%201.8%204.05%204%204.05z%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M12.56%206.6A10.97%2010.97%200%200%200%2014%203.02c.5%202.5%202%204.9%204%206.5s3%203.5%203%205.5a6.98%206.98%200%200%201-11.91%204.97%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  --arc-icon-recycle: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M7%2019H4.815a1.83%201.83%200%200%201-1.57-.881%201.785%201.785%200%200%201-.004-1.784L7.196%209.5%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M11%2019h8.203a1.83%201.83%200%200%200%201.556-.89%201.784%201.784%200%200%200%200-1.775l-1.226-2.12%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22m14%2016-3%203%203%203%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M8.293%2013.596%207.196%209.5%203.1%2010.598%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22m9.344%205.811%201.093-1.892A1.83%201.83%200%200%201%2011.985%203a1.784%201.784%200%200%201%201.546.888l3.943%206.843%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22m13.378%209.633%204.096%201.098%201.097-4.096%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  --arc-icon-waves-horizontal: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2%2012q2.5%202%205%200t5%200%205%200%205%200%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M2%2019q2.5%202%205%200t5%200%205%200%205%200%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M2%205q2.5%202%205%200t5%200%205%200%205%200%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  --arc-icon-drafting-compass: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m12.99%206.74%201.93%203.44%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M19.136%2012a10%2010%200%200%201-14.271%200%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22m21%2021-2.16-3.84%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22m3%2021%208.02-14.26%22%3E%3C%2Fpath%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%225%22%20r%3D%222%22%3E%3C%2Fcircle%3E%3C%2Fsvg%3E");
  --arc-icon-panels-top-left: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20width%3D%2218%22%20height%3D%2218%22%20x%3D%223%22%20y%3D%223%22%20rx%3D%222%22%3E%3C%2Frect%3E%3Cpath%20d%3D%22M3%209h18%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M9%2021V9%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  --arc-icon-cpu: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2020v2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M12%202v2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M17%2020v2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M17%202v2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M2%2012h2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M2%2017h2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M2%207h2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M20%2012h2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M20%2017h2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M20%207h2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M7%2020v2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M7%202v2%22%3E%3C%2Fpath%3E%3Crect%20x%3D%224%22%20y%3D%224%22%20width%3D%2216%22%20height%3D%2216%22%20rx%3D%222%22%3E%3C%2Frect%3E%3Crect%20x%3D%228%22%20y%3D%228%22%20width%3D%228%22%20height%3D%228%22%20rx%3D%221%22%3E%3C%2Frect%3E%3C%2Fsvg%3E");
  --arc-icon-wrench: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14.7%206.3a1%201%200%200%200%200%201.4l1.6%201.6a1%201%200%200%200%201.4%200l3.106-3.105c.32-.322.863-.22.983.218a6%206%200%200%201-8.259%207.057l-7.91%207.91a1%201%200%200%201-2.999-3l7.91-7.91a6%206%200%200%201%207.057-8.259c.438.12.54.662.219.984z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  --arc-icon-scan-search: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%207V5a2%202%200%200%201%202-2h2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M17%203h2a2%202%200%200%201%202%202v2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M21%2017v2a2%202%200%200%201-2%202h-2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M7%2021H5a2%202%200%200%201-2-2v-2%22%3E%3C%2Fpath%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%223%22%3E%3C%2Fcircle%3E%3Cpath%20d%3D%22m16%2016-1.9-1.9%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  --arc-icon-circle-check-big: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21.801%2010A10%2010%200%201%201%2017%203.335%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22m9%2011%203%203L22%204%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  --arc-icon-arrow-right: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%2012h14%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22m12%205%207%207-7%207%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  --arc-icon-leaf: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M11%2020A7%207%200%200%201%209.8%206.1C15.5%205%2017%204.48%2019%202c1%202%202%204.18%202%208%200%205.5-4.78%2010-10%2010Z%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M2%2021c0-3%201.85-5.36%205.08-6C9.5%2014.52%2012%2013%2013%2012%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  --arc-icon-zap: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M15.914%204a1.5%201.5%200%2000-2.474-1.561l-9%209A1.5%201.5%200%20005.5%2014h4.002a.5.5%200%2001.471.666L8.086%2020a1.5%201.5%200%20002.475%201.56l9-9A1.5%201.5%200%200018.5%2010h-3.997a.5.5%200%2001-.472-.667z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  --arc-icon-coins: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M13.744%2017.736a6%206%200%201%201-7.48-7.48%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M15%206h1v4%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22m6.134%2014.768.866-.5%202%203.464%22%3E%3C%2Fpath%3E%3Ccircle%20cx%3D%2216%22%20cy%3D%228%22%20r%3D%226%22%3E%3C%2Fcircle%3E%3C%2Fsvg%3E");
  --arc-icon-cloud-sun: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%202v2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22m4.93%204.93%201.41%201.41%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M20%2012h2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22m19.07%204.93-1.41%201.41%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M15.947%2012.65a4%204%200%200%200-5.925-4.128%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M13%2022H7a5%205%200%201%201%204.9-6H13a3%203%200%200%201%200%206Z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
}
i.arc-icon.arc-icon-arrow-down, .arc-gb-icon.arc-icon-arrow-down { --arc-icon-mask: var(--arc-icon-arrow-down); }
i.arc-icon.arc-icon-arrow-up-right, .arc-gb-icon.arc-icon-arrow-up-right { --arc-icon-mask: var(--arc-icon-arrow-up-right); }
i.arc-icon.arc-icon-factory, .arc-gb-icon.arc-icon-factory { --arc-icon-mask: var(--arc-icon-factory); }
i.arc-icon.arc-icon-droplets, .arc-gb-icon.arc-icon-droplets { --arc-icon-mask: var(--arc-icon-droplets); }
i.arc-icon.arc-icon-recycle, .arc-gb-icon.arc-icon-recycle { --arc-icon-mask: var(--arc-icon-recycle); }
i.arc-icon.arc-icon-waves-horizontal, .arc-gb-icon.arc-icon-waves-horizontal { --arc-icon-mask: var(--arc-icon-waves-horizontal); }
i.arc-icon.arc-icon-drafting-compass, .arc-gb-icon.arc-icon-drafting-compass { --arc-icon-mask: var(--arc-icon-drafting-compass); }
i.arc-icon.arc-icon-panels-top-left, .arc-gb-icon.arc-icon-panels-top-left { --arc-icon-mask: var(--arc-icon-panels-top-left); }
i.arc-icon.arc-icon-cpu, .arc-gb-icon.arc-icon-cpu { --arc-icon-mask: var(--arc-icon-cpu); }
i.arc-icon.arc-icon-wrench, .arc-gb-icon.arc-icon-wrench { --arc-icon-mask: var(--arc-icon-wrench); }
i.arc-icon.arc-icon-scan-search, .arc-gb-icon.arc-icon-scan-search { --arc-icon-mask: var(--arc-icon-scan-search); }
i.arc-icon.arc-icon-circle-check-big, .arc-gb-icon.arc-icon-circle-check-big { --arc-icon-mask: var(--arc-icon-circle-check-big); }
i.arc-icon.arc-icon-arrow-right, .arc-gb-icon.arc-icon-arrow-right { --arc-icon-mask: var(--arc-icon-arrow-right); }
i.arc-icon.arc-icon-leaf, .arc-gb-icon.arc-icon-leaf { --arc-icon-mask: var(--arc-icon-leaf); }
i.arc-icon.arc-icon-zap, .arc-gb-icon.arc-icon-zap { --arc-icon-mask: var(--arc-icon-zap); }
i.arc-icon.arc-icon-coins, .arc-gb-icon.arc-icon-coins { --arc-icon-mask: var(--arc-icon-coins); }
i.arc-icon.arc-icon-cloud-sun, .arc-gb-icon.arc-icon-cloud-sun { --arc-icon-mask: var(--arc-icon-cloud-sun); }
/* Native icon picker/client templates use i; PHP renders the same registered geometry as SVG. */
i.arc-icon { display: inline-block; width: 1em; height: 1em; background: currentColor; -webkit-mask: var(--arc-icon-mask) center / contain no-repeat; mask: var(--arc-icon-mask) center / contain no-repeat; }
.arc-gb-icon { width: 24px; height: 24px; background: currentColor; -webkit-mask: var(--arc-icon-mask) center/contain no-repeat; mask: var(--arc-icon-mask) center/contain no-repeat; }
svg.arc-icon-svg { fill: none !important; stroke: currentColor; width: 1em; height: 1em; flex-shrink: 0; }
.arc-native-icon .elementor-icon { color: inherit; }
.arc-native-icon { --container-widget-width: auto; width: auto; flex: 0 0 auto; }

/* Already-converted empty text widgets keep their circles, without any DB migration.
   Native icons deliberately cleared/replaced by an editor never receive this fallback. */
.arc-elementor-page .service-card__arrow.elementor-widget-text-editor:has(span:empty):not(:has(svg, i, img))::after {
  content: ''; display: block; width: 24px; height: 24px; background: currentColor;
  -webkit-mask: var(--arc-icon-arrow-up-right) center / contain no-repeat;
  mask: var(--arc-icon-arrow-up-right) center / contain no-repeat;
}
.arc-elementor-page .service-card__arrow.elementor-widget-text-editor > :is(span, p):empty { display: none; }
.arc-elementor-page .service-card__arrow.elementor-widget-text-editor > .elementor-widget-container:has(> span:empty):not(:has(svg, i, img)) { display: none; }
.arc-elementor-page .service-card__arrow .elementor-icon-wrapper { display: flex; align-items: center; justify-content: center; }
.arc-elementor-page .service-card__arrow .elementor-icon { display: flex; color: inherit; }

/* Real Button icons replace the old pseudo-arrow but keep the reference ring and spacing. */
.arc-elementor-page .arc-native-icon-button .elementor-button-icon { display: inline-flex; align-items: center; justify-content: center; color: inherit; font-size: 18px; }
.arc-elementor-page .text-link.arc-native-icon-button .elementor-button-icon { font-size: 17px; }
.arc-elementor-page .arc-native-icon-button .elementor-button-content-wrapper::after { display: none !important; }
.arc-elementor-page .scroll-link.arc-native-icon-button .elementor-button-content-wrapper::before { display: none !important; }
.arc-elementor-page .scroll-link.arc-native-icon-button .elementor-button-icon { width: 46px; height: 46px; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; }
.arc-elementor-page .scroll-link.arc-native-icon-button svg { padding: 0; border: 0; width: 18px; height: 18px; }
.arc-elementor-page .about-hero__explore.arc-native-icon-button .elementor-button-icon { width: 48px; height: 48px; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; }
.arc-elementor-page .about-hero__explore.arc-native-icon-button svg { padding: 0; border: 0; width: 18px; height: 18px; }
.arc-elementor-page .projects-hero__scroll.arc-native-icon-button .elementor-button-icon { width: 45px; height: 45px; border: 1px solid rgba(255,255,255,.42); border-radius: 50%; }
.arc-elementor-page .projects-hero__scroll.arc-native-icon-button svg { padding: 0; border: 0; width: 18px; height: 18px; }
@media (max-width: 650px) { .arc-elementor-page .about-hero__explore.arc-native-icon-button .elementor-button-icon { width: 42px; height: 42px; } }

/* Elementor adds a widget wrapper: keep absolute icon placement on that wrapper. */
.arc-elementor-page .services-process__step > .arc-native-icon { position: absolute; top: 27px; right: 28px; }
.arc-elementor-page .projects-value__item > .arc-native-icon { position: absolute; top: 23px; right: 26px; }
.arc-elementor-page :is(.services-process__step, .projects-value__item) .arc-native-icon svg { position: static; }
@media (max-width: 650px) { .arc-elementor-page .services-process__step > .arc-native-icon { right: 0; } }
