
/* faufena · estilos del sitio. Identidad de marca: bandas noche (header, hero, footer) y cuerpo claro. */
:root{
  color-scheme:light;
  --noche:#0A1B2B; --petroleo:#04253C; --pizarra:#2E4B58; --turquesa:#74AEBA; --niebla:#E4E1E5; --gris:#A7A8A9;
  --bg:#F5F4F6; --surface:#FFFFFF; --fg:#0A1B2B; --fg-2:#3D4F5A; --muted:#6A7882; --line:#E1DEE4; --line-2:#D2CED6;
  --chip:#EEF4F5; --chip-fg:#244E58; --ver-bg:#E1F0F2; --ver-fg:#1D5864;
  --on-dark:#F2F1F3; --on-dark-2:#A9BCC6; --dark-line:#1E3346;
  --review:#2B2B2E; --review-fg:#F4F4F5; --review-mut:#A1A1AA; --ref:#F2C14E;
  --f-display:"DM Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-body:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --wrap:1320px;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{background:var(--bg);color:var(--fg);font:15px/1.6 var(--f-body);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--f-display);margin:0;text-wrap:balance;letter-spacing:-0.015em}
p{margin:0}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid var(--turquesa);outline-offset:2px}
.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:20px}
.logo{display:block;aspect-ratio:560/101;background:currentColor;
  -webkit-mask:url(/logo.png) center/contain no-repeat;mask:url(/logo.png) center/contain no-repeat}

/* ---------- Header ---------- */
.site-h{background:var(--noche);color:var(--on-dark);border-bottom:1px solid var(--dark-line);position:sticky;top:env(safe-area-inset-top,0px);z-index:20}
.site-h .wrap{display:flex;align-items:center;gap:28px;height:68px}
.site-h .logo{width:118px;color:var(--niebla)}
.site-h nav.main{display:flex;gap:18px;font-weight:500;font-size:14px;white-space:nowrap}
.site-h nav.main a{text-decoration:none;color:var(--on-dark-2)}
.site-h nav.main a:hover,.site-h nav.main a.on{color:var(--on-dark)}
.site-h .cta{margin-left:auto;display:flex;gap:10px;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:9px;padding:10px 16px;font-weight:600;font-size:14px;text-decoration:none;border:1px solid transparent;white-space:nowrap}
.btn-tq{background:var(--turquesa);color:var(--noche)}
.btn-tq:hover{background:#8BBFC9}
.btn-pri{background:var(--petroleo);color:#fff}
.btn-pri:hover{background:var(--pizarra)}
.btn-out{background:var(--surface);border-color:var(--line-2);color:var(--fg)}
.btn-out:hover{border-color:var(--pizarra)}
.btn-ghost-d{border-color:#2F475A;color:var(--on-dark)}
.btn svg{width:16px;height:16px;flex:none}
.menu-btn{display:none;background:none;border:1px solid #2F475A;border-radius:8px;color:var(--on-dark);padding:7px 10px;margin-left:auto}

/* ---------- Hero ---------- */
.hero{background:var(--noche);color:var(--on-dark);position:relative;overflow:hidden}
.hero canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hero .wrap{position:relative;padding-block:64px 56px;display:grid;gap:22px}
.hero .kicker{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--turquesa)}
.hero h1{font-size:clamp(34px,5.4vw,58px);line-height:1.05;font-weight:600;max-width:15ch}
.hero .sub{font-size:18px;color:var(--on-dark-2);max-width:60ch}
.search-xl{display:flex;flex-wrap:wrap;gap:8px;background:var(--surface);border-radius:14px;padding:8px;max-width:760px;box-shadow:0 20px 50px -20px rgba(0,0,0,.6)}
.search-xl select{border:0;background:var(--bg);border-radius:9px;padding:0 12px;height:46px;color:var(--fg);font-weight:500}
.search-xl input{flex:1 1 220px;min-width:0;border:0;height:46px;padding:0 10px;font-size:16px;color:var(--fg);background:transparent}
.search-xl input:focus{outline:none}
.search-xl .btn{height:46px}
.quick{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;color:var(--on-dark-2)}
.quick button{background:rgba(255,255,255,.06);border:1px solid #2A4255;color:var(--on-dark);border-radius:999px;padding:5px 12px;font-size:13px}
.quick button:hover{border-color:var(--turquesa)}
.stats{display:flex;flex-wrap:wrap;gap:12px 40px;margin-top:10px;padding-top:22px;border-top:1px solid var(--dark-line)}
.stats div{display:grid}
.stats b{font:600 28px/1.1 var(--f-display);font-variant-numeric:tabular-nums}
.stats span{font-size:13px;color:var(--on-dark-2)}

/* ---------- Secciones ---------- */
.sec{padding-block:64px}
.sec-h{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:12px;margin-bottom:26px}
.sec-h .k{font-size:13px;font-weight:600;color:var(--pizarra);letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px}
.sec-h h2{font-size:clamp(26px,3.2vw,36px);font-weight:600;line-height:1.12}
.sec-h p{color:var(--fg-2);max-width:56ch;margin-top:8px}
.link{color:var(--pizarra);font-weight:600;text-decoration:none;font-size:14.5px}
.link:hover{text-decoration:underline}

.tipos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.tipo{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:24px;display:grid;gap:14px;text-align:left;align-content:start}
.tipo:hover{border-color:var(--pizarra)}
.tipo .ico{width:44px;height:44px;border-radius:11px;display:grid;place-items:center;background:var(--noche);color:var(--turquesa)}
.tipo .ico svg{width:22px;height:22px}
.tipo h3{font-size:22px;font-weight:600}
.tipo .n{font-size:13.5px;color:var(--muted)}
.tipo ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.tipo li{font-size:12.5px;background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:3px 10px;color:var(--fg-2)}

/* Cards empresas */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px;display:grid;gap:12px;align-content:start;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s}
.card:hover{border-color:var(--line-2);box-shadow:0 14px 34px -22px rgba(10,27,43,.45)}
.card-top{display:flex;gap:12px;align-items:center}
.lg{width:54px;height:54px;border-radius:11px;border:1px solid var(--line);background:#fff;overflow:hidden;flex:none;display:grid;place-items:center}
.lg img{width:100%;height:100%;object-fit:contain;padding:4px;display:block}
.card h3{font-size:17px;font-weight:600;line-height:1.25}
.ver{display:inline-flex;align-items:center;gap:3px;font-size:9px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--ver-fg);background:var(--ver-bg);border-radius:999px;padding:1px 6px 1px 4px;width:fit-content;line-height:1.5}
.ver svg{width:9px;height:9px}
.dest{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#7A5B12;background:#F7EED8;border-radius:999px;padding:3px 8px;width:fit-content}
.badges{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.card .d{font-size:14px;color:var(--fg-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{font-size:12.5px;padding:3px 9px;border-radius:7px;background:var(--chip);color:var(--chip-fg);white-space:nowrap}
.chip em{font-style:normal;font-weight:600}
.chip.more{background:var(--bg);color:var(--muted)}
.card-f{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--muted);padding-top:10px;border-top:1px solid var(--line)}
.card-f span{display:inline-flex;align-items:center;gap:5px}
.card-f svg{width:14px;height:14px}
.card-f .go{color:var(--pizarra);font-weight:600}

/* Roles explainer */
.roles-band{background:var(--surface);border-block:1px solid var(--line)}
.roles{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.role{background:var(--surface);padding:20px;display:grid;gap:8px;align-content:start}
.role h3{font-size:17px;font-weight:600;display:flex;gap:8px;align-items:center}
.role h3 i{width:9px;height:9px;border-radius:50%;background:var(--turquesa);flex:none}
.role p{font-size:14px;color:var(--fg-2)}
.role small{font-size:12.5px;color:var(--muted)}

/* Blog cards */
.posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.post{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:grid;text-decoration:none;color:inherit}
.post .cover{aspect-ratio:16/8;background:var(--petroleo);position:relative;overflow:hidden}
.post .cover canvas{width:100%;height:100%;display:block}
.post .cover b{position:absolute;left:16px;bottom:12px;font:600 12px/1 var(--f-body);letter-spacing:.06em;text-transform:uppercase;color:var(--turquesa)}
.post .body{padding:18px;display:grid;gap:8px}
.post h3{font-size:18px;line-height:1.25;font-weight:600}
.post p{font-size:14px;color:var(--fg-2)}
.post small{font-size:12.5px;color:var(--muted)}

.cta-band{background:var(--petroleo);color:var(--on-dark);border-radius:18px;padding:36px;display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}
.cta-band h2{font-size:clamp(24px,3vw,32px);font-weight:600;max-width:22ch}
.cta-band p{color:var(--on-dark-2);margin-top:6px;max-width:52ch}

/* ---------- Page head (internas) ---------- */
.ph{background:var(--noche);color:var(--on-dark)}
.ph .wrap{padding-block:36px 34px;display:grid;gap:8px}
.crumbs{font-size:13px;color:var(--on-dark-2)}
.crumbs a{color:var(--on-dark-2);text-decoration:none}
.crumbs a:hover{color:var(--on-dark)}
.ph h1{font-size:clamp(28px,4vw,40px);font-weight:600}
.ph p{color:var(--on-dark-2);max-width:62ch}

/* ---------- Directorio ---------- */
.dir{display:grid;grid-template-columns:280px minmax(0,1fr);gap:28px;padding-block:32px 64px}
.filters{display:grid;gap:22px;align-content:start;position:sticky;top:calc(env(safe-area-inset-top,0px) + 84px);max-height:calc(100vh - 100px);overflow:auto;padding-right:4px}
.f-sec{display:grid;gap:10px}
.f-sec>label,.f-sec>.lbl{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.inp{width:100%;height:42px;border:1px solid var(--line-2);border-radius:9px;padding:0 12px;background:var(--surface)}
.inp:focus{outline:2px solid var(--turquesa);outline-offset:0;border-color:transparent}
.seg{display:grid;grid-template-columns:repeat(4,1fr);background:var(--surface);border:1px solid var(--line-2);border-radius:9px;padding:3px;gap:2px}
.seg button{border:0;background:none;border-radius:6px;padding:7px 2px;font-size:12.5px;font-weight:600;color:var(--fg-2)}
.seg button[aria-pressed="true"]{background:var(--noche);color:#fff}
.tree{display:grid;gap:2px;font-size:14px}
.tree details{border-bottom:1px solid var(--line)}
.tree summary{list-style:none;display:flex;justify-content:space-between;gap:8px;padding:9px 2px;cursor:pointer;font-weight:500}
.tree summary::-webkit-details-marker{display:none}
.tree summary::after{content:"+";color:var(--muted);font-weight:400}
.tree details[open] summary::after{content:"–"}
.tree summary small{margin-left:auto;color:var(--muted);font-weight:400;font-variant-numeric:tabular-nums}
.tree .tp{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:12px 2px 2px}
.tree .tp:first-child{padding-top:0}
.chk{display:flex;align-items:center;gap:9px;padding:5px 2px 5px 6px;color:var(--fg-2);cursor:pointer}
.chk input{accent-color:var(--petroleo);width:15px;height:15px;margin:0}
.chk small{margin-left:auto;color:var(--muted);font-variant-numeric:tabular-nums}
.chk.off{opacity:.45}
.pills{display:flex;flex-wrap:wrap;gap:6px}
.pill{border:1px solid var(--line-2);background:var(--surface);border-radius:999px;padding:5px 11px;font-size:13px;color:var(--fg-2)}
.pill[aria-pressed="true"]{background:var(--petroleo);border-color:var(--petroleo);color:#fff}
.pill:disabled{opacity:.4;cursor:default}
.switch{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;color:var(--fg-2);cursor:pointer}
.switch input{accent-color:var(--petroleo);width:16px;height:16px}
.f-hint{font-size:12.5px;color:var(--muted)}
.res-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}
.res-h b{font-family:var(--f-display);font-size:18px}
.res-h select{height:38px;border:1px solid var(--line-2);border-radius:8px;padding:0 10px;background:var(--surface)}
.active{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.active button{border:0;background:var(--chip);color:var(--chip-fg);border-radius:999px;padding:4px 10px;font-size:12.5px}
.active button::after{content:" ✕";opacity:.6}
.empty{background:var(--surface);border:1px dashed var(--line-2);border-radius:14px;padding:36px;text-align:center;color:var(--fg-2);display:grid;gap:10px;justify-items:center}
.f-toggle{display:none}

/* ---------- Ficha ---------- */
.fh{background:var(--noche);color:var(--on-dark);position:relative;overflow:hidden}
.fh canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:.7}
.fh .wrap{position:relative;padding-block:30px 36px;display:grid;gap:22px}
.fh-main{display:grid;grid-template-columns:120px minmax(0,1fr);gap:24px;align-items:center}
.fh .lg{width:120px;height:120px;border-radius:18px;border:0}
.fh h1{font-size:clamp(28px,4vw,42px);font-weight:600;line-height:1.1}
.fh .lead{color:var(--on-dark-2);font-size:17px;max-width:66ch;margin-top:8px}
.fh .badges .ver{background:rgba(116,174,186,.18);color:#BFE0E6}
.facts{display:flex;flex-wrap:wrap;gap:14px 36px;padding-top:18px;border-top:1px solid var(--dark-line)}
.facts div{display:grid;gap:2px}
.facts span{font-size:12px;color:var(--on-dark-2);letter-spacing:.04em;text-transform:uppercase}
.facts b{font-weight:600;font-variant-numeric:tabular-nums}
.actions{display:flex;flex-wrap:wrap;gap:8px}
.fbody{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;padding-block:32px 64px;align-items:start}
.photo{margin:0;position:relative;aspect-ratio:16/6;max-width:100%;border-radius:14px;overflow:hidden;background:linear-gradient(135deg,#0A1B2B,#2E4B58)}
.photo canvas{position:absolute;inset:0;width:100%;height:100%}
.ph-lbl{position:absolute;left:18px;bottom:16px;right:18px;display:flex;gap:12px;align-items:center;color:#F2F1F3}
.ph-lbl svg{width:34px;height:34px;color:#74AEBA;flex:none}
.ph-lbl small{display:block;color:#A9BCC6;font-size:13px}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px;display:grid;gap:14px}
.panel h2{font-size:19px;font-weight:600}
.panel h3{font-size:15px;font-weight:600}
.oferta{display:grid;gap:18px}
.of-tipo{display:grid;gap:10px}
.of-tipo>b{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.of-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 14px;border:1px solid var(--line);border-radius:10px}
.of-row span small{display:block;color:var(--muted);font-size:12.5px}
.rol{font-size:12.5px;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--noche);color:var(--on-dark);white-space:nowrap}
.rol.na{background:var(--bg);color:var(--muted);font-weight:500}
.tags{display:flex;flex-wrap:wrap;gap:6px 10px;font-size:13.5px;color:var(--pizarra)}
.side{display:grid;gap:16px;position:sticky;top:calc(env(safe-area-inset-top,0px) + 84px)}
.kv{display:grid;gap:10px;font-size:14px}
.kv div{display:grid;gap:1px}
.kv span{font-size:12px;color:var(--muted)}
.kv .ph-txt{color:var(--gris);font-style:italic}
.file{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:10px;text-decoration:none}
.file .pdf{width:38px;height:44px;border-radius:6px;background:#FBE9E7;color:#B2382B;font:700 11px/44px var(--f-body);text-align:center;flex:none}
.file b{font-size:14px;font-weight:600;display:block}
.file small{font-size:12.5px;color:var(--muted)}
.file:hover{border-color:var(--pizarra)}
.claim{background:var(--bg);border:1px dashed var(--line-2);border-radius:14px;padding:18px;display:grid;gap:8px;font-size:14px;color:var(--fg-2)}
.claim b{color:var(--fg)}
.verinfo{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--fg-2)}
.verinfo svg{width:20px;height:20px;color:var(--ver-fg);flex:none;margin-top:1px}
.addr{display:grid;gap:10px}
.addr div{display:flex;gap:10px;font-size:14px}
.addr svg{width:18px;height:18px;color:var(--pizarra);flex:none;margin-top:2px}
.addr small{display:block;color:var(--muted);font-size:12.5px}

/* ---------- Planes ---------- */
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-block:40px 24px;align-items:stretch}
.plan{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:26px;display:grid;gap:16px;align-content:start}
.plan.hl{border:2px solid var(--petroleo);position:relative}
.plan .tagx{position:absolute;top:-12px;left:24px;background:var(--petroleo);color:#fff;font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px}
.plan h3{font-size:22px;font-weight:600}
.plan .price{font:600 36px/1 var(--f-display);font-variant-numeric:tabular-nums}
.plan .price small{font:500 14px var(--f-body);color:var(--muted)}
.plan .note{font-size:12.5px;color:var(--muted)}
.plan ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:14px;color:var(--fg-2)}
.plan li{display:flex;gap:9px}
.plan li svg{width:16px;height:16px;color:var(--pizarra);flex:none;margin-top:3px}
.plan li.no{color:var(--gris)}
.plan li.no svg{color:var(--gris)}
.plans{grid-template-columns:repeat(2,minmax(0,1fr));max-width:860px}
.was{font-size:15px;color:var(--muted)}
.was s{font:600 20px var(--f-display);color:var(--gris)}
.verif{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:30px;display:grid;gap:22px;margin-bottom:64px;max-width:860px}
.verif .k{font-size:13px;font-weight:600;color:var(--pizarra);letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px}
.verif h2{font-size:26px;font-weight:600}
.verif>div>p:last-child{color:var(--fg-2);margin-top:6px}
.vsteps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.vs{display:grid;gap:8px;align-content:start;background:var(--bg);border-radius:12px;padding:18px}
.vs .ico{width:40px;height:40px;border-radius:10px;background:var(--noche);color:var(--turquesa);display:grid;place-items:center}
.vs .ico svg{width:20px;height:20px}
.vs p{font-size:14px;color:var(--fg-2)}
.bonif{background:#F7EED8;color:#6F5310;border-radius:12px;padding:14px 18px;font-size:14px;margin-bottom:56px}

/* ---------- Formularios ---------- */
.form-wrap{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;padding-block:36px 64px;align-items:start}
.vbox{display:grid;gap:12px;background:var(--chip);border-radius:12px;padding:16px}
.vbox>b{font-size:14.5px}
.file-in{padding:8px 10px;height:auto}
form.f{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:26px;display:grid;gap:16px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fld{display:grid;gap:6px;min-width:0}
.fld label{font-size:13.5px;font-weight:500}
.fld label small{color:var(--muted);font-weight:400}
textarea.inp{height:auto;min-height:96px;padding:10px 12px;resize:vertical}
.radio{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.radio label{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line-2);border-radius:10px;padding:12px;font-size:14px;cursor:pointer}
.radio label:has(input:checked){border-color:var(--petroleo);background:var(--chip)}
.radio input{accent-color:var(--petroleo);margin-top:3px}
.radio small{display:block;color:var(--muted);font-size:12.5px}
.ok{background:var(--ver-bg);color:var(--ver-fg);border-radius:12px;padding:16px 18px;font-size:14.5px}
.steps{display:grid;gap:14px}
.step{display:grid;grid-template-columns:30px minmax(0,1fr);gap:12px;font-size:14px;color:var(--fg-2)}
.step b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--noche);color:var(--turquesa);font-size:13px}
.step strong{color:var(--fg);display:block}

/* ---------- Blog detalle ---------- */
.article{max-width:720px;margin:0 auto;padding-block:40px 64px;display:grid;gap:18px;font-size:17px;line-height:1.7;color:var(--fg-2)}
.article h2{font-size:24px;color:var(--fg);margin-top:8px}

/* ---------- Modal ---------- */
.modal{position:fixed;inset:0;background:rgba(6,16,26,.6);display:grid;place-items:center;padding:20px;z-index:50}
.modal .box{background:var(--surface);border-radius:16px;width:min(520px,100%);max-height:90vh;overflow:auto;padding:24px;display:grid;gap:14px}
.modal .box header{display:flex;justify-content:space-between;align-items:start;gap:12px}
.modal .x{border:0;background:var(--bg);border-radius:8px;width:34px;height:34px;font-size:18px;line-height:1}

/* ---------- Footer ---------- */
.site-f{background:var(--noche);color:var(--on-dark-2);font-size:14px}
.site-f .wrap{padding-block:48px 28px;display:grid;gap:32px}
.f-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}
.f-top .logo{width:120px;color:var(--niebla);margin-bottom:12px}
.f-top h4{font:600 12px/1 var(--f-body);letter-spacing:.07em;text-transform:uppercase;color:var(--on-dark);margin-bottom:14px}
.f-top ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.f-top a{text-decoration:none;color:var(--on-dark-2)}
.f-top a:hover{color:var(--on-dark)}
.f-bot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:20px;border-top:1px solid var(--dark-line);font-size:13px}

/* ---------- Responsive ---------- */
@media (max-width:980px){
  .tipos,.posts{grid-template-columns:1fr}
  .dir{grid-template-columns:minmax(0,1fr)}
  .filters{position:static;max-height:none;display:none;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px}
  .filters.open{display:grid}
  .f-toggle{display:inline-flex}
  .fbody,.form-wrap{grid-template-columns:minmax(0,1fr)}
  .side{position:static}
  .plans{grid-template-columns:1fr}
  .vsteps{grid-template-columns:1fr}
  .f-top{grid-template-columns:1fr 1fr}
}
@media (max-width:1180px){
  .site-h .cta{display:none}
}
@media (max-width:760px){
  .site-h .cta{display:none}
  .fh-main{grid-template-columns:72px minmax(0,1fr);gap:16px}
  .fh .lg{width:72px;height:72px;border-radius:12px}
  .row2,.radio{grid-template-columns:1fr}
  .hero .wrap{padding-block:44px 40px}
  .sec{padding-block:48px}
  .cta-band{padding:26px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* ---------- Agregados sitio real ---------- */
body{margin:0}
.lg b{font:600 18px/1 var(--f-display);color:var(--pizarra)}
.fh .lg b{font-size:34px}
.loading{padding:60px 0;text-align:center;color:var(--muted)}
.more-btn{display:flex;justify-content:center;margin-top:20px}
.preview-bar{background:#F2C14E;color:#2b2b2e;font-size:12.5px;text-align:center;padding:6px 12px}
.err{background:#FBE9E7;color:#8A2A1F;border-radius:12px;padding:14px 18px;font-size:14px}
.legal{max-width:760px;margin:0 auto;padding-block:40px 64px;display:grid;gap:14px;color:var(--fg-2)}
.legal h2{font-size:20px;color:var(--fg);margin-top:10px}
.legal ul{padding-left:20px;display:grid;gap:6px}
.legal .lg-nav{font-size:14px;padding-bottom:12px;border-bottom:1px solid var(--line,rgba(127,127,127,.25))}
.legal .lg-tbl{overflow-x:auto}
.legal table{border-collapse:collapse;width:100%;font-size:14px;min-width:560px}
.legal th,.legal td{border:1px solid var(--line,rgba(127,127,127,.25));padding:8px 10px;text-align:left;vertical-align:top}
.legal th{color:var(--fg)}
.f-legal{font-size:12px;line-height:1.5;color:var(--fg-3,var(--fg-2));margin:10px 0 0}
.f-legal a{color:inherit;text-decoration:underline}
.site-f .f-disc{font-size:12px;opacity:.7;margin:12px 0 0;max-width:900px}
.card .d.ph-txt{color:var(--gris);font-style:italic}
.rubros-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.rubros-list a{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-size:14.5px;text-decoration:none;display:flex;justify-content:space-between;gap:10px}
.rubros-list a:hover{border-color:var(--pizarra)}
.rubros-list small{color:var(--muted)}

/* ---------- ¿Qué es faufena? ---------- */
.about{display:grid;gap:28px;padding-block:40px 64px}
.about .k{font-size:13px;font-weight:600;color:var(--pizarra);letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px}
.about h2{font-size:28px;font-weight:600;margin-bottom:12px}
.ab-intro{max-width:760px;display:grid;gap:12px;font-size:17px;line-height:1.7;color:var(--fg-2)}
.ab-intro h2{color:var(--fg);margin-bottom:0}
.ab-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ab-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:26px}
.ab-card h3{font-size:20px;margin-bottom:12px}
.ab-card ul{margin:0;padding-left:18px;display:grid;gap:8px;color:var(--fg-2)}
.ab-founder{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:30px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px}
.ab-who{display:grid;gap:12px;align-content:start;color:var(--fg-2)}
.ab-who h2{color:var(--fg);margin-bottom:0}
.ab-who .ab-role{color:var(--pizarra);font-weight:600;margin-top:-6px}
.ab-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.timeline{list-style:none;margin:0;padding:0 0 0 18px;border-left:2px solid var(--niebla);display:grid;gap:18px}
.timeline li{position:relative;display:grid;gap:2px}
.timeline li::before{content:"";position:absolute;left:-25px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--turquesa);border:2px solid var(--surface)}
.timeline .y{font-size:13px;color:var(--muted);font-weight:600}
.timeline p{font-size:14px;color:var(--fg-2)}
.ab-cta{background:var(--noche);color:var(--on-dark);border-radius:18px;padding:30px;display:grid;gap:10px;justify-items:start}
.ab-cta h2{margin-bottom:0}
.ab-cta p{color:var(--on-dark-2)}
@media (max-width:820px){.ab-cols,.ab-founder{grid-template-columns:1fr}.ab-founder{padding:22px}.about h2{font-size:24px}}
.ab-big{font:600 22px/1.35 var(--f-display);color:var(--fg)}
.ab-tag{margin-top:10px;color:var(--pizarra);font-weight:600}
.ab-no{list-style:none;padding-left:0!important}
.ab-no li{position:relative;padding-left:26px}
.ab-no li::before{content:"✕";position:absolute;left:0;top:0;color:var(--pizarra);font-weight:700}

/* ---------- Color por tipo y acentos ---------- */
:root{--tal:#3F6FA8;--tal-bg:#E4ECF6;--tk:#7A5BA8;--tk-bg:#EEE8F6;--pip:#4E7D3A;--pip-bg:#E6F0E0;--rot:#B5476B;--rot-bg:#F8E6EC;--epp:#C9A227;--epp-bg:#FAF3DA;--ren:#8A6D3B;--ren-bg:#F3ECE0;--uf:#2F7D6D;--uf-bg:#E1F1EC;--ele:#5B5FC7;--ele-bg:#E8E9F8;--slci:#C0392B;--slci-bg:#F9E3E0;--mat:#2C8C99;--mat-bg:#E3F3F5;--ser:#D9962B;--ser-bg:#FBF0DC;--obr:#D2603F;--obr-bg:#FBE7E1}
.hero{background:radial-gradient(1200px 500px at 85% -10%,rgba(116,174,186,.28),transparent 60%),radial-gradient(800px 400px at -10% 110%,rgba(217,150,43,.16),transparent 60%),linear-gradient(160deg,var(--noche),var(--petroleo))}
.stats b{color:var(--turquesa)}
.stats div:nth-child(2) b{color:#F0B85A}
.stats div:nth-child(3) b{color:#EE8E72}
.tipo{border-top:4px solid var(--acc,var(--pizarra))}
.tipo .ico{background:var(--acc-bg,var(--bg));color:var(--acc,var(--turquesa))}
.tipo li{background:var(--acc-bg,var(--bg));border-color:transparent}
.tipo:hover{border-color:var(--acc,var(--pizarra));box-shadow:0 16px 36px -24px rgba(10,27,43,.5)}
.t-tal{--acc:var(--tal);--acc-bg:var(--tal-bg)}
.t-tk{--acc:var(--tk);--acc-bg:var(--tk-bg)}
.t-pip{--acc:var(--pip);--acc-bg:var(--pip-bg)}
.t-rot{--acc:var(--rot);--acc-bg:var(--rot-bg)}
.t-epp{--acc:var(--epp);--acc-bg:var(--epp-bg)}
.t-ren{--acc:var(--ren);--acc-bg:var(--ren-bg)}
.t-uf{--acc:var(--uf);--acc-bg:var(--uf-bg)}
.t-ele{--acc:var(--ele);--acc-bg:var(--ele-bg)}
.t-slci{--acc:var(--slci);--acc-bg:var(--slci-bg)}
.t-mat{--acc:var(--mat);--acc-bg:var(--mat-bg)}
.t-ser{--acc:var(--ser);--acc-bg:var(--ser-bg)}
.t-obr{--acc:var(--obr);--acc-bg:var(--obr-bg)}
.card{position:relative;overflow:hidden}
.card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--acc,transparent)}
.card .eyebrow{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--acc,var(--pizarra));margin-bottom:-4px}
.card:hover{border-color:var(--acc,var(--line-2))}
.roles-band{background:linear-gradient(180deg,var(--mat-bg),var(--surface))}
.cta-band{background:linear-gradient(120deg,var(--petroleo),#0E3A55 60%,#1D5864)}
.sec-h .k{color:var(--mat)}
/* Sello de instituciones (GAPP) */
.inst{display:inline-flex;align-items:center;height:20px;padding:2px 6px;border:1px solid var(--line);border-radius:6px;background:#fff;font-size:10.5px;font-weight:700;color:#253A8A}
.inst img{height:14px;width:auto;display:block}
.inst-line{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:14px;color:var(--on-dark-2)}
.inst-line img{height:18px;background:#fff;border-radius:4px;padding:2px 4px}
.inst-line a{color:inherit}
.card .chip{white-space:normal}
.card .eyebrow{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card-top>div{min-width:0}
.trust h3{display:flex;align-items:center;gap:8px}
.trust h3 svg{width:18px;height:18px;color:var(--mat)}
.trust-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:14px}
.trust-list li{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:start}
.trust-list li>img{width:72px;height:auto;max-height:28px;object-fit:contain;object-position:left}
.trust-list li>.inst{justify-self:start}
.trust-list span{display:grid;gap:2px;font-size:14px}
.trust-list small{color:var(--muted);font-size:12.5px}
.inst{max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.roles-h{font-size:15px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--acc);margin:26px 0 12px}
.roles-h:first-of-type{margin-top:0}
.roles.t-obr .role h3 i,.roles.t-mat .role h3 i{background:var(--acc)}
.roles.t-ser .role h3 i,.roles.t-tal .role h3 i{background:var(--acc)}
a.inst{text-decoration:none}
.inst-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.inst-card{display:grid;gap:8px;align-content:start;text-decoration:none;color:inherit}
.inst-card img{height:36px;width:auto;max-width:180px;object-fit:contain;object-position:left}
.inst-card small{color:var(--muted)}
.inst.big{height:36px;font-size:15px;padding:6px 12px}
.faq{display:grid;gap:10px;max-width:820px}
.faq details{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 20px}
.faq summary{cursor:pointer;font:600 17px/1.35 var(--f-display);color:var(--fg)}
.faq details p{margin-top:10px;color:var(--fg-2)}

/* ---------- v15: buscador, filtros por título, industria ---------- */
.tree summary .fc{all:unset;cursor:pointer;font-weight:500;flex:1;min-width:0;border-radius:6px;padding:1px 4px;margin-left:-4px}
.tree summary .fc:hover{color:var(--petroleo);text-decoration:underline;text-underline-offset:3px}
.tree summary .fc:focus-visible{outline:2px solid var(--petroleo)}
.tree summary .fc.on{background:var(--petroleo);color:#fff;text-decoration:none}
.tree button.tp{all:unset;display:block;cursor:pointer;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:12px 2px 2px}
.tree button.tp:hover{color:var(--petroleo)}
.interp{display:grid;gap:8px;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--petroleo);border-radius:12px;padding:12px 16px;margin-bottom:12px;font-size:14px}
.interp b{font-weight:600}
.interp .chips{display:flex;flex-wrap:wrap;gap:6px}
.interp button.chip{cursor:pointer;font:inherit;font-size:12.5px}
.interp button.chip:hover{border-color:var(--petroleo);color:var(--petroleo)}
a.inst.dl{cursor:pointer}
a.inst.dl:hover{border-color:var(--petroleo);box-shadow:0 0 0 2px rgba(0,0,0,.04)}
.stats-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.stats-row>div{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px;display:grid;gap:2px}
.stats-row b{font:700 26px/1.1 var(--f-display);font-variant-numeric:tabular-nums}
.stats-row span{font-size:13px;color:var(--muted)}
.seg-wrap{display:flex;flex-wrap:wrap;gap:8px}
.segl{display:inline-flex;align-items:center;padding:7px 14px;border:1px solid var(--line);border-radius:999px;font-size:14px;text-decoration:none;color:var(--fg-2);background:var(--surface)}
.segl.on{background:var(--petroleo);border-color:var(--petroleo);color:#fff}
.kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:4px 0}
.kpis div{display:grid;gap:2px}
.kpis b{font:700 18px/1.1 var(--f-display);font-variant-numeric:tabular-nums}
.kpis span{font-size:12px;color:var(--muted)}
.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.tbl{width:100%;border-collapse:collapse;font-size:14px}
.tbl th{text-align:left;font-weight:600;font-size:12.5px;color:var(--muted);padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:bottom;white-space:nowrap}
.tbl td{padding:9px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.tbl tr:last-child td{border-bottom:0}
.tbl .n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.tbl small{font-weight:400}
.muted{color:var(--muted)}
.src{margin-top:16px}
.area-f{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.area-f .inp{flex:1 1 220px;max-width:360px}
.links-g{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}
.lk .card-f{align-items:center}
.comparte{display:grid;gap:6px}
.comparte .lbl{font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.comparte ul{list-style:none;margin:0;padding:0;display:grid;gap:5px;font-size:14px;color:var(--fg-2)}
.comparte li{display:flex;gap:8px;align-items:flex-start}
.comparte svg{width:15px;height:15px;flex:none;margin-top:3px;color:var(--petroleo)}
@media (max-width:760px){.stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}.links-g{grid-template-columns:1fr}}

/* v17: barra izquierda angosta, 3 empresas por fila, descargas */
.dir{grid-template-columns:220px minmax(0,1fr);gap:24px}
.filters{font-size:13.5px}
.filters .tree{font-size:13.5px}
.dir #results{grid-template-columns:repeat(3,minmax(0,1fr))}
.dir #results .card{padding:16px}
@media (max-width:1100px){.dir #results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:980px){.dir{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.dir #results{grid-template-columns:1fr}}
.docs{display:grid;gap:4px;margin-top:4px}
.docs a{display:inline-flex;align-items:center;gap:6px}
.docs svg{width:14px;height:14px;flex:none}
.docs-sec{display:grid;gap:12px}
.docs-sec h2{font-size:24px}
.docs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.docs-grid .ab-card{display:grid;gap:6px;align-content:start}
.filters{overflow-x:hidden}
.filters .seg{display:grid;grid-template-columns:1fr 1fr;gap:4px;width:100%}
.filters .seg button{padding:6px 4px;font-size:12.5px;text-align:center}
.filters .inp{font-size:13px}
.tree .chk{padding-left:2px}

.segs{display:grid;gap:4px}
.segs button{all:unset;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;gap:8px;cursor:pointer;border-radius:8px;padding:8px 10px;font-weight:600;font-size:13.5px;letter-spacing:.03em;text-transform:uppercase;border:1px solid var(--line);background:var(--surface);color:var(--fg)}
.segs button small{font-weight:400;color:var(--muted);letter-spacing:0;font-variant-numeric:tabular-nums}
.segs button:hover{border-color:var(--petroleo)}
.segs button.on{background:var(--petroleo);border-color:var(--petroleo);color:#fff}
.segs button.on small{color:rgba(255,255,255,.7)}
.sg-kids{display:grid;gap:3px;padding:2px 0 6px 10px;border-left:2px solid var(--line);margin-left:8px}
.segs button.sgk{text-transform:none;letter-spacing:0;font-weight:500;padding:6px 10px;border-color:transparent;background:transparent}
.segs button.sgk.on{background:var(--turquesa);border-color:var(--turquesa);color:var(--noche)}
.segs button.sgk.on small{color:var(--noche)}

.asme{display:inline-flex;align-items:center;gap:5px;height:20px;padding:2px 7px;border-radius:6px;background:#00539B;color:#fff;font-size:10.5px;text-decoration:none;white-space:nowrap}
.asme b{font-weight:800;letter-spacing:.04em}
.asme span{font-weight:600;opacity:.95;border-left:1px solid rgba(255,255,255,.45);padding-left:5px}
a.asme:hover{background:#003F78}
.tp-b{display:inline-flex;align-items:center;height:20px;padding:2px 7px;border-radius:6px;background:#FFF3D6;border:1px solid #F0C96A;color:#7A5200;font-size:10.5px;font-weight:700;white-space:nowrap}
.trust-list li>.asme{justify-self:start}

.asme a{color:inherit;text-decoration:none}
.asme span a{padding:0 1px;border-radius:3px}
.asme span a:hover,.asme>a:hover{text-decoration:underline;text-underline-offset:2px}

.crit-list{margin:10px 0 0;padding-left:22px;display:grid;gap:10px}
.crit-list li{padding-left:4px}
.crit-list li b{display:block;font-weight:600}
.crit-list li span{color:var(--fg-2);font-size:14px}

.grid-sep{grid-column:1/-1;display:grid;gap:2px;padding:14px 4px 4px;border-top:2px solid var(--line);margin-top:6px}
.grid-sep b{font:600 18px/1.3 var(--f-display)}
.grid-sep span{font-size:13.5px;color:var(--muted)}
.relr{display:grid;gap:6px;margin-top:22px;padding:16px 18px;background:var(--surface);border:1px solid var(--line);border-radius:14px}
.relr b{font:600 17px/1.3 var(--f-display)}
.relr .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.relr a.chip{text-decoration:none;font-size:13.5px}
.relr a.chip:hover{border-color:var(--petroleo);color:var(--petroleo)}
.relr small{color:var(--muted)}

/* v28: columna de filtros más angosta y más espacio para resultados */
.wrap-wide{max-width:1360px}
.dir{grid-template-columns:196px minmax(0,1fr);gap:22px}
.filters{gap:16px;font-size:13px}
.filters .lbl,.filters label{font-size:11.5px}
.segs button{padding:7px 8px;font-size:12.5px}
.segs button.sgk{padding:5px 8px}
.tree{font-size:13px}
.tree summary{padding:7px 2px}
.chk{gap:7px;padding:4px 2px;font-size:12.5px}
.switch{font-size:12.5px}

.res-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.tg{display:inline-flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--surface)}
.tg button{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:6px 11px;font-size:12.5px;color:var(--fg-2)}
.tg button+button{border-left:1px solid var(--line)}
.tg button[aria-pressed="true"]{background:var(--petroleo);color:#fff}
.tg button:focus-visible{outline:2px solid var(--turquesa);outline-offset:-2px}
.tg svg{width:15px;height:15px}
/* Vista lista: una empresa por fila, finita */
#results.list{grid-template-columns:1fr!important;gap:8px}
#results.list .card{grid-template-columns:minmax(220px,300px) minmax(0,1fr) 170px;align-items:center;gap:16px;padding:10px 14px}
#results.list .card .eyebrow{display:none}
#results.list .card .card-top{gap:10px}
#results.list .card .lg{width:40px;height:40px}
#results.list .card h3{font-size:15px}
#results.list .card .d{-webkit-line-clamp:2;font-size:13px;grid-column:2}
#results.list .card .chips{grid-column:2;margin-top:-8px}
#results.list .card .chips .chip{font-size:11.5px;padding:2px 7px}
#results.list .card .card-f{grid-column:3;grid-row:1 / span 2;display:grid;gap:4px;justify-items:end;border:0;padding:0;font-size:12.5px}
#results.list .grid-sep{padding-top:10px}
@media (max-width:900px){#results.list .card{grid-template-columns:1fr}#results.list .card .d,#results.list .card .chips,#results.list .card .card-f{grid-column:auto;grid-row:auto;justify-items:start;margin-top:0}}

#results.list .card .chips{display:flex;flex-wrap:wrap;gap:4px}

.marcas{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin-top:10px}
.marcas>div{display:grid;gap:3px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg)}
.marcas b{font-weight:600}
.marcas span{font-size:13px;color:var(--fg-2)}
.marcas em.rol{font-style:normal;font-size:11.5px;justify-self:start}

.lgcol{display:grid;gap:5px;justify-items:center;align-content:start}
.rol-ico{display:grid;justify-items:center;gap:1px;color:var(--petroleo);width:58px;text-align:center}
.rol-ico svg{width:24px;height:24px}
.rol-ico small{font-size:9.5px;line-height:1.1;font-weight:600;color:var(--fg-2)}
#results.list .card .rol-ico{width:64px}

.card .card-top{grid-template-columns:auto minmax(0,1fr)!important}
#results.list .card .card-top{align-items:start}
.rol-ico small{white-space:nowrap}
.lgcol{flex:none}
.card-top{align-items:flex-start}

.asme i{font-style:normal;cursor:pointer;padding:0 1px;border-radius:3px}
.asme b[data-go]{cursor:pointer}
.asme i:hover,.asme b[data-go]:hover{text-decoration:underline;text-underline-offset:2px}
@media (max-width:760px){
  .asme{height:28px;font-size:12.5px;padding:3px 9px;gap:7px}
  .asme span a,.asme span i{padding:4px 3px}
  .asme span{padding-left:7px}
  .trust-list li{grid-template-columns:minmax(0,1fr)}
}
/* v37: en pantallas chicas, los resultados ocupan todo el ancho */
@media (max-width:980px){.dir{grid-template-columns:minmax(0,1fr)!important}.dir #results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.dir #results{grid-template-columns:minmax(0,1fr)!important}.res-h{flex-wrap:wrap;gap:8px}}

/* v38: ficha en celular */
.trust-m{display:none}
@media (max-width:760px){
  .trust-m{display:block}
  .side .trust{display:none}
  .fh .wrap{gap:16px;padding-block:20px 26px}
  .fh-main{grid-template-columns:56px minmax(0,1fr)!important;gap:12px!important;align-items:start}
  .fh .lg{width:56px!important;height:56px!important;border-radius:10px!important}
  .fh h1{font-size:28px;line-height:1.15}
  .fh .lead{grid-column:1 / -1;font-size:15.5px;line-height:1.5;margin-top:4px}
  .fh-main>div:last-child{display:contents}
  .fh-main>div:last-child>.badges{grid-column:2;grid-row:2}
  .fh-main>div:last-child>h1{grid-column:2;grid-row:1;align-self:center}
  .fh .facts{grid-template-columns:1fr 1fr;gap:12px}
  .fh .actions .btn{padding:9px 14px;font-size:14px}
  .fbody{gap:14px;padding-block:16px 40px}
  .panel{padding:16px}
  .panel h2{font-size:19px}
  .of-row{padding:9px 12px;gap:10px}
  .of-row span{font-size:14px}
  .of-row small{font-size:11.5px}
  .of-row .rol{font-size:11.5px;padding:3px 8px;white-space:nowrap}
  .wrap{padding-inline:16px}
}
@media (max-width:760px){.fh-main>.lg{grid-column:1;grid-row:1 / span 2}.fh-main .esp{grid-column:1 / -1;grid-row:3;margin:0}.fh-main .lead{grid-row:4}}

.trust-list .asme span{display:inline;font-size:inherit;gap:0}
.trust-list span.asme{display:inline-flex;gap:5px}

/* v40: encabezado bajo, filtros chicos, filas finitas */
.ph-slim .wrap{padding-block:14px 14px;gap:2px;grid-template-columns:auto minmax(0,1fr);align-items:baseline;column-gap:18px}
.ph-slim .crumbs{grid-column:1 / -1;font-size:12px}
.ph-slim h1{font-size:24px}
.ph-slim p{font-size:13px;max-width:none}
@media (max-width:760px){.ph-slim .wrap{grid-template-columns:1fr}}
.filters{font-size:12px}
.filters .lbl,.filters label{font-size:10.5px}
.filters .inp{font-size:12px;padding:6px 8px}
.segs button{font-size:11.5px;padding:6px 8px}
.segs button.sgk{font-size:11.5px}
.tree,.tree summary,.tree summary .fc{font-size:12px}
.chk{font-size:11.5px;padding:3px 2px}
.switch{font-size:11.5px}
.filters .seg button{font-size:11.5px}
.filters .pill{font-size:11.5px;padding:4px 8px}
.filters .f-hint{font-size:11px}
@media (min-width:901px){
  #results.list{gap:4px}
  #results.list .card{grid-template-columns:44px minmax(180px,250px) minmax(0,1fr) 150px;grid-template-rows:auto;gap:12px;padding:6px 12px;align-items:center;border-radius:10px}
  #results.list .card .card-top{display:contents}
  #results.list .card .lgcol{grid-column:1;grid-row:1;gap:1px}
  #results.list .card .lg{width:32px;height:32px;border-radius:7px}
  #results.list .card .lg b{font-size:12px}
  #results.list .card .rol-ico{width:44px}
  #results.list .card .rol-ico svg{width:16px;height:16px}
  #results.list .card .rol-ico small{font-size:8.5px}
  #results.list .card .card-top>div:last-child{grid-column:2;grid-row:1;min-width:0}
  #results.list .card h3{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #results.list .card .badges{flex-wrap:nowrap;overflow:hidden;gap:4px;margin-top:2px;max-height:22px}
  #results.list .card .badges>*{flex:none}
  #results.list .card .d{grid-column:3;grid-row:1;-webkit-line-clamp:1;font-size:12.5px;align-self:start;margin-top:2px}
  #results.list .card .chips{grid-column:3;grid-row:1;align-self:end;flex-wrap:nowrap;overflow:hidden;margin:0;max-height:20px}
  #results.list .card .chips .chip{font-size:11px;padding:1px 6px}
  #results.list .card{min-height:52px}
  #results.list .card .card-f{grid-column:4;grid-row:1;font-size:12px;gap:2px}
  #results.list .card .card-f span:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}
}
@media (min-width:901px){
  #results.list .card{padding:4px 12px;min-height:0;gap:10px}
  #results.list .card .rol-ico small{display:none}
  #results.list .card .lgcol{flex-direction:row;display:flex;gap:4px;align-items:center}
  #results.list .card{grid-template-columns:62px minmax(180px,250px) minmax(0,1fr) 150px}
  #results.list .card .lg{width:30px;height:30px}
  #results.list .card .rol-ico{width:auto}
  #results.list .card .d{margin-top:0}
}

/* v42 */
.clr-btn{all:unset;cursor:pointer;display:inline-flex;align-items:center;padding:6px 11px;font-size:12.5px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--fg-2)}
.clr-btn:hover{border-color:var(--petroleo);color:var(--petroleo)}
.clr-btn:focus-visible{outline:2px solid var(--turquesa)}

/* v43 buscador grande */
.ph-slim .wrap{grid-template-columns:auto minmax(0,1fr);align-items:center}
.ph-slim .bigq-h{grid-column:2;margin:0;font-size:12.5px;color:rgba(255,255,255,.72)}
.bigq{position:relative;max-width:760px;width:100%}
.bigq svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:20px;height:20px;fill:none;stroke:var(--fg-2);stroke-width:2;stroke-linecap:round}
.bigq input{width:100%;box-sizing:border-box;height:50px;padding:0 18px 0 48px;font:inherit;font-size:16.5px;border:2px solid var(--line);border-radius:12px;background:var(--surface);color:var(--fg);outline:none;transition:border-color .15s}
.bigq input:focus{border-color:var(--petroleo);box-shadow:0 0 0 4px rgba(0,0,0,.04)}
@media (max-width:760px){.ph-slim .bigq-h{grid-column:1}.bigq input{height:46px;font-size:16px}}
@media (max-width:760px){.ph-slim .wrap{grid-template-columns:1fr}.ph-slim h1{font-size:22px}}

/* v44 marcas AOG */
.mk-note{font-size:13px;color:var(--fg-2);margin:4px 0 6px}
.mk-g{margin-top:12px}
.mk-g h3{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;margin:0 0 7px}
.mk-g h3 small{font-weight:400;color:var(--fg-2);margin-left:-4px}
.mk-g h3 i{font-style:normal;font-size:11.5px;color:var(--fg-2);font-weight:400}
.mk-c{display:inline-grid;place-items:center;min-width:28px;height:22px;padding:0 5px;border-radius:6px;background:var(--petroleo);color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.03em}
.mk-l{display:flex;flex-wrap:wrap;gap:6px}
.mk{display:inline-flex;flex-direction:column;padding:5px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);font-size:12.5px;font-weight:600}
.mk small{font-weight:400;font-size:11.5px;color:var(--fg-2);max-width:260px}

/* v45 orden de áreas */
.th-sort{all:unset;cursor:pointer;font-weight:700;padding:2px 6px;border-radius:6px;border:1px solid var(--line)}
.th-sort[aria-pressed="true"]{background:var(--petroleo);color:#fff;border-color:var(--petroleo)}
.th-sort:focus-visible{outline:2px solid var(--turquesa)}
.area-f .tg{margin-left:auto}

/* v46 historia de áreas */
.ach{margin-top:26px}
.ach h2{font-size:18px;margin:0 0 8px}
.ach h2 small{font-size:12.5px;font-weight:400;color:var(--fg-2);margin-left:6px}
.lc{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:8px}
.lc svg{width:100%;height:auto;display:block;touch-action:pan-y}
.lc .ax{font-size:11px;fill:var(--fg-2)}
.lc-tip{position:absolute;top:10px;transform:translateX(-50%);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:6px 9px;font-size:12px;pointer-events:none;box-shadow:0 4px 14px rgba(0,0,0,.08);white-space:nowrap}
.lc-tip div{display:flex;align-items:center;gap:6px}
.lc-tip i{width:8px;height:8px;border-radius:50%;display:inline-block}
.lc-leg{display:flex;flex-wrap:wrap;gap:14px;margin-top:8px;font-size:12.5px;color:var(--fg-2)}
.lc-leg span{display:inline-flex;align-items:center;gap:6px}
.lc-leg i{width:22px;display:inline-block}
.kpis.kpis-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:760px){.kpis.kpis-4{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v47 whatsapp */
.btn-wa{background:#25D366;color:#fff;border-color:#25D366}
.btn-wa:hover{background:#1ebe5b;border-color:#1ebe5b;color:#fff}
.btn-wa svg{width:18px;height:18px}
/* v48 ASME en trayectoria: sello arriba, texto abajo */
.trust-list li.li-asme{grid-template-columns:minmax(0,1fr);gap:6px}
.trust-list li.li-asme>.asme{max-width:100%;flex-wrap:wrap}
.trust-list li:not(.li-asme){grid-template-columns:minmax(72px,max-content) minmax(0,1fr)}
@media (max-width:760px){.trust-list li:not(.li-asme){grid-template-columns:minmax(0,1fr)}}

/* v49 taller propio con bandera / tercerizado */
.tp-b{display:inline-flex;align-items:center;gap:5px}
.tp-b .flag{width:16px;height:11px;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.12)}
.tt-b{display:inline-flex;align-items:center;font-size:11px;font-weight:600;padding:2px 7px;border-radius:6px;background:#eceff3;color:#4a5563;border:1px solid #d6dbe2}
.site-h .soc{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:9px;color:#cfe3e8;border:1px solid rgba(255,255,255,.18)}
.site-h .soc:hover{color:#fff;border-color:var(--turquesa)}
.site-h .soc svg{width:17px;height:17px}

/* v52 venta internacional / CUIT local */
.intl-b{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;padding:2px 7px;border-radius:6px;background:#fff4e5;color:#8a4b00;border:1px solid #f2d3a4;white-space:nowrap}
.intl-b .flag,.loc-btn .flag{width:16px;height:11px;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.12)}
.loc-btn{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:7px;padding:6px 11px;font-size:12.5px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--fg-2)}
.loc-btn[aria-pressed="true"]{background:#e8f4fb;border-color:#74ACDF;color:#0b3c49;font-weight:600}
.loc-btn:focus-visible{outline:2px solid var(--turquesa)}
.loc-btn .nqn-logo{height:16px;width:auto;display:block}

/* v72: hero compacto y sección de tipos fina */
.hero .wrap{padding-block:22px 34px;gap:16px}
.hero-top{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:18px 48px;align-items:center}
.hero-top h1{max-width:none}
.hero-top .sub{max-width:none;margin:0}
.hero-bar{display:grid;grid-template-columns:minmax(0,760px) auto;gap:16px 40px;align-items:center}
.hero-bar .search-xl{max-width:none}
.hero-bar .stats{margin:0;padding:0;border:0;flex-wrap:nowrap;gap:12px 32px}
.sec-tipos{padding-block:30px 22px}
.sec-tipos .sec-h{margin-bottom:12px}
.sec-tipos .sec-h h2{font-size:clamp(20px,2.2vw,24px)}
.sec-tipos .tipos{gap:12px}
.sec-tipos .tipo{padding:12px 16px;gap:8px;border-radius:12px;border-top-width:3px}
.tipo-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sec-tipos .tipo .ico{width:30px;height:30px;border-radius:8px}
.sec-tipos .tipo .ico svg{width:16px;height:16px}
.sec-tipos .tipo h3{font-size:17px}
.sec-tipos .tipo .n{font-size:12.5px;margin-left:auto}
.sec-tipos .tipo li{font-size:11.5px;padding:2px 8px}
@media (max-width:980px){.hero-top,.hero-bar{grid-template-columns:minmax(0,1fr)}.hero-bar .stats{flex-wrap:wrap}}
/* v74: sello Verificada más chico */
.ver{font-size:7.5px;gap:2px;padding:0 5px 0 3px;letter-spacing:.02em;line-height:1.45}
.ver svg{width:7.5px;height:7.5px}
/* v75: compartir chico en la línea de sellos; CTA para escribirle al proveedor */
.share-wa{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:#fff;background:#25D366;border-radius:999px;padding:2px 9px 2px 7px;text-decoration:none;line-height:1.5}
.share-wa:hover{background:#1ebe5b;color:#fff}
.share-wa svg{width:12px;height:12px}
.fh-cta{display:contents}
.btn-mail{background:transparent;color:var(--on-dark);border:1px solid rgba(255,255,255,.35)}
.btn-mail:hover{border-color:var(--turquesa);color:#fff}
.btn-mail svg{width:16px;height:16px}
.fh-cta .btn svg{width:16px;height:16px}
/* v77: Compartir sin verde */
.share-wa{background:transparent;color:var(--on-dark);border:1px solid rgba(255,255,255,.35);padding:1px 8px 1px 6px}
.share-wa:hover{background:transparent;border-color:var(--turquesa);color:#fff}

/* v78: modo oscuro (solo el cuerpo claro; las bandas azules no cambian) */
html[data-theme="dark"]{color-scheme:dark;
  --bg:#0E1A24; --surface:#152532; --fg:#E6ECF0; --fg-2:#B4C3CC; --muted:#8B9CA7; --line:#24394A; --line-2:#30495C;
  --chip:#1A3340; --chip-fg:#A9D3DB; --ver-bg:#1B3A44; --ver-fg:#A9D8E0; --pizarra:#8DB4C1;
  --mat-bg:#16343A; --ser-bg:#3A2F17; --obr-bg:#3B221B; --tal-bg:#1A2A40; --tk-bg:#2A2440; --pip-bg:#1E2E1A; --rot-bg:#3A1C26; --epp-bg:#36301A; --ren-bg:#33291A; --uf-bg:#15322C; --ele-bg:#22244A; --slci-bg:#3D1A17}
html[data-theme="dark"] :is(.site-h,.hero,.ph,.fh,.site-f){color-scheme:light;
  --bg:#F5F4F6; --surface:#FFFFFF; --fg:#0A1B2B; --fg-2:#3D4F5A; --muted:#6A7882; --line:#E1DEE4; --line-2:#D2CED6;
  --chip:#EEF4F5; --chip-fg:#244E58; --ver-bg:#E1F0F2; --ver-fg:#1D5864; --pizarra:#2E4B58;
  --mat-bg:#E3F3F5; --ser-bg:#FBF0DC; --obr-bg:#FBE7E1; --tal-bg:#E4ECF6; --tk-bg:#EEE8F6; --pip-bg:#E6F0E0; --rot-bg:#F8E6EC; --epp-bg:#FAF3DA; --ren-bg:#F3ECE0; --uf-bg:#E1F1EC; --ele-bg:#E8E9F8; --slci-bg:#F9E3E0}
html[data-theme="dark"] .btn-pri:hover{background:#2E4B58}
html[data-theme="dark"] :is(.tree summary .fc:hover,.tree button.tp:hover,.interp button.chip:hover,.comparte svg){color:var(--turquesa)}
html[data-theme="dark"] .dest,html[data-theme="dark"] .bonif{background:#3A3018;color:#F0D9A0}
html[data-theme="dark"] .err{background:#3A1F1B;color:#F2B8AE}
html[data-theme="dark"] .tipo:hover{box-shadow:0 16px 36px -24px rgba(0,0,0,.8)}
.theme-t{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:9px;color:#cfe3e8;border:1px solid rgba(255,255,255,.18);background:transparent;padding:0}
.theme-t:hover{border-color:var(--turquesa);color:#fff}
.theme-t svg{width:17px;height:17px}
.theme-t .sun{display:none}
html[data-theme="dark"] .theme-t .sun{display:block}
html[data-theme="dark"] .theme-t .moon{display:none}
.site-h .theme-t{margin-left:-18px;flex:none}
@media (max-width:1180px){.site-h .theme-t{margin-left:auto}.site-h .menu-btn{margin-left:-18px}}
.reg{font-size:.32em;vertical-align:super;margin-left:.06em;font-weight:500;letter-spacing:0;opacity:.85}
/* v79: banner beta */
.beta{background:#FDE8E6;color:#B3261E;border-bottom:1px solid #F3B4AE;font-size:13.5px;line-height:1.45}
.beta .wrap{padding-block:8px}
.beta b{font-weight:700;color:#A1170F}
html[data-theme="dark"] .beta{background:#3A1614;color:#FF9B92;border-color:#6B2420}
html[data-theme="dark"] .beta b{color:#FFB4AC}
.beta{font-size:12px;line-height:1.3}
.beta .wrap{padding-block:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-width:760px){.beta{font-size:11.5px}.beta .wrap{white-space:normal}}
/* v81: nube de sub-etiquetas en la página de cada rubro */
.ph .cat-desc{font-size:18px;color:var(--on-dark);font-weight:500}
.nube{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:center;margin-bottom:28px;padding:18px 20px;background:var(--surface);border:1px solid var(--line);border-radius:14px}
.nube a{text-decoration:none;color:var(--fg);background:var(--chip);border-radius:999px;padding:5px 13px;font-weight:600;line-height:1.3;
  font-size:calc(12.5px + 7px * var(--w,.5));opacity:calc(.7 + .3 * var(--w,.5))}
.nube a:hover{color:var(--chip-fg);outline:1px solid var(--turquesa)}
.nube small{font-size:11px;font-weight:600;color:var(--muted);margin-left:6px}
/* v82: página de cada etiqueta principal */
.cat-hero.has-foto{background:linear-gradient(90deg,rgba(10,27,43,.94) 0%,rgba(10,27,43,.82) 45%,rgba(10,27,43,.35) 100%),var(--foto) center/cover no-repeat,var(--noche)}
.cat-hero .wrap{padding-block:40px 38px}
.cat-hero.has-foto .wrap{padding-block:56px 52px}
.cat-hero .cat-def{color:var(--on-dark-2);max-width:68ch;font-size:15.5px;line-height:1.6}
.cat-hero .cat-n{font-size:13px;color:var(--on-dark-2);opacity:.8}
.nube-h{font-size:15px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}
.tipo ul a{color:inherit;text-decoration:none}
.tipo li:hover{outline:1px solid var(--acc,var(--turquesa))}
.tree summary .fc-go{text-decoration:none;color:var(--muted);font-size:13px;margin-left:4px;line-height:1}
.tree summary .fc-go:hover{color:var(--turquesa)}
/* v84: especialidades */
.nube a{font-size:14px;opacity:1}
.esp{font-size:12.5px;color:var(--fg-2);margin:2px 0 4px;line-height:1.4}
.esp b{color:var(--mat);font-weight:700}
.fh .esp{color:var(--on-dark-2);font-size:14px;margin:4px 0 6px}
.fh .esp b{color:#F0B85A}
.esp-b{font-style:normal;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#7A5200;background:#FFF3D6;border:1px solid #F0C96A;border-radius:5px;padding:0 5px;margin-left:6px;vertical-align:middle}
/* v86: especialidad en una línea dentro de la vista lista */
.card .esp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#results.list .card .esp{grid-column:2;margin:0;-webkit-line-clamp:1;font-size:12px}
#results.list .card:has(.esp) .chips{display:none}
@media (min-width:901px){
  #results.list .card .esp{grid-column:3;grid-row:1;align-self:end;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-height:20px}
}
@media (max-width:900px){#results.list .card .esp{grid-column:auto}}

/* v90: vertical TALLERES (4 tipos en el directorio) */
.tipos{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1100px){.tipos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.tipos{grid-template-columns:1fr}}
@media (min-width:1000px){.rubros-list.rl6{grid-template-columns:repeat(6,minmax(0,1fr))}.rubros-list.rl6 a{padding:12px 12px}}
@media (min-width:1000px){.rubros-list.rl7{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.rubros-list.rl7 a{padding:11px 10px;font-size:13.5px}}
.rubros-list .l2{display:block;color:var(--fg-2);font-size:12px;line-height:1.45;margin-top:2px}
.rubros-list .l2:first-of-type{margin-top:4px}
.rubros-list .nw{white-space:nowrap}
.rubros-list a>span{min-width:0}
.rubros-list a{position:relative}
.rubros-list small{flex:none}
@media (min-width:1000px){.rubros-list.rl8{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* v102: botones por forma de venta en la página de rubro */
.rg-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px}
.rg-bar>span{font-size:13px;color:var(--muted);font-weight:600;margin-right:2px}
.rg-b{border:1px solid var(--line-2);background:var(--surface);color:var(--fg-2);border-radius:999px;padding:7px 14px;font-size:13.5px;font-weight:600;display:inline-flex;gap:6px;align-items:center;cursor:pointer}
.rg-b small{font-weight:500;color:var(--muted)}
.rg-b[aria-pressed="true"]{background:var(--noche);border-color:var(--noche);color:#fff}
.rg-b[aria-pressed="true"] small{color:#A9BCC6}
.rg-b:disabled,.rg-b[aria-pressed="true"]:disabled{background:var(--surface);border-color:var(--line);color:var(--muted);opacity:.6;cursor:default}
.grid [hidden]{display:none!important}
/* v104: Glosario y Normas */
a.gl{color:inherit;text-decoration:underline dotted;text-underline-offset:3px;text-decoration-color:var(--turquesa)}
a.gl:hover{color:var(--turquesa)}
.gl-page{max-width:900px}
.gl-q{width:100%;margin:0 0 14px}
.gl-idx{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.gl-idx a{font-size:13px;padding:5px 12px;border-radius:999px;background:var(--chip);color:var(--chip-fg);text-decoration:none}
.gl-sec{margin:0 0 30px}
.gl-sec h2{font-size:22px;margin:0 0 10px;padding-bottom:8px;border-bottom:2px solid var(--line)}
.gl-sec dl{margin:0}
.gl-it{padding:12px 10px;border-bottom:1px solid var(--line);border-radius:8px;scroll-margin-top:90px;transition:background .6s}
.gl-it dt{font-weight:700;font-size:16px;margin-bottom:3px}
.gl-it dd{margin:0;color:var(--fg-2);line-height:1.55}
.gl-it.gl-hit{background:var(--ver-bg)}
.gl-sec[hidden],.gl-it[hidden]{display:none}
.stats a.siempre{color:inherit;text-decoration:underline;text-underline-offset:3px}
.stats a.siempre b{font:inherit;font-weight:700}
/* v109: Empresas sin columna de filtros; sectores debajo del buscador */
.dir{grid-template-columns:minmax(0,1fr)!important}
.dir #results{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.sect{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;grid-column:1 / -1}
.sect .sc{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:#E6ECF0;border-radius:999px;padding:6px 14px;font-size:13.5px;font-weight:500;cursor:pointer;text-decoration:none}
.sect .sc:hover{border-color:var(--turquesa)}
.sect .sc[aria-pressed="true"]{background:var(--turquesa);border-color:var(--turquesa);color:var(--noche);font-weight:600}
.sect .sc-all{border-style:dashed}
/* v111 – Links de interés por grupo */
.lk-idx{margin-bottom:30px}
.lk-sec{margin:0 0 46px;scroll-margin-top:120px}
.lk-sec .sec-h{margin-bottom:18px}
.lk-sg{font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin:18px 0 10px}
.lk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.lk-m{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--fg);text-decoration:none;transition:border-color .15s,transform .15s}
.lk-m:hover{border-color:var(--pizarra);transform:translateY(-1px)}
.lk-m .lg{flex:0 0 40px;width:40px;height:40px;font-size:13px}
.lk-b{display:grid;gap:3px;min-width:0}
.lk-b b{font-size:15px;line-height:1.3}
.lk-b small{font-size:12.5px;color:var(--muted)}
.lk-d{font-size:13.5px;color:var(--fg-2);line-height:1.45}
.lk-u{display:inline-flex;gap:5px;align-items:center;font-size:12.5px;color:var(--pizarra);margin-top:2px;overflow-wrap:anywhere}
.lk-u svg{width:13px;height:13px;flex:none}
@media (max-width:760px){.lk-grid{grid-template-columns:1fr}}
.lk-m .lg b{font-size:13px}
.lk-m .lg b{letter-spacing:-.02em}
/* v114: Empresas con una sola barra de búsqueda + link a Filtro avanzado */
.ph-q .wrap{display:flex;align-items:center;gap:18px;padding-block:14px}
.ph-q h1{margin:0;flex:none}
.qbar{position:relative;display:flex;align-items:center;flex:1;min-width:0;max-width:820px;height:48px;background:var(--surface);border:2px solid var(--line);border-radius:12px;transition:border-color .15s}
.qbar:focus-within{border-color:var(--turquesa)}
.qbar>svg{flex:none;width:20px;height:20px;margin-left:14px;fill:none;stroke:var(--fg-2);stroke-width:2;stroke-linecap:round}
.qbar input{flex:1;min-width:0;height:100%;border:0;background:transparent;color:var(--fg);font:inherit;font-size:16px;padding:0 10px;outline:none}
.qbar input::-webkit-search-cancel-button{cursor:pointer}
.qadv{flex:none;display:inline-flex;align-items:center;gap:6px;height:100%;padding:0 14px;border-left:1px solid var(--line);color:var(--fg-2);font-size:12.5px;font-weight:600;text-decoration:none;white-space:nowrap}
.qadv:hover{color:var(--petroleo)}
.qadv svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.qadv b{min-width:18px;height:18px;border-radius:9px;background:var(--petroleo);color:#fff;font-size:11px;display:inline-grid;place-items:center;padding:0 5px}
.qadv-s{display:none}
@media (max-width:760px){.ph-q .wrap{padding-block:10px}.ph-q h1{display:none}.qbar{height:44px;border-radius:10px}.qadv{padding:0 10px}.qadv-l{display:none}.qadv-s{display:inline}}
/* Página de filtro avanzado */
.adv{max-width:820px;margin:22px auto 0;display:grid;gap:16px;padding-bottom:96px}
.adv fieldset{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:16px 18px;margin:0;display:grid;gap:12px;min-width:0}
.adv legend{font-family:var(--f-display);font-weight:700;font-size:15px;padding:0 6px;color:var(--fg)}
.adv-h{margin:-4px 0 0;font-size:12.5px;color:var(--fg-2)}
.adv-f{display:grid;gap:5px;min-width:0}
.adv-f>span{font-size:12.5px;font-weight:600;color:var(--fg-2)}
.adv-f input,.adv-f select{height:42px;border:1px solid var(--line-2);border-radius:9px;padding:0 12px;background:var(--surface);color:var(--fg);font:inherit;font-size:15px;min-width:0;width:100%;box-sizing:border-box}
.adv-f input:focus,.adv-f select:focus{outline:none;border-color:var(--turquesa)}
.adv-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.adv-g{display:grid;gap:8px}
.adv-g>b{font-size:12.5px;color:var(--fg-2)}
.adv-ck{display:flex;flex-wrap:wrap;gap:8px}
.adv-ck label{display:inline-flex;align-items:center;cursor:pointer}
.adv-ck input{position:absolute;opacity:0;pointer-events:none}
.adv-ck span{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line-2);border-radius:999px;padding:7px 13px;font-size:13.5px;background:var(--surface);color:var(--fg)}
.adv-ck span svg,.adv-ck span img{width:16px;height:11px}
.adv-ck input:checked+span{background:var(--petroleo);border-color:var(--petroleo);color:#fff;font-weight:600}
.adv-ck input:focus-visible+span{outline:2px solid var(--turquesa);outline-offset:2px}
.adv-bar{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;justify-content:center;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -6px 18px rgba(0,0,0,.06)}
.adv-bar .btn-pri{min-width:220px}
.adv-bar .btn:disabled{opacity:.55;cursor:default}
@media (max-width:640px){.adv-2{grid-template-columns:1fr}.adv fieldset{padding:14px}.adv-bar .btn-pri{flex:1;min-width:0}}
/* v115: buscador del inicio sin desplegable de sector */
.search-xl{flex-wrap:nowrap;align-items:center}
.search-xl .hs-ic{flex:none;width:20px;height:20px;margin-left:10px;fill:none;stroke:var(--fg-2);stroke-width:2;stroke-linecap:round}
.search-xl input{flex:1 1 auto}
.hs-adv{flex:none;display:inline-flex;align-items:center;gap:6px;height:46px;padding:0 12px;color:var(--fg-2);font-size:12.5px;font-weight:600;text-decoration:none;white-space:nowrap;border-left:1px solid var(--line)}
.hs-adv:hover{color:var(--petroleo)}
.hs-adv svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
@media (max-width:640px){.hs-adv span{display:none}.hs-adv{padding:0 10px}.search-xl .hs-ic{display:none}.search-xl .btn{padding:10px 14px}}
/* v117: buscador de la página Rubros */
.rb-bar{margin-top:18px;max-width:640px}
.rubros-list a[hidden],.rb-g[hidden]{display:none}
.rb-hit{display:block;font-style:normal;font-size:12px;color:var(--turquesa);margin-top:4px;line-height:1.4}
#rb-empty{margin-bottom:24px}
/* v122: logos en tonos de azul (duotono petróleo) en tarjetas y listados; al pasar el mouse vuelven a su color. En la ficha se ven en color. */
.lg img{filter:grayscale(1) sepia(1) saturate(2.6) hue-rotate(168deg) brightness(.92);transition:filter .2s}
.card:hover .lg img,.fh .lg img{filter:none}
/* v123: cuadraditos de verticales arriba de Rubros (saltan a cada vertical) */
.rb-v{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin-bottom:40px}
.rb-v a{display:grid;grid-template-columns:36px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:12px;background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--acc,var(--turquesa));border-radius:12px;text-decoration:none;color:var(--fg);transition:border-color .15s,transform .15s}
.rb-v a:hover{border-color:var(--acc,var(--turquesa));transform:translateY(-1px)}
.rb-v .ico{grid-row:1 / span 2;width:36px;height:36px;border-radius:9px;display:grid;place-items:center;background:var(--acc-bg,var(--bg));color:var(--acc,var(--turquesa))}
.rb-v .ico svg{width:18px;height:18px}
.rb-v b{font:600 13.5px/1.25 var(--f-display)}
.rb-v small{font-size:12px;color:var(--muted)}
.rb-g{scroll-margin-top:84px}
@media (max-width:640px){.rb-v{grid-template-columns:1fr 1fr;gap:8px}.rb-v a{padding:10px;grid-template-columns:30px minmax(0,1fr);column-gap:8px}.rb-v .ico{width:30px;height:30px}}
/* v124: inicio. Carrusel de empresas (una por vertical, al azar) y verticales compactas */
.car-sec{padding:34px 0 8px;overflow:hidden}
.car-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin-bottom:14px}
.car-h .k{font-size:13px;font-weight:600;color:var(--mat);letter-spacing:.05em;text-transform:uppercase;margin:0}
.car-h span{font-size:13.5px;color:var(--muted)}
.car{position:relative;-webkit-mask:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.car-track{display:flex;width:max-content;animation:car-mv calc(var(--n) * 6s) linear infinite}
.car:hover .car-track,.car:focus-within .car-track,.car.paused .car-track{animation-play-state:paused}
.car-set{display:flex;gap:16px;padding-right:16px}
.car-set>.card{width:300px;flex:none}
@keyframes car-mv{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.car{overflow-x:auto;-webkit-mask:none;mask:none}.car-track{animation:none}.car-set[aria-hidden]{display:none}}
@media (max-width:640px){.car-set>.card{width:260px}.car-track{animation-duration:calc(var(--n) * 5s)}}
.vt-home{margin-bottom:0}
.vt-home a{min-height:68px}
/* v125: verticales en negrita dentro del desplegable de rubros del filtro avanzado */
.adv-f optgroup{font-weight:700;font-style:normal}
.adv-f option{font-weight:400}

/* v129: link en el banner beta */
.beta a{color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px}

/* v130: colores por vertical solo para SLCI (rojo) y EPPs (amarillo); el resto en el tono de marca */
.t-tal,.t-tk,.t-pip,.t-rot,.t-ren,.t-uf,.t-ele,.t-mat,.t-ser,.t-obr{--acc:var(--pizarra);--acc-bg:var(--chip)}
:root{--epp:#C49A12;--epp-bg:#FBF3D6}
html[data-theme="dark"]{--slci:#E2594B;--epp:#E3B93C}
html[data-theme="dark"] :is(.site-h,.hero,.ph,.fh,.site-f){--slci:#C0392B;--epp:#C49A12}
/* v131: servicios en /planes */
.svc-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.svc-m{font-size:12px;font-weight:600;color:var(--pizarra);text-transform:uppercase;letter-spacing:.04em;margin-top:-4px}
.svc-n{background:var(--chip);color:var(--chip-fg)!important;border-radius:9px;padding:10px 12px;font-size:13.5px}
.svc-n b{color:inherit}
@media (max-width:760px){.svc-g{grid-template-columns:1fr}}
/* v131: header más ancho y menú hamburguesa antes, para que entren todos los links */
.site-h .wrap{max-width:1400px;gap:22px}
.site-h nav.main{gap:16px}
/* v132: Renovables & BESS en verde */
:root{--bess:#2E8B57;--bess-bg:#E2F2E8}
html[data-theme="dark"]{--bess:#5CC489;--bess-bg:#16301F}
html[data-theme="dark"] :is(.site-h,.hero,.ph,.fh,.site-f){--bess:#2E8B57;--bess-bg:#E2F2E8}
.t-bess{--acc:var(--bess);--acc-bg:var(--bess-bg)}

/* PRUEBA 2026-10-05: nombres de empresa en mayúscula (tarjetas y ficha). Para volver atrás, borrar esta regla. */
.card h3,.fh-main h1{text-transform:uppercase;letter-spacing:.02em}

/* Ficha · Qué ofrece agrupado por rubro (v145) */
.of-grid{display:grid;gap:8px}
@media (min-width:900px){.of-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.of-row .of-c{font-weight:600;text-decoration:none;color:inherit}
.of-row .of-c:hover{text-decoration:underline}
.of-subs{display:flex;flex-wrap:wrap;gap:4px 10px;margin-top:3px}
.of-subs a{font-size:12.5px;color:var(--muted);text-decoration:none}
.of-subs a:hover{color:inherit;text-decoration:underline}
.of-subs a+a::before{content:"· ";margin-left:-6px}
.of-rol{display:flex;flex-direction:column;gap:4px;align-items:flex-end}
@media (max-width:700px){.of-row{grid-template-columns:1fr;gap:6px}.of-rol{align-items:flex-start}.of-row .of-rol .rol{white-space:normal}}

/* v147: sellos de cámaras/ferias (AOG, Arminera, GAPP…) con el contenido bien centrado */
.badges{align-items:center}
.inst{box-sizing:border-box;justify-content:center;line-height:1;padding-top:0;padding-bottom:0}
.inst img{max-height:14px;object-fit:contain;margin:auto 0}
.inst.big{line-height:1}

/* v148: cuadraditos de verticales en mayúscula, "Materiales" arriba y el tipo abajo; empresas · rubros en un solo renglón */
.rb-v b{text-transform:uppercase;letter-spacing:.03em;font-size:12.5px}
.rb-v small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11.5px}
/* PRUEBA v148: nombres de rubro en mayúscula en las tarjetas de Rubros y en el título de cada rubro */
.rubros-list .l1{text-transform:uppercase;letter-spacing:.02em;font-size:13.5px}
.cat-hero h1{text-transform:uppercase;letter-spacing:.01em}

/* v156: mega verticales */
.mega{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;margin:0 0 14px}
.mega-b{display:grid;gap:2px;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--fg);font:700 13px/1.2 var(--f-display);text-transform:uppercase;letter-spacing:.04em;cursor:pointer}
.mega-b small{font:500 11.5px/1.2 var(--f-body);text-transform:none;letter-spacing:0;color:var(--muted)}
.mega-b:hover{border-color:var(--pizarra)}
.mega-b[aria-pressed="true"]{background:var(--pizarra);border-color:var(--pizarra);color:#fff}
.mega-b[aria-pressed="true"] small{color:rgba(255,255,255,.75)}
.mega-soon{margin:-4px 0 14px}
.mg-off{display:none!important}
@media (max-width:640px){.mega{grid-template-columns:1fr 1fr}.mega-b{padding:10px 12px;font-size:12px}}

/* v159: links en los números del inicio */
.stats a.st-l{color:inherit;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.stats a.st-l:hover{text-decoration-thickness:2px}

/* v162: varios catálogos por empresa */
.cat-list{display:grid;gap:8px}

/* v170: videos de fondo en el inicio y en las páginas de rubro */
.has-v{position:relative;overflow:hidden;isolation:isolate}
.has-v .bg-v{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;background:var(--noche)}
.has-v::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}
.hero.has-v::before{background:linear-gradient(90deg,rgba(10,27,43,.90) 0%,rgba(10,27,43,.72) 50%,rgba(10,27,43,.45) 100%),linear-gradient(0deg,rgba(10,27,43,.55) 0%,transparent 45%)}
.ph.has-v::before{background:linear-gradient(90deg,rgba(10,27,43,.94) 0%,rgba(10,27,43,.82) 45%,rgba(10,27,43,.35) 100%)}
.cat-hero.has-v .wrap{padding-block:56px 52px}
@media (max-width:700px){.hero.has-v::before{background:rgba(10,27,43,.78)}.ph.has-v::before{background:rgba(10,27,43,.8)}}

/* v174: botón Carga liviana (sin videos), al lado del de modo oscuro/claro */
.site-h .lite-t{margin-left:-14px;flex:none}
.lite-t .off{display:none}
html[data-lite] .lite-t{border-color:var(--turquesa);color:var(--turquesa)}
html[data-lite] .lite-t .off{display:inline}

/* v176: micrófono en los buscadores (búsqueda por voz) */
.mic{flex:none;display:inline-grid;place-items:center;width:40px;height:40px;margin:0 4px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--fg-2);cursor:pointer;transition:background .15s,color .15s}
.mic:hover{background:var(--chip);color:var(--petroleo)}
.mic:focus-visible{outline:2px solid var(--turquesa);outline-offset:1px}
.mic svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mic.on{background:#D93025;color:#fff;animation:micp 1.2s ease-out infinite}
.mic.on:hover{background:#B3261E;color:#fff}
@keyframes micp{0%{box-shadow:0 0 0 0 rgba(217,48,37,.5)}100%{box-shadow:0 0 0 12px rgba(217,48,37,0)}}
@media (prefers-reduced-motion:reduce){.mic.on{animation:none}}
.qbar .mic{width:36px;height:36px}
@media (max-width:640px){.mic{width:36px;height:36px;margin:0 2px}}

/* v178: Subí lo que buscás */
.clip{flex:none;display:inline-grid;place-items:center;width:40px;height:40px;margin:0 2px;border-radius:50%;color:var(--fg-2);cursor:pointer;transition:background .15s,color .15s}
.clip:hover{background:var(--chip);color:var(--petroleo)}
.clip:focus-within{outline:2px solid var(--turquesa);outline-offset:1px}
.clip svg,.hs-req svg,.req-ic svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.qbar .clip{width:36px;height:36px}
@media (max-width:640px){.clip{width:36px;height:36px;margin:0}.search-xl .clip{display:none}}
.hs-col{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0}
.hs-req span{min-width:0}
.hs-req{display:flex;justify-self:start;max-width:100%;align-items:center;gap:8px;color:rgba(255,255,255,.82);font-size:13.5px;text-decoration:none;line-height:1.35}
.hs-req svg{flex:none;width:17px;height:17px}
.hs-req b{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--turquesa)}
.hs-req:hover b{text-decoration-thickness:2px}
.req{display:grid;gap:36px;padding-top:40px}
.req-in{display:grid;gap:16px;max-width:820px}
.req-drop{display:grid;justify-items:center;gap:6px;text-align:center;padding:34px 20px;border:2px dashed var(--line-2);border-radius:16px;background:var(--surface);color:var(--fg-2);cursor:pointer;transition:border-color .15s,background .15s}
.req-drop:hover,.req-drop.on,.req-drop:focus-within{border-color:var(--turquesa);background:var(--chip)}
.req-drop b{color:var(--fg);font-size:17px}
.req-drop span:last-child{font-size:13px}
.req-ic{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--chip);color:var(--petroleo);margin-bottom:4px}
.req-ic svg{width:26px;height:26px}
.req-or{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px}
.req-or::before,.req-or::after{content:"";flex:1;height:1px;background:var(--line)}
.req-form{display:grid;gap:10px;justify-items:start}
.req-form textarea{font:inherit;font-size:15px;color:var(--fg)}
.req-priv{font-size:12.5px;color:var(--muted);display:flex;gap:6px;align-items:center}
.req-priv svg{width:14px;height:14px}
.req-st{display:flex;align-items:center;gap:12px;color:var(--fg-2);font-weight:500;padding:18px 0}
.req-st .spin{width:20px;height:20px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--turquesa);animation:reqspin .8s linear infinite}
@keyframes reqspin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.req-st .spin{animation-duration:2.4s}}
.req-res{display:grid;gap:26px}
.req-h{display:flex;flex-wrap:wrap;gap:14px 24px;justify-content:space-between;align-items:flex-end}
.req-h h2{font-size:26px;margin:2px 0 6px}
.req .k{font-size:13px;font-weight:600;color:var(--pizarra);letter-spacing:.05em;text-transform:uppercase;overflow-wrap:anywhere}
.req-sum{max-width:760px;color:var(--fg);font-size:15.5px;line-height:1.5;margin-bottom:6px}
.req-chips{display:flex;flex-wrap:wrap;gap:8px}
.req-chip{font:inherit;font-size:13px;padding:6px 12px;border-radius:999px;border:1px solid var(--petroleo);background:var(--petroleo);color:#fff;cursor:pointer}
.req-chip.off{background:transparent;color:var(--fg-2);border-color:var(--line-2);text-decoration:line-through}
.req-g{display:grid;gap:14px;padding-top:22px;border-top:1px solid var(--line)}
.req-gh{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;align-items:flex-end}
.req-gh h3{font-size:19px;margin:2px 0 4px}
.req-mot{color:var(--fg-2);font-size:14px}
.req-g blockquote{margin:6px 0 0;padding:6px 12px;border-left:3px solid var(--turquesa);background:var(--chip);color:var(--fg-2);font-size:13px;border-radius:0 8px 8px 0;max-width:760px;overflow-wrap:anywhere}
.req-new{text-align:center}

/* v178: foto de la especialidad en el encabezado de Empresas */
.ph-q.sub-foto{background:var(--foto) center/cover no-repeat,var(--noche)}
.ph-q.sub-foto .bg-v{display:none}
.req-ts:empty{display:none}
.req-ts{max-width:820px}

/* v181: usuarios (Ingresar / Mi cuenta) y "Subí lo que buscás" solo con usuario */
.usr-b{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 12px;border-radius:9px;border:1px solid rgba(255,255,255,.18);color:#e6f0f2;font-size:14px;font-weight:600;text-decoration:none;white-space:nowrap;max-width:170px}
.usr-b:hover{border-color:rgba(255,255,255,.4)}
.usr-b svg{flex:none;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.usr-b span{overflow:hidden;text-overflow:ellipsis}
.usr-b.on{border-color:var(--turquesa)}
@media (max-width:760px){.usr-b{padding:0;width:38px;justify-content:center}.usr-b span{display:none}}
.usr{padding-top:40px}
.usr-card{max-width:520px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:28px}
.usr-f{display:grid;gap:14px}
.usr-f h2{font-size:20px}
.usr-f label{display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--fg-2)}
.usr-f .inp{font:inherit;font-size:16px;color:var(--fg)}
.usr-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:480px){.usr-2{grid-template-columns:1fr}.usr-card{padding:20px}}
.usr-code{letter-spacing:.35em;font-size:22px!important;text-align:center;max-width:240px}
.usr-err{color:#C5221F;font-size:14px;font-weight:500}
html[data-theme=dark] .usr-err{color:#F28B82}
@media (prefers-color-scheme:dark){html:not([data-theme=light]) .usr-err{color:#F28B82}}
.usr-lnk{background:none;border:0;padding:0;font:inherit;cursor:pointer}
.usr-f button.btn{justify-self:start}
.usr-dl{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;margin-bottom:22px}
.usr-dl dt{color:var(--muted);font-size:13px}
.usr-dl dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.usr-acc{display:flex;flex-wrap:wrap;gap:10px}
.req-gate{display:grid;grid-template-columns:auto 1fr auto;gap:16px 20px;align-items:center;max-width:820px;padding:20px 22px;border-radius:16px;background:var(--chip);border:1px solid var(--line)}
.req-gate h2{font-size:18px;margin-bottom:4px}
.req-gate p{color:var(--fg-2);font-size:14px}
.req-gate .req-ic{margin:0}
@media (max-width:640px){.req-gate{grid-template-columns:1fr;justify-items:start}}
.usr-emp{margin-top:18px}
.usr-emp h2{font-size:18px;margin-bottom:10px}
.usr-ef{margin-top:14px}
.usr-emps{list-style:none;padding:0;margin:0 0 4px;display:grid;gap:8px}
.usr-emps li{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:10px}
.usr-est{font-size:12px;padding:3px 9px;border-radius:999px;background:var(--chip);color:var(--fg-2);white-space:nowrap}
.usr-est.aprobado{background:#1E7B4E;color:#fff}
.usr-est.rechazado{background:#8C2A24;color:#fff}
.req-ia{display:flex;gap:8px;align-items:flex-start;margin-top:8px;padding:10px 12px;border-radius:10px;background:var(--chip);font-size:14px;color:var(--fg);max-width:760px}
.req-ia svg,.req-gate .req-ic svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;margin-top:1px}
.req-gate .req-ic svg{width:26px;height:26px}
.site-h .usr-b{margin-left:-14px;flex:none}

/* v192: barra de precios de energía en el inicio, en el mismo renglón que el kicker. Si no entra, se desplaza sola (cinta). */
.hero-kick{display:flex;align-items:center;gap:10px 18px;min-width:0}
.hero-kick .kicker{white-space:nowrap;flex:none}
.oil{flex:1 1 auto;min-width:0;display:flex;justify-content:flex-end;overflow:hidden;padding:5px 0;border:1px solid var(--dark-line);border-radius:999px;background:rgba(10,27,43,.45);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);font-size:12.5px;color:var(--on-dark);font-variant-numeric:tabular-nums}
.oil-tr{display:flex;flex:none}
.oil-set{display:flex;align-items:center;gap:12px;padding:0 14px;white-space:nowrap}
.oil-dup{display:none}
.oil.run{justify-content:flex-start;-webkit-mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent)}
.oil.run .oil-dup{display:flex}
.oil.run .oil-set{padding:0 18px}
.oil.run .oil-tr{animation:oil-m var(--oil-d,30s) linear infinite}
.oil.run:hover .oil-tr,.oil.run:focus-within .oil-tr{animation-play-state:paused}
@keyframes oil-m{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.oil.run{overflow-x:auto;scrollbar-width:none}.oil.run .oil-tr{animation:none}.oil.run .oil-dup{display:none}}
.oil-i{display:inline-flex;align-items:baseline;gap:5px;white-space:nowrap;color:inherit;text-decoration:none}
a.oil-i:hover b{text-decoration:underline}
.oil-i b{font-weight:600;color:var(--turquesa);letter-spacing:.02em}
.oil-p{font:600 14px/1 var(--f-display)}
.oil-un{font-size:10px;color:var(--on-dark-2);letter-spacing:.02em}
.oil-c{font-size:11.5px;color:var(--on-dark-2)}
.oil-c.up{color:#6FD39A}
.oil-c.dn{color:#F28B7A}
.oil-sep{width:1px;align-self:stretch;background:var(--dark-line)}
.oil-load .oil-p{opacity:.5}
@media (max-width:760px){
  .hero-kick{flex-wrap:wrap}
  .oil{flex-basis:100%;border-radius:12px}
}
/* v191: la barra de precios no debe ensanchar el hero en celular */
.hero .wrap{grid-template-columns:minmax(0,1fr)}
.hero .wrap>*{min-width:0}
/* v192: página /indicadores */
.ind-page{max-width:900px}
.ind-sec{margin:0 0 34px;padding-bottom:26px;border-bottom:1px solid var(--line);display:grid;gap:10px;scroll-margin-top:90px}
.ind-sec h2{font-size:24px;margin:0}
.ind-sec p{margin:0;color:var(--fg-2,var(--fg));line-height:1.55}
.ind-v{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}
.ind-v b{font:700 34px/1.1 var(--f-display);font-variant-numeric:tabular-nums;color:var(--fg)}
.ind-v span{color:var(--muted)}
.ind-v em{font-style:normal;font-weight:600}
.ind-v em.up{color:#1E9E5A}.ind-v em.dn{color:#D0533F}
.ind-v small{flex-basis:100%;color:var(--muted);font-size:13px}
.ind-u{font-size:14px;color:var(--muted)!important}
.ind-src{font-size:14px}
.ind-calc{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px 20px;display:grid;gap:10px}
.ind-calc h3{font-size:17px;margin:0}
.ind-calc ul{margin:0;padding-left:20px;display:grid;gap:4px;font-size:14px;color:var(--fg-2,var(--fg))}
.ind-f{font:600 15px/1.4 var(--f-display);padding:10px 14px;border-radius:10px;background:var(--chip);color:var(--chip-fg,var(--fg))!important}
.ind-ch{margin:6px 0 0}
.ind-ch svg{width:100%;height:auto;display:block}
.ind-ch rect{fill:var(--turquesa)}
.ind-ch .g{stroke:var(--line);stroke-width:1}
.ind-ch text{font-size:11px;fill:var(--muted)}
.ind-ch .avg{stroke:#D9962B;stroke-width:2;stroke-dasharray:6 4}
.ind-ch .avg-t{fill:#D9962B;font-weight:600}
.ind-ch figcaption{font-size:13px;color:var(--muted);margin-top:4px}
/* v199: gráficos históricos en /indicadores */
.hist{position:relative;margin:4px 0 6px;padding:14px 16px 10px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.hist-h{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:13px;color:var(--muted)}
.hist-h b{color:var(--fg);font-size:14px}
.hist-r{margin-left:auto;display:flex;gap:4px;flex-wrap:wrap}
.hist-r button{font:inherit;font-size:12px;padding:3px 9px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--fg);cursor:pointer}
.hist-r button.on{background:var(--petroleo);border-color:var(--petroleo);color:#fff}
.hist-svg{width:100%;height:auto;display:block;margin-top:6px;touch-action:pan-y}
.hist-svg .g{stroke:var(--line);stroke-width:1}
.hist-svg text{font-size:11px;fill:var(--muted)}
.hist-svg .ln{fill:none;stroke:var(--turquesa);stroke-width:2;stroke-linejoin:round}
.hist-svg .area{fill:var(--turquesa);opacity:.12}
.hist-svg .pt,.hist-svg .hp{fill:var(--turquesa);stroke:var(--surface);stroke-width:2}
.hist-svg .hv{stroke:var(--muted);stroke-dasharray:3 3}
.hist-tip{position:absolute;padding:4px 8px;border-radius:6px;background:var(--fg);color:var(--bg);font-size:12px;white-space:nowrap;pointer-events:none}
.hist-n{font-size:12.5px;color:var(--muted)!important;margin:6px 0 0!important}
.hist-msg{font-size:13px;color:var(--muted)!important}
.hist-k{margin-left:0}
.hist-k+.hist-r{margin-left:auto}
.hist-svg .ev{stroke:#D9962B;stroke-width:1;stroke-dasharray:2 3;opacity:.8}
.hist-svg .evc{fill:#D9962B}
.hist-svg text.evt{fill:#fff;font-size:9.5px;font-weight:700}
.hist-ev{margin:8px 0 0;padding-left:22px;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:2px 18px;font-size:12.5px;color:var(--fg-2,var(--fg))}
.hist-ev li::marker{color:#D9962B;font-weight:700}
.hist-ev small{color:var(--muted)}
/* v201: orden de mérito (CAMMESA) en /indicadores */
.md{margin-top:6px}
.md-ch{margin:4px 0 0}
.md-ch svg{width:100%;height:auto;display:block}
.md-ch text{font-size:11px;fill:var(--muted)}
.md-ch .md-ax{font-size:10.5px}
.md-ch .md-d{stroke:var(--fg);stroke-width:1.2;stroke-dasharray:5 4;opacity:.6}
.md-ch .md-dt{font-size:10.5px;fill:var(--fg)}
.md-ch figcaption{font-size:12.5px;color:var(--muted);margin-top:4px}
.md-nu rect,.md-mix .md-nu,.md-ley .md-nu{fill:#8E6CC0;background:#8E6CC0}
.md-so rect,.md-mix .md-so,.md-ley .md-so{fill:#E8B53A;background:#E8B53A}
.md-eo rect,.md-mix .md-eo,.md-ley .md-eo{fill:#5DB89B;background:#5DB89B}
.md-hi rect,.md-mix .md-hi,.md-ley .md-hi{fill:#4E8FD0;background:#4E8FD0}
.md-cc rect{fill:#D9962B}
.md-tg rect,.md-mix .md-tg,.md-ley .md-tg{fill:#D27A3A;background:#D27A3A}
.md-mo rect{fill:#C2483B}
.md-mix .md-or,.md-ley .md-or{background:#9BCB6A}
.md-mix .md-im,.md-ley .md-im{background:#8A97A3}
.md-l{margin:0;padding-left:22px;display:grid;gap:5px;font-size:14px;color:var(--fg-2,var(--fg))}
.md-mix{display:flex;height:22px;border-radius:6px;overflow:hidden;gap:2px}
.md-mix span{min-width:3px}
.md-ley{list-style:none;padding:0!important;display:flex!important;flex-wrap:wrap;gap:4px 16px!important}
.md-ley i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:0}
.md-ley small{color:var(--muted)}
/* v201: El sector en números (/sector, sector.js) */
.sec-stats{margin-bottom:26px}
.sec-stats span em{font-style:normal;font-weight:600}
.sec-stats em.up,.sec-kp em.up{color:#2A9D8F}
.sec-stats em.dn,.sec-kp em.dn{color:#D0664B}
.sec-kp{display:flex;flex-wrap:wrap;gap:10px 26px;margin:6px 0 12px}
.sec-kp div{display:grid;grid-template-columns:auto auto;gap:0 8px;align-items:baseline}
.sec-kp i{display:none}
.sec-kp span{grid-column:1 / -1;font-size:12.5px;color:var(--muted)}
.sec-kp b{font:700 20px/1.2 var(--f-display);font-variant-numeric:tabular-nums}
.sec-kp em{font-style:normal;font-size:13px;font-weight:600;color:var(--muted)}
.sec-leg{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:12.5px;color:var(--fg-2);margin:8px 0 2px}
.sec-leg i,.sec-tip i,.sec-dot{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.sec-ch{position:relative}
.sec-svg,.sec-bars{width:100%;height:auto;display:block;margin-top:6px;touch-action:pan-y}
.sec-svg .g,.sec-bars .g{stroke:var(--line);stroke-width:1}
.sec-svg text,.sec-bars text{font-size:11px;fill:var(--muted)}
.sec-bars text.val{font-size:10.5px;fill:var(--fg-2)}
.sec-bars text.hi{fill:var(--fg);font-weight:600}
.sec-svg .hv{stroke:var(--muted);stroke-dasharray:3 3}
.sec-tip{position:absolute;display:grid;gap:2px;min-width:200px;padding:8px 10px;border-radius:8px;background:var(--fg);color:var(--bg);font-size:12px;pointer-events:none;z-index:2}
.sec-tip span{white-space:nowrap}
.sec-tip .t{margin-top:2px;font-weight:600}
.sec-tip small{opacity:.75;max-width:220px}
.sec-h3{font-size:16px;margin:22px 0 8px}
.sec-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:18px}
.sec-two h3{font-size:15px;margin:0 0 4px}
.sec-bar{display:inline-block;width:56px;height:7px;border-radius:4px;background:var(--line);margin-right:8px;vertical-align:1px;overflow:hidden}
.sec-bar i{display:block;height:100%}
.sec-bar.w{width:100%;margin:0}
.sec-est{display:grid;gap:8px}
.sec-est div{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto;gap:10px;align-items:center;font-size:13.5px}
.sec-est b{font-variant-numeric:tabular-nums;min-width:56px;text-align:right}
.tbl tr.tot td{background:var(--bg)}
.sec-notas{display:grid;gap:8px;padding-left:18px;font-size:14px;color:var(--fg-2)}
.sec-mini{margin-top:34px}
@media (max-width:760px){.sec-two{grid-template-columns:1fr}.sec-est div{grid-template-columns:1fr auto}.sec-est .sec-bar{grid-column:1 / -1;grid-row:2}.sec-kp b{font-size:17px}}
.sec-page{max-width:1180px}
.sec-page .ind-sec{grid-template-columns:minmax(0,1fr)}
.sec-page .ind-sec>p{max-width:80ch}
.sec-u td{vertical-align:middle}
.sec-u .sec-bar{width:70px;margin:4px 6px 0 0}
.sec-two .sec-bars{max-width:520px}

/* v219: header que nunca ensancha la página.
   - Links de conocimiento agrupados en "Industria" (desplegable).
   - El script inline de index.html mide: si los links no entran, agrega .compact y pasan al botón "Menú". */
.site-h{overflow-x:clip}
.site-h .wrap{min-width:0}
.site-h .logo{flex:none}
.site-h nav.main{align-items:center}
.site-h.compact nav.main{display:none}
.site-h.compact .menu-btn{display:inline-flex;margin-left:-12px}
.site-h.compact .cta{margin-left:auto}
.site-h.compact.open nav.main{display:flex;flex-direction:column;align-items:stretch;position:absolute;top:68px;left:0;right:0;max-height:calc(100dvh - 68px);overflow-y:auto;background:var(--noche);padding:16px 20px;gap:14px;border-bottom:1px solid var(--dark-line)}
.nav-dd{position:relative}
.nav-dd-b{display:inline-flex;align-items:center;gap:4px;background:none;border:0;padding:0;font:inherit;color:var(--on-dark-2);cursor:pointer}
.nav-dd-b svg{width:14px;height:14px;transition:transform .15s}
.nav-dd-b:hover,.nav-dd-b.on,.nav-dd.open .nav-dd-b{color:var(--on-dark)}
.nav-dd-m{display:none;position:absolute;top:100%;right:0;padding-top:12px;min-width:220px;z-index:30}
.nav-dd-m::before{content:"";position:absolute;inset:12px 0 0;background:var(--noche);border:1px solid var(--dark-line);border-radius:12px;box-shadow:0 14px 30px rgba(0,0,0,.35);z-index:-1}
.nav-dd-m a{display:block;padding:9px 16px}
.nav-dd-m a:first-child{margin-top:6px}.nav-dd-m a:last-child{margin-bottom:6px}
.nav-dd-m a:hover{background:rgba(255,255,255,.05)}
@media (hover:hover){.nav-dd:hover .nav-dd-m{display:block}.nav-dd:hover .nav-dd-b svg{transform:rotate(180deg)}}
.nav-dd.open .nav-dd-m{display:block}
.nav-dd.open .nav-dd-b svg{transform:rotate(180deg)}
/* en el menú del celular / compacto, el grupo va abierto como sub-lista */
.site-h.compact .nav-dd-b{pointer-events:none;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--turquesa);margin-top:4px}
.site-h.compact .nav-dd-b svg{display:none}
.site-h.compact .nav-dd-m{display:flex;flex-direction:column;gap:14px;position:static;padding:10px 0 0 12px;border-left:1px solid var(--dark-line);margin-top:8px;min-width:0}
.site-h.compact .nav-dd-m::before{display:none}
.site-h.compact .nav-dd-m a{padding:0;margin:0}
.site-h.compact .nav-dd-m a:hover{background:none}
/* v219: Empresas y Sectores con la cantidad abajo, chiquita */
.site-h nav.main a.nav-n{display:inline-flex;flex-direction:column;align-items:center;line-height:1.15}
.site-h nav.main a.nav-n small{font-size:10.5px;font-weight:500;color:var(--turquesa);letter-spacing:.01em}
.site-h.compact nav.main a.nav-n{flex-direction:row;align-items:baseline;gap:8px}
.site-h.compact nav.main a.nav-n small{font-size:12px}
/* v220: en la ficha, web / LinkedIn / Instagram / WhatsApp / email como íconos cuadrados */
.btn.btn-ic{padding:0;gap:0;flex:none;width:44px;height:44px}
.btn.btn-ic svg,.fh-cta .btn.btn-ic svg{width:19px;height:19px}
.fh .actions .btn.btn-ic{padding:0}
@media (max-width:760px){.btn.btn-ic{width:42px;height:42px}}
/* Fracturas en /sector */
.fra-spk{width:88px;height:24px;display:block}
.fra-t td{vertical-align:middle}
.fra-t td small{font-size:11.5px}
.fra-opm{display:none}
@media (max-width:760px){.fra-t th:nth-child(2),.fra-t td:nth-child(2),.fra-t th:nth-child(5),.fra-t td:nth-child(5),.fra-t th:nth-child(6),.fra-t td:nth-child(6),.fra-t th:nth-child(7),.fra-t td:nth-child(7){display:none}.fra-opm{display:inline}.fra-t th:nth-child(8),.fra-t td:nth-child(8){display:none}.fra-t{min-width:0}}
/* Fórmula de ajuste en /sector (v229) */
.faj{border:1px solid var(--line-2);border-radius:14px;padding:18px;background:var(--surface);margin-top:16px}
.faj-g{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.faj-g label{display:flex;flex-direction:column;gap:6px;font-size:12.5px;color:var(--muted);font-weight:600}
.faj-r{margin-top:16px;display:grid;grid-template-columns:auto 1fr;gap:6px 22px;align-items:baseline}
.faj-r b.big{font-size:28px;line-height:1.1}
.faj-f{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;background:var(--bg);border:1px solid var(--line-2);border-radius:9px;padding:10px 12px;margin-top:12px;overflow-x:auto;white-space:nowrap}
.faj-w{color:#C0392B;font-size:12.5px;margin-top:8px}
.faj-t td:nth-child(3),.faj-t td:nth-child(5){color:var(--muted)}
@media (max-width:900px){.faj-g{grid-template-columns:repeat(2,minmax(0,1fr))}.faj-g label:first-child{grid-column:1 / -1}}
@media (max-width:760px){.faj-r{grid-template-columns:1fr}.faj-t th:nth-child(4),.faj-t td:nth-child(4){display:none}}
/* Fórmulas de ajuste (v230) */
.aj-page [id^="aj-"]{scroll-margin-top:96px}
.aj-btns{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 6px;position:sticky;top:64px;z-index:5;padding:10px 0;background:var(--bg)}
.aj-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border:1px solid var(--line-2);border-radius:999px;background:var(--surface);font-weight:600;font-size:13.5px;text-decoration:none;color:inherit}
.aj-btn:hover{border-color:var(--turquesa)}
.aj-btn-c{background:var(--turquesa);color:#04202a;border-color:transparent}
.aj-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px;vertical-align:baseline;flex:none}
.aj-btn .aj-dot{margin-right:0}
.aj-sec h2{display:flex;align-items:center}
.aj-k{font-size:14px}
.aj-det{margin-top:10px}.aj-det summary{cursor:pointer;font-weight:600;font-size:13.5px;padding:6px 0}
.aj-g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.aj-g6{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:12px}
.aj-g6 label span{display:flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aj-g6 .aj-dot{margin-right:6px}
.aj-cl{list-style:none;padding:0;margin:10px 0 0;font-size:13.5px;display:grid;gap:4px}
.aj-res td small{color:var(--muted)}
@media (max-width:900px){.aj-g6{grid-template-columns:repeat(3,minmax(0,1fr))}.aj-g3{grid-template-columns:1fr 1fr}.aj-g3 label:first-child{grid-column:1 / -1}}
@media (max-width:760px){.aj-btns{top:56px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.aj-btn{white-space:nowrap}.aj-g6{grid-template-columns:repeat(2,minmax(0,1fr))}.aj-res th:nth-child(4),.aj-res td:nth-child(4){display:none}}
.aj-page.sec{padding-top:18px}
.aj-ts{display:none}
.aj-g6 label:first-child{grid-column:auto}
@media (max-width:760px){.aj-tl{display:none}.aj-ts{display:inline}.aj-res th:nth-child(2),.aj-res td:nth-child(2){display:none}.aj-res{min-width:0}}
@media (max-width:760px){table.tbl.aj-res{min-width:0;width:100%}.aj-res th,.aj-res td{padding-left:8px;padding-right:8px}.aj-res th:nth-child(5),.aj-res td:nth-child(5){display:none}}
/* Oleoductos y gasoductos (v236) */
.duc-top{display:grid;grid-template-columns:minmax(260px,360px) 1fr;gap:28px;align-items:start;margin-top:8px}
.duc-mapw{position:sticky;top:84px}
.duc-map{width:100%;height:auto;display:block}
.duc-arg{fill:var(--surface);stroke:var(--line-2);stroke-width:1}
.duc-vm{fill:#D9962B;opacity:.18}
.duc-vmt{font-weight:700;fill:var(--fg)}
.duc-ln{cursor:pointer;transition:stroke-width .15s}
.duc-ln:hover,.duc-ln.on{stroke-width:5}
.duc-pt{fill:var(--fg)}
.duc-tx{font-size:9.5px;fill:var(--fg-2);paint-order:stroke;stroke:var(--bg);stroke-width:3px}
.duc-leg{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;font-size:12px;color:var(--fg-2);margin-top:6px}
.duc-leg span{display:flex;align-items:center;gap:6px}
.duc-intro h2{margin-top:0}
.duc-btns{position:static;padding:0;background:none}
.duc-btns .aj-btn{font-size:12.5px;padding:6px 12px}
.duc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.duc-c{border:1px solid var(--line-2);border-left:4px solid #D9962B;border-radius:12px;padding:16px 18px;background:var(--surface);scroll-margin-top:96px}
.duc-c.duc-gas{border-left-color:#2A9D8F}
.duc-c h3{margin:0 0 4px;font-size:17px}
.duc-est{font-size:12.5px;font-weight:600;color:#2A9D8F;margin:0 0 10px}
.duc-est.obra{color:#C77A12}
.duc-c dl{display:grid;gap:5px;margin:0 0 10px;font-size:13px}
.duc-c dl div{display:grid;grid-template-columns:90px 1fr;gap:8px}
.duc-c dt{color:var(--muted);font-weight:600}
.duc-c dd{margin:0}
.duc-c > p:last-child{font-size:14px;margin:0;color:var(--fg-2)}
.duc-flash{animation:ducf 1.4s ease}
@keyframes ducf{0%{box-shadow:0 0 0 3px var(--turquesa)}100%{box-shadow:0 0 0 0 transparent}}
@media (max-width:900px){.duc-top{grid-template-columns:1fr}.duc-mapw{position:static;max-width:360px;margin:0 auto}.duc-grid{grid-template-columns:1fr}}
.duc-top > *{min-width:0}
.duc-page .duc-btns{flex-wrap:wrap;overflow:visible;margin:0 0 6px;padding:0;position:static}
.duc-kp{margin-bottom:22px}
.ind-page .ind-sec{scroll-margin-top:96px}
@media (max-width:760px){.eu-t th:nth-child(3),.eu-t td:nth-child(3),.eu-t th:nth-child(6),.eu-t td:nth-child(6),.eu-t th:nth-child(7),.eu-t td:nth-child(7){display:none}}
/* GNL (/gnl) */
.gnl-g{grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr)}
.gnl-t td:last-child{white-space:nowrap}
.gnl-t td small,.gnl-p td small{color:var(--muted)}
.gnl-res{list-style:none;padding:0;margin:12px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 18px;font-size:14px}
.gnl-res b{font-size:18px;display:block}
@media (max-width:760px){.gnl-g{grid-template-columns:1fr}.gnl-g label:first-child{grid-column:auto}}
/* Outlooks (/outlooks) */
.out-c{border-left-color:var(--turquesa)}
.out-o{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 2px}
.out-c > p{font-size:14px;color:var(--fg-2);margin:0 0 8px}
.out-c .out-k{color:var(--fg)}
.out-c .out-l{margin:0}
.out-page .ind-sec{scroll-margin-top:96px}
.out-bars{display:grid;gap:10px;margin:14px 0}
.out-b{display:grid;grid-template-columns:220px 1fr 70px;gap:12px;align-items:center;font-size:13.5px}
.out-b b{text-align:right}
.out-bt{position:relative;height:12px;background:var(--surface);border:1px solid var(--line-2);border-radius:999px}
.out-bt i{position:absolute;top:-1px;bottom:-1px;background:#D9962B;border-radius:999px;min-width:10px}
.out-bt i.ref{width:2px;min-width:2px;background:var(--fg);border-radius:0;top:-4px;bottom:-4px}
.out-ref{color:var(--muted)}
@media (max-width:760px){.out-b{grid-template-columns:1fr 60px}.out-bn{grid-column:1 / -1}}
/* Buscador de contenido */
.hs-hint{margin:0;color:rgba(255,255,255,.78);font-size:13px;line-height:1.45}
.hs-hint a{color:#fff;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--turquesa)}
.bq-box{border:1px solid var(--line);border-left:3px solid var(--turquesa);border-radius:12px;padding:12px 14px;margin:0 0 12px;background:var(--surface)}
.bq-box>b{display:block;font-size:13px;margin-bottom:8px}
.bq-l{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.bq-l a{display:grid;gap:2px;padding:8px 10px;border-radius:8px;background:rgba(42,157,143,.1);text-decoration:none;color:inherit;min-width:0}
.bq-l a:hover{background:rgba(42,157,143,.15)}
.bq-l small{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--turquesa);font-weight:600}
.bq-l span{font-weight:600;font-size:14px}
.bq-l em{font-style:normal;font-size:12.5px;opacity:.75;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Cuencas */
.cu-tags{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13.5px;color:var(--muted,inherit)}
.cu-lead{font-size:16px;line-height:1.55;margin:0}
.cu-ch2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cu-ch2 h3{font-size:14px;margin:0 0 4px}.cu-ch2 h3 small{font-weight:400;opacity:.7}
.cu-dl{display:grid;grid-template-columns:170px minmax(0,1fr);gap:10px 18px;margin:6px 0}
.cu-dl dt{font-weight:700}.cu-dl dd{margin:0;line-height:1.55}
.cu-t .aj-dot,.cu-cmp .aj-dot{margin-right:6px}
.cu-t em.up{color:#2A9D8F;font-style:normal}.cu-t em.dn{color:#D0664B;font-style:normal}
.cu-tot td{border-top:2px solid var(--line)}
.cu-cmp th{text-align:left;vertical-align:top}.cu-cmp td{vertical-align:top}
.cu-subw{display:grid;gap:10px;margin-top:10px}
.cu-subw .cu-sec{border:1px solid var(--line);border-radius:14px;padding:18px;margin:0;background:var(--surface)}
.cu-subw .cu-sec h3{font-size:20px;margin:0}
.cu-kp em{font-style:normal}
.cu-sub{position:static}
@media (max-width:760px){.cu-ch2{grid-template-columns:minmax(0,1fr)}.cu-dl{grid-template-columns:minmax(0,1fr);gap:2px}.cu-dl dd{margin-bottom:10px}.cu-subw .cu-sec{padding:14px}}
.cu-cmp{table-layout:fixed;min-width:0}.cu-cmp th,.cu-cmp td{white-space:normal;overflow-wrap:anywhere}.cu-cmp th:first-child{width:26%}
@media (max-width:760px){.cu-cmp{font-size:13px}.cu-cmp th,.cu-cmp td{padding:8px 6px}}
/* Interruptor Buscar en */
.bq-tg{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:13px;color:rgba(255,255,255,.8)}
.bq-tg span{margin-right:2px}
.bq-tg button{font:inherit;font-weight:600;padding:4px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;cursor:pointer}
.bq-tg button[aria-pressed="true"]{background:#fff;color:var(--noche,#0f1c26);border-color:#fff}
.bq-tg button:focus-visible{outline:2px solid var(--turquesa);outline-offset:2px}
.ph-q .bq-tg{margin-top:10px}
.dir .bq-tg{color:var(--muted,inherit);margin:0 0 12px}
.dir .bq-tg button{color:inherit;border-color:var(--line-2,var(--line))}
.dir .bq-tg button[aria-pressed="true"]{background:var(--turquesa);border-color:var(--turquesa);color:#fff}

/* v315: SECTORES y CONTRATOS en la barra. Megamenú de Sectores (3 columnas) y desplegable de Contratos, ambos abren hacia la derecha. */
.nav-dd-l .nav-dd-m{left:0;right:auto}
.nav-dd-m.nav-mega{min-width:0;width:min(720px,calc(100vw - 40px))}
@media (hover:hover){.nav-dd:hover .nav-dd-m.nav-mega{display:grid}}
.nav-dd.open .nav-dd-m.nav-mega{display:grid}
.nav-mega{grid-template-columns:1.15fr 1fr .95fr;gap:0 4px;padding-bottom:6px}
.nav-mega .nm-col{display:flex;flex-direction:column;padding:6px 0}
.nav-mega .nm-col a{padding:6px 16px;margin:0!important;font-size:14px}
.nav-mega .nm-h{font-size:11.5px!important;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--turquesa)!important;padding:10px 16px 6px!important}
.nav-mega .nm-h2{margin-top:10px!important}
.nav-mega .nm-more{border-left:1px solid var(--dark-line)}
.nav-mega .nm-all{color:var(--turquesa)!important;font-weight:600;margin-top:6px!important}
.site-h.compact .nav-dd-m.nav-mega{display:flex;width:auto;gap:4px}
.site-h.compact .nav-mega .nm-col{padding:0;gap:12px}
.site-h.compact .nav-mega .nm-col a:not(.nm-h){display:none}
.site-h.compact .nav-mega .nm-more a:not(.nm-h){display:block}
.site-h.compact .nav-mega .nm-more{border-left:0}
.site-h.compact .nav-mega .nm-col a,.site-h.compact .nav-mega .nm-h{padding:0!important;font-size:inherit!important;text-transform:none;letter-spacing:0;color:inherit!important;font-weight:inherit}
.site-h.compact .nav-mega span.nm-h{display:none}

/* Sectores: portada, índice de capítulos y tira de capítulos */
.sx-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:22px}
.sx-card{border:1px solid var(--line-2);border-top:4px solid var(--sx);border-radius:14px;padding:18px 20px;background:var(--surface)}
.sx-card h2{margin:2px 0 6px;font-size:22px}.sx-card h2 a{color:inherit;text-decoration:none}
.sx-card > p{color:var(--fg-2);font-size:14px;margin:0 0 10px}
.sx-k{font-size:11.5px!important;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--sx)!important;margin:0!important}
.sx-card ol{margin:0;padding-left:22px;font-size:14px;display:grid;gap:5px}
.sx-card ol a{color:var(--fg);text-decoration:none}.sx-card ol a:hover{text-decoration:underline}
.sx-card li::marker{color:var(--sx);font-weight:700}
.sx-mas{font-size:13px;margin:12px 0 0!important;padding-top:10px;border-top:1px dashed var(--line-2)}
.sx-mas a{color:var(--muted)}
.sx-idx{list-style:none;margin:6px 0 24px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.sx-idx a{display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;column-gap:12px;padding:14px 16px;border:1px solid var(--line-2);border-radius:12px;background:var(--surface);text-decoration:none;color:var(--fg);height:100%}
.sx-idx a:hover{border-color:var(--sx)}
.sx-idx i{grid-row:1/3;font-style:normal;font-weight:700;font-size:20px;color:var(--sx);display:flex;align-items:center;justify-content:center;border-radius:10px;background:color-mix(in srgb,var(--sx) 14%,transparent)}
.sx-idx b{font-size:15.5px}.sx-idx span{font-size:13px;color:var(--fg-2)}
.sx-strip{display:flex;align-items:center;gap:10px;margin:0 0 20px;padding:8px 10px;border:1px solid var(--line-2);border-radius:12px;background:var(--surface);overflow:hidden}
.sx-sn{flex:none;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--sx);text-decoration:none;padding:4px 8px;border-right:1px solid var(--line-2)}
.sx-ch{display:flex;gap:6px;overflow-x:auto;scrollbar-width:thin;padding-bottom:2px}
.sx-ch a{flex:none;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;padding:5px 10px;border-radius:999px;color:var(--fg-2);text-decoration:none;white-space:nowrap}
.sx-ch a i{font-style:normal;font-size:11px;font-weight:700;width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--chip,rgba(127,127,127,.15))}
.sx-ch a:hover{color:var(--fg)}
.sx-ch a.on{background:var(--sx);color:#fff}.sx-ch a.on i{background:rgba(255,255,255,.25)}
.sx-pn{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}
.sx-pn a{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border:1px solid var(--line-2);border-radius:12px;text-decoration:none;color:var(--fg);font-weight:600;font-size:14.5px}
.sx-pn a small{font-weight:500;color:var(--muted);font-size:12px}
.sx-pn a.nx{text-align:right}
.sx-pn a:hover{border-color:var(--turquesa)}
.sx-kp{margin-bottom:18px}
/* Gráfico de la historia */
.sx-fig{margin:0 0 22px;padding:16px 16px 6px;border:1px solid var(--line-2);border-radius:14px;background:var(--surface)}
.sx-fig figcaption{font-weight:600;font-size:14.5px;margin-bottom:6px}
.sx-svg{width:100%;height:auto;display:block}
.sx-gl{stroke:var(--line-2);stroke-width:1}
.sx-ax{font-size:11px;fill:var(--muted)}
.sx-mk{cursor:pointer}
.sx-ml{stroke:var(--fg);stroke-opacity:0;stroke-width:1;stroke-dasharray:3 3}
.sx-mk:hover .sx-ml,.sx-mk.on .sx-ml{stroke-opacity:.45}
.sx-mk circle{stroke:var(--surface);stroke-width:2}
.sx-mk:hover circle{r:7}
.sx-leg{display:flex;gap:14px;font-size:12.5px;color:var(--fg-2);margin-bottom:4px}
.sx-leg span{display:inline-flex;align-items:center;gap:6px}.sx-leg i{width:14px;height:3px;border-radius:2px;display:inline-block}
/* Línea de tiempo */
.sx-tlf{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
.sx-tg{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:999px;color:var(--t);background:color-mix(in srgb,var(--t) 13%,transparent)}
.sx-tg::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--t)}
.sx-tln{list-style:none;margin:0;padding:0;position:relative}
.sx-tln::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;margin-left:-1px;background:var(--line-2)}
.sx-tln li{position:relative;width:50%;padding:0 30px 16px 0}
.sx-tln li:nth-child(even){margin-left:50%;padding:0 0 16px 30px}
.sx-tln li::after{content:"";position:absolute;top:16px;right:-8px;width:12px;height:12px;border-radius:50%;background:var(--t);border:2px solid var(--bg);box-shadow:0 0 0 2px var(--t)}
.sx-tln li:nth-child(even)::after{right:auto;left:-8px}
.sx-tln a{display:flex;flex-direction:column;gap:3px;padding:12px 16px;border:1px solid var(--line-2);border-left:4px solid var(--t);border-radius:12px;background:var(--surface);text-decoration:none;color:var(--fg);transition:transform .12s,border-color .12s}
.sx-tln a:hover{transform:translateY(-2px);border-color:var(--t)}
.sx-tln time{font-size:12px;font-weight:700;color:var(--t);letter-spacing:.03em;text-transform:uppercase}
.sx-tln b{font-size:15.5px;line-height:1.3}
.sx-tln span{font-size:13.5px;color:var(--fg-2)}
.sx-tln em{font-style:normal;font-size:12.5px;color:var(--turquesa);font-weight:600;margin-top:2px}
@media (max-width:760px){.sx-grid{grid-template-columns:1fr}.sx-idx{grid-template-columns:1fr}.sx-tln::before{left:7px}.sx-tln li,.sx-tln li:nth-child(even){width:auto;margin-left:0;padding:0 0 14px 28px}.sx-tln li::after,.sx-tln li:nth-child(even)::after{left:1px;right:auto}.sx-pn{grid-template-columns:1fr}.sx-pn a.nx{text-align:left}.nav-mega{grid-template-columns:1fr}}
/* Página de un hito */
.sx-hph .sx-hy{font-size:15px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--turquesa);margin:0 0 4px}
.sx-hph .sx-tg{margin-top:8px;background:rgba(255,255,255,.12);color:#fff}
.sx-hnav{margin:0 0 14px;font-size:14px}.sx-hnav a{color:var(--turquesa);text-decoration:none;font-weight:600}
.sx-hgrid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px;align-items:start;margin-bottom:22px}
.sx-hd{font-size:16px;line-height:1.65}.sx-hd p{margin:0 0 14px}
.sx-hu{display:flex;flex-wrap:wrap;gap:8px}
.sx-hside{border:1px solid var(--line-2);border-radius:12px;padding:14px 16px;background:var(--surface);position:sticky;top:90px}
.sx-hside h3{margin:0 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.sx-mini{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.sx-mini a{display:flex;flex-direction:column;padding:7px 10px;border-left:3px solid var(--t);border-radius:0 8px 8px 0;text-decoration:none;color:var(--fg-2);font-size:13.5px}
.sx-mini time{font-size:11.5px;font-weight:700;color:var(--t)}
.sx-mini li.on a{background:color-mix(in srgb,var(--t) 12%,transparent);color:var(--fg);font-weight:600}
.sx-mini a:hover{color:var(--fg)}
@media (max-width:900px){.sx-hgrid{grid-template-columns:1fr}.sx-hside{position:static}}
.sx-srcl{margin:0;padding-left:18px;font-size:13.5px;display:grid;gap:4px}

/* Contratos */
.ct-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ct-card{display:flex;flex-direction:column;gap:6px;padding:16px 18px;border:1px solid var(--line-2);border-radius:14px;background:var(--surface);text-decoration:none;color:var(--fg);position:relative}
.ct-card:hover{border-color:#7B6FD0}
.ct-card > i{font-style:normal;font-weight:700;font-size:13px;color:#7B6FD0}
.ct-card b{font-size:16px}.ct-card > span{font-size:13.5px;color:var(--fg-2)}
.ct-tools .ct-card{border-style:dashed}
.ct-aud{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto;padding-top:4px}
.ct-aud i{font-style:normal;font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent)}
.ph .ct-aud i{color:#fff;background:rgba(255,255,255,.14)}
.ct-lead{font-size:16.5px;line-height:1.6;margin:0 0 18px}
.ct-check{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:7px}
.ct-check li{position:relative;padding-left:28px;font-size:14.5px}
.ct-check li::before{content:"";position:absolute;left:0;top:2px;width:17px;height:17px;border-radius:5px;border:2px solid #7B6FD0;background:color-mix(in srgb,#7B6FD0 10%,transparent)}
.ct-check li::after{content:"";position:absolute;left:6px;top:5px;width:5px;height:9px;border:solid #7B6FD0;border-width:0 2px 2px 0;transform:rotate(45deg)}
.ct-tbl{width:100%;border-collapse:collapse;font-size:14px}
.ct-tbl th,.ct-tbl td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line-2);vertical-align:top}
.ct-tbl th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.ct-tbl td:first-child{font-weight:600;white-space:nowrap}
.ct-f{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;padding:12px 14px;border-radius:10px;background:var(--surface);border:1px solid var(--line-2);margin:8px 0 12px;overflow-x:auto;white-space:nowrap}
.ct-tl li span b{font-size:inherit}
.ct-strip .sx-ch a.on{background:#7B6FD0}
@media (max-width:900px){.ct-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.ct-grid{grid-template-columns:1fr}.ct-tbl td:first-child{white-space:normal}}
.sx-tl{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.sx-tl li{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start}
.sx-tl li > b{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:color-mix(in srgb,#7B6FD0 16%,transparent);color:#7B6FD0;font-size:14px}
.sx-tl li > span{font-size:14.5px;padding-top:5px}
.site-h nav.main{gap:12px}
.site-h .wrap{gap:18px}
.sx-mkt{font-size:12px;font-weight:700;fill:var(--fg);paint-order:stroke;stroke:var(--surface);stroke-width:4px}
.sx-hph .wrap{display:block!important}.sx-hph h1{margin:2px 0 8px}.sx-hph .wrap > p:not(.sx-hy){max-width:760px}
.site-h nav.main .nav-dd-m a{color:var(--on-dark-2)!important}
.site-h nav.main .nav-dd-m a:hover,.site-h nav.main .nav-dd-m a.on{color:var(--on-dark)!important}
.site-h nav.main .nav-mega a.nm-h,.site-h nav.main .nav-mega .nm-all{color:var(--turquesa)!important}
.site-h.compact .nav-dd-m.nav-mega{flex-direction:column;gap:14px}
.site-h.compact .nav-mega .nm-col{gap:14px}
.site-h.compact .nav-mega .nm-h2{margin-top:0!important}
.site-h.compact .nav-mega .nm-col a.nm-h{color:var(--on-dark-2)!important}
.sx-bv{font-size:12px;font-weight:700;fill:var(--fg)}
.sx-map{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:24px;align-items:start;margin-top:12px}
.sx-msvg{width:100%;height:auto;display:block}
.sx-bt{font-size:10px;font-weight:700;fill:var(--fg);paint-order:stroke;stroke:var(--bg);stroke-width:3px}
.sx-map h3{margin:0 0 8px;font-size:16px}
.sx-ml2{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:4px}
.sx-ml2 li{display:flex;justify-content:space-between;gap:12px;padding:6px 10px;border-bottom:1px solid var(--line-2);font-size:14px}
.aj-btn.on{background:var(--turquesa);color:#fff;border-color:var(--turquesa)}
@media (max-width:700px){.sx-map{grid-template-columns:1fr}.sx-msvg{max-width:300px;margin:0 auto}}
.sx-rigi td small{display:block;font-weight:400;color:var(--fg-2);font-size:12.5px;margin-top:2px}
.sx-rigi td:first-child{white-space:normal;min-width:220px}
.sx-rigi td.n,.sx-rigi th.n{text-align:right;white-space:nowrap}
.sx-rigi .sx-tg{white-space:nowrap}

/* ---------- Operadoras: actividad (perfora / fractura / solo produce) ---------- */
.acts{display:inline-flex;gap:5px;flex-wrap:wrap}
.act{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;line-height:1;padding:4px 8px 4px 6px;border-radius:7px;white-space:nowrap}
.act svg{width:16px;height:16px;flex:none}
.act-p{background:#FBEEDB;color:#8A5A12}
.act-f{background:#DDF1EE;color:#1E6B61}
.act-prod{background:var(--chip);color:var(--muted)}
.fh .act-p{background:rgba(217,150,43,.2);color:#F2C98A}
.fh .act-f{background:rgba(42,157,143,.22);color:#9FDCD3}
.fh .act-prod{background:rgba(255,255,255,.1);color:var(--on-dark-2)}
.act-leg{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:13px;color:var(--muted);margin:0 0 8px}
.act-leg .act{margin-left:6px}
.act-leg .act:first-child{margin-left:0}
.act-grp{margin-top:30px}
.act-grp h2{font-size:21px;display:flex;align-items:baseline;gap:8px}
.act-grp h2 small{font-size:14px;color:var(--muted);font-weight:500}
.act-grp>.f-hint{margin:4px 0 14px}
html[data-theme="dark"] .act-p{background:rgba(217,150,43,.2);color:#F2C98A}
html[data-theme="dark"] .act-f{background:rgba(42,157,143,.22);color:#9FDCD3}
html[data-theme="dark"] .act-prod{background:rgba(255,255,255,.08);color:var(--on-dark-2)}
.yoy{font-style:normal;font-size:.72em;font-weight:600;margin-left:3px;white-space:nowrap}
.yoy.up{color:#1E7A57}.yoy.dn{color:#B4472F}
html[data-theme="dark"] .yoy.up{color:#7FD3AE} html[data-theme="dark"] .yoy.dn{color:#F2A38F}
.ficha-dl{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 4px}
.ficha-dl>span{font-size:13px;font-weight:600;color:var(--muted);margin-right:4px}
.fh .ficha-dl>span{color:var(--on-dark-2)}
.ficha-dl .btn svg{width:14px;height:14px;margin-right:4px;vertical-align:-2px}
/* v340: filtros de áreas por tipo y operadora; etiqueta de tipo en la tabla */
.area-f2{margin-top:10px}.area-f2 .tg:first-child{margin-left:0}.area-f2 .tg button{display:inline-flex;align-items:center;gap:5px}.area-f2 .tg .act{padding:0;background:none}.area-f2 .tg .act svg{width:16px;height:16px}
.tt-nc,.tt-cv,.tt-ambas{display:inline-block;font-size:11px;font-weight:600;padding:1px 6px;border-radius:5px;margin-left:4px;vertical-align:1px}
.tt-nc{background:#DDF1EE;color:#1E6B61}.tt-cv{background:#FBEEDB;color:#8A5A12}.tt-ambas{background:#E9ECEF;color:#3D4F5A}
[data-theme="dark"] .tt-nc{background:rgba(42,157,143,.22);color:#9FDCD3}[data-theme="dark"] .tt-cv{background:rgba(217,150,43,.22);color:#F2C98A}[data-theme="dark"] .tt-ambas{background:rgba(255,255,255,.1);color:#C9D3DA}
/* v340: ficha del área en la web (bloques de la ficha PDF, data/area/<slug>.json) */
.ah-t{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ah-tags{display:inline-flex;gap:6px;flex-wrap:wrap}
.oplogo-d{width:44px;height:44px;border-radius:8px;background:#fff;object-fit:contain;padding:3px;filter:grayscale(1) sepia(1) saturate(2.6) hue-rotate(168deg) brightness(.92);opacity:.9;margin-left:auto}
.ah-campos{display:flex;flex-wrap:wrap;gap:4px 0;margin-top:6px!important}.ah-campos span+span:before{content:'·';margin:0 9px;opacity:.6}.ah-campos a{color:inherit}
.af{margin-top:22px;font-size:15px;line-height:1.5}
.af h2{font:700 18px/1.25 var(--f-display);margin:22px 0 8px;padding-bottom:4px;border-bottom:2px solid var(--fg)}.af h2 small{font:400 13px var(--f-body);color:var(--muted);margin-left:6px}
.af-g{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:0 32px}.af-w{margin-top:4px}
@media (max-width:860px){.af-g{grid-template-columns:1fr}}
.af table{width:100%;border-collapse:collapse;font-size:14px}.af td,.af th{padding:5px 6px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.af th{color:var(--muted);font-weight:500}.af td.n,.af th.n{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.af .ft2 th{width:30%;color:var(--fg-2);font-weight:600}
.af ul{list-style:none;padding:0;margin:0}.af li{padding-left:14px;position:relative;margin:5px 0}.af li:before{content:'';position:absolute;left:2px;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--turquesa)}
.af li.hl{font-weight:600}
.af .note{font-size:12.5px;color:var(--muted);margin-top:6px}
.af .box{background:var(--chip);border-radius:10px;padding:12px 14px}.af .box.fc{background:rgba(42,157,143,.1)}
.af .com{font-weight:600;margin:10px 0 4px}.af .com2{font-style:italic;margin:4px 0 8px}
.af .ch{width:100%;height:auto;display:block}.af .ch .gl{stroke:var(--line)}.af .ch .ax{font-size:10px;fill:var(--muted)}.af .ch .ag{fill:#2A9D8F}
.af .leg{font-size:12.5px;color:var(--muted);display:flex;gap:12px;flex-wrap:wrap;margin-top:2px}.af .leg i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px;vertical-align:-1px}
.af .lb{display:flex;height:12px;border-radius:6px;overflow:hidden;margin:6px 0}.af .lb i{display:block;height:100%}
.af .ll{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:13px;color:var(--fg-2)}.af .ll b{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:4px}
.af .rk{display:flex;gap:8px;flex-wrap:wrap}.af .rk div{flex:1 1 200px;background:var(--noche,#0A1B2B);color:#E4E1E5;border-radius:10px;padding:8px 12px;display:flex;align-items:baseline;gap:8px}.af .rk b{font-size:22px;color:#9FDCD3;white-space:nowrap}.af .rk span{font-size:13px;color:#C9D3DA}
.af .esc{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;margin:6px 0 10px}.af .esc div{background:var(--noche,#0A1B2B);color:#C9D3DA;border-radius:10px;padding:10px 12px}.af .esc b{display:block;font-size:24px;color:#9FDCD3;line-height:1.15}.af .esc span{font-size:13px;line-height:1.35;display:block}.af .esc span b{display:inline;font-size:1em;color:#fff}.af .esc i{display:block;font-style:normal;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#9FDCD3;margin-bottom:3px}
.af .esc3 b{font-size:20px}
.af .cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width:860px){.af .cols{grid-template-columns:1fr}}
.ph-slim .ah-t,.ph-slim .ah-campos,.ph-slim .ah-t ~ p{grid-column:1 / -1}.ph-slim .ah-campos{font-size:13.5px;opacity:.92}.oplogo-d{margin-left:0;width:36px;height:36px}
.tg-one{border:1px solid var(--line);background:transparent;color:inherit;border-radius:999px;padding:7px 14px;font:inherit;font-size:13.5px;cursor:pointer}.tg-one[aria-pressed="true"]{background:var(--turquesa);border-color:var(--turquesa);color:#fff}
.pareto{margin:14px 0 4px;padding:12px 14px;border:1px solid var(--line);border-radius:12px}.pareto label{font-size:14px;display:block;margin-bottom:6px}.pareto input{width:100%;accent-color:var(--turquesa)}
.pareto-t{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);padding:0 2px}
