/* ENERTERNAL: shared static-site accessibility and resilience layer. */
:root { --etx-ink:#15312d; --etx-accent:#0e765d; --etx-line:#d6e4de; }
html { scroll-padding-top:100px; }
body { margin:0; }
[hidden] { display:none !important; }
img { max-width:100%; }
main { min-width:0; }
:where(a,button,input,select,textarea,summary):focus-visible { outline:3px solid #d48b22!important; outline-offset:4px!important; }
.etx-skip { position:fixed;top:-100px;left:16px;z-index:999999;background:#fff;color:#15312d;padding:12px 18px;border:2px solid #0e765d; }
.etx-skip:focus { top:12px; }
.etx-header { background:#fff; color:var(--etx-ink); border-bottom:1px solid var(--etx-line);font:500 15px/1.5 Arial,sans-serif;position:relative;z-index:1000; }
.etx-header-inner { max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 24px; }
.etx-brand { color:#15312d;text-decoration:none;font-weight:800;font-size:23px;letter-spacing:1px;white-space:nowrap; }
.etx-nav { display:flex;align-items:center;gap:22px;flex-wrap:wrap; }
.etx-nav a { text-decoration:none;color:inherit; }
.etx-nav a:hover,.etx-nav a[aria-current=page] { color:#0e765d;text-decoration:underline;text-underline-offset:5px; }
.etx-nav .etx-cta { background:#0e765d;color:#fff;padding:10px 16px;border-radius:6px; }
.etx-menu { position:relative; }
.etx-menu summary { cursor:pointer;list-style-position:inside;padding:8px 0; }
.etx-menu ul { position:absolute;top:100%;right:0;margin:0;list-style:none;padding:12px;background:#fff;border:1px solid var(--etx-line);border-radius:8px;min-width:280px;box-shadow:0 12px 24px #15312d20; }
.etx-menu li a { display:block;padding:10px;border-radius:4px; }
.etx-menu li a:hover { background:#eef5f1; }
.etx-preview { background:#f2f6f3;color:#38564b;text-align:center;font:13px/1.5 Arial,sans-serif;padding:7px 16px;border-bottom:1px solid #d6e4de; }
.etx-preview a { color:inherit; }
.etx-footer { background:#0d2925;color:#e0ece6;font:15px/1.65 Arial,sans-serif;padding:44px 24px; }
.etx-footer-inner { max-width:1200px;margin:auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px; }
.etx-footer h2,.etx-footer h3 { color:#fff;font-size:20px;margin:0 0 12px; }
.etx-footer p { margin:0 0 12px; }
.etx-footer a { color:#e0ece6;text-decoration:underline;text-underline-offset:4px; }
.etx-footer ul { padding:0;list-style:none; }
.etx-footer li { margin-bottom:8px; }
.etx-footer-bottom { max-width:1200px;margin:26px auto 0;border-top:1px solid #37524b;padding-top:18px;font-size:13px; }
.etx-rfq-note { font-size:14px;line-height:1.6;padding:12px 16px;border-left:3px solid #d8a449;background:#eef5f1;color:#193c31; }
.etx-rfq-note a { color:#145d43;text-decoration:underline; }
.etx-rfq-result { padding:18px;margin-top:18px;border:1px solid #c0d6cc;border-radius:8px;background:#f4f8f5;color:#16382b; }
.etx-rfq-result textarea { width:100%;min-height:210px;box-sizing:border-box;background:#fff;color:#15312d;margin:10px 0; }
.etx-rfq-result a { display:inline-block;background:#116847;color:#fff;padding:12px 18px;border-radius:6px; }
.etx-rfq-result button { margin:10px;background:#fff;color:#15312d;border:1px solid #2b6956;padding:10px 16px;border-radius:6px; }
.etx-rfq-market { display:block;margin:12px 0; }
.etx-rfq-market select { display:block;width:100%;max-width:480px;margin-top:5px;padding:10px; }
.etx-media-missing { background:#edf3ef;border:1px dashed #799588;display:grid;place-items:center;min-height:180px;padding:24px;box-sizing:border-box;color:#395c4a;text-align:center;font:14px/1.5 Arial,sans-serif; }
.etx-table-scroll { overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch; }
.etx-table-scroll table { margin-bottom:0; }
.etx-directory { max-width:1200px;margin:0 auto;padding:40px 24px;font:16px/1.65 Arial,sans-serif;color:#173a2d; }
.etx-directory h1 { font-size:36px; }
.etx-directory ul { columns:3;column-gap:30px;padding-left:20px; }
.etx-directory li { break-inside:avoid;margin-bottom:9px; }
.etx-directory a { color:#0b6448; }
.etx-directory input { padding:12px;width:100%;max-width:600px;border:1px solid #648778;border-radius:6px;font:inherit; }
/* Static export must remain readable when progressive JavaScript is unavailable. */
.reveal { opacity:1 !important;transform:none !important; }
@media(max-width:900px){.etx-header-inner{align-items:flex-start;gap:14px;flex-wrap:wrap}.etx-nav{gap:12px 18px;font-size:14px}.etx-menu ul{left:0;right:auto;max-width:calc(100vw - 48px);min-width:240px}.etx-footer-inner{grid-template-columns:1fr 1fr}.etx-directory ul{columns:2}}
@media(max-width:600px){.etx-header-inner{padding:14px 18px}.etx-nav{width:100%;justify-content:space-between;gap:8px 12px}.etx-brand{font-size:21px}.etx-nav .etx-cta{padding:8px 10px}.etx-footer-inner{grid-template-columns:1fr;gap:20px}.etx-directory ul{columns:1}.etx-preview{font-size:12px}.etx-rfq-result button{margin-left:0}h1{overflow-wrap:break-word}table{max-width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.etx-reference-note { display:block;font-size:12px;line-height:1.5;margin-top:5px;font-weight:400; }

/* Optional Colombia ESS project assessment; isolated from the legacy form styles. */
form[data-etx-rfq] .etx-rfq-project { grid-column:1 / -1; width:100%; box-sizing:border-box; margin:20px 0; border:1px solid #bbd2c7; border-radius:8px; background:#f5f9f6; color:#16382b; text-align:left; }
form[data-etx-rfq] .etx-rfq-project > summary { display:list-item; padding:16px 18px; cursor:pointer; font:600 16px/1.5 Arial,sans-serif; list-style-position:inside; }
form[data-etx-rfq] .etx-rfq-project[open] > summary { border-bottom:1px solid #bbd2c7; }
form[data-etx-rfq] .etx-rfq-project-fields { border:0; min-width:0; margin:0; padding:18px; display:block; }
form[data-etx-rfq] .etx-rfq-project-fields legend { float:none; width:auto; padding:14px 0 0; font:700 16px/1.5 Arial,sans-serif; color:#16382b; }
form[data-etx-rfq] .etx-rfq-project .etx-rfq-project-help { margin:0 0 14px; font:400 14px/1.6 Arial,sans-serif; color:#38564b; }
form[data-etx-rfq] .etx-rfq-project .etx-rfq-project-safety { margin:0 0 18px; padding:12px; border-left:3px solid #a86d19; background:#fff8e9; color:#533c17; font:400 14px/1.6 Arial,sans-serif; }
form[data-etx-rfq] .etx-rfq-project-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-bottom:16px; }
form[data-etx-rfq] .etx-rfq-project label.etx-rfq-project-field { display:flex; flex-direction:column; gap:7px; min-width:0; margin:0; color:#16382b; font:600 14px/1.5 Arial,sans-serif; }
form[data-etx-rfq] .etx-rfq-project .etx-rfq-project-wide { grid-column:1 / -1; }
form[data-etx-rfq] .etx-rfq-project input, form[data-etx-rfq] .etx-rfq-project select, form[data-etx-rfq] .etx-rfq-project textarea { display:block; box-sizing:border-box; width:100%; min-width:0; max-width:100%; height:auto; min-height:44px; margin:0; padding:11px 12px; border:1px solid #8aa99a; border-radius:5px; background:#fff; color:#173a2d; font:400 15px/1.5 Arial,sans-serif; text-transform:none; letter-spacing:normal; }
form[data-etx-rfq] .etx-rfq-project textarea { min-height:98px; resize:vertical; }
form[data-etx-rfq] .etx-rfq-project input::placeholder, form[data-etx-rfq] .etx-rfq-project textarea::placeholder { color:#5f7469; opacity:1; }
@media(max-width:600px) { form[data-etx-rfq] .etx-rfq-project-grid { grid-template-columns:minmax(0,1fr); } form[data-etx-rfq] .etx-rfq-project > summary { padding:14px; } form[data-etx-rfq] .etx-rfq-project-fields { padding:14px; } }
