/* Comején Santa Marta — portal especializado de FumiCenter · marca de GRUPO EMPRESARIAL EJECUTAR S.A.S.
   Hoja de estilo heredada del sitio de referencia fumigacionsantamarta.com.co (mismo sistema visual).
   Conserva también los bloques de tienda de productos y del video de portada del sitio de referencia. */
:root{--green:#3FB24A;--green-d:#33983d;--yellow:#FFCD00;--bg:#FFFFFF;--bg2:#F5F5F3;--ink:#1D1D1F;--ink2:#6E6E73;--line:#D2D2D0;--line2:#E8E8E6}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"SF Pro Display","SF Pro Text",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}ul,ol{margin:0;padding:0;list-style:none}p{margin:0 0 14px}
h1,h2,h3,h4{margin:0 0 12px;line-height:1.2;letter-spacing:-.01em}
h1{font-size:40px;font-weight:600;letter-spacing:-.02em}h2{font-size:26px;font-weight:600}h3{font-size:18px;font-weight:600}h4{font-size:15px;font-weight:600}
.w{max-width:1160px;margin:0 auto;padding:0 24px}svg{flex:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 22px;border-radius:4px;background:var(--green);color:#fff!important;font-size:13.5px;font-weight:600;letter-spacing:.02em;border:1px solid var(--green);transition:background .18s;cursor:pointer;text-align:center;line-height:1.25}
.btn:hover{background:var(--green-d);border-color:var(--green-d)}
.btn.ghost{background:transparent;color:var(--ink)!important;border-color:var(--line)}.btn.ghost:hover{border-color:var(--ink)}
.btn.dark{background:var(--ink);border-color:var(--ink)}.btn.dark:hover{background:#000;border-color:#000}
.kick{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--green-d);margin-bottom:10px}
.lead{font-size:17px;color:var(--ink2);max-width:62ch}
.mut{color:var(--ink2);font-size:14px}
.cta-row{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}
/* barra superior + cabecera */
.tl{background:var(--green);color:#fff;font-size:12.5px}
.tl-in{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:9px 24px;flex-wrap:wrap}
.tl a{font-weight:600;text-decoration:underline;text-underline-offset:3px}
.hd{background:#fff;border-bottom:1px solid var(--line2);position:sticky;top:0;z-index:30}
.hd-in{display:flex;align-items:center;justify-content:space-between;height:84px;gap:24px}
.brand img{height:52px;width:auto}
.nav{display:flex;gap:18px;font-size:13.5px;font-weight:500;flex-wrap:wrap}
.nav a{padding:4px 0;border-bottom:1px solid transparent}
.nav a:hover,.nav a[aria-current]{color:var(--green-d);border-color:var(--green)}
.hd-r{display:flex;align-items:center;gap:12px}
.hwa{display:inline-flex;align-items:center;gap:8px;background:var(--green);color:#fff;border-radius:4px;padding:8px 14px;font-weight:700;font-size:13px}
.hwa small{display:block;font-size:10px;font-weight:500;opacity:.9;letter-spacing:.04em;text-transform:uppercase}
.hwa:hover{background:var(--green-d)}
.burger{display:none;background:none;border:1px solid var(--line);border-radius:4px;padding:8px;color:var(--ink);cursor:pointer}
/* migas */
.crumbs{border-bottom:1px solid var(--line2);font-size:12.5px;color:var(--ink2)}
.crumbs .w{padding-top:10px;padding-bottom:10px}
.crumbs a:hover{color:var(--ink)}.crumbs span{margin:0 6px}.crumbs b{font-weight:500;color:var(--ink)}
/* hero */
.hero{background:linear-gradient(180deg,#F7FAF7 0%,#fff 100%);border-bottom:1px solid var(--line2);padding:54px 0 50px}
.hero-g{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:44px;align-items:center}
.hero h1{margin-bottom:14px}
.hero .lead{margin-bottom:6px}
.hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.chip{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:100px;padding:8px 14px;font-size:13px;font-weight:500;background:#fff}
.chip i{width:6px;height:6px;border-radius:50%;background:var(--green);display:block}
.hero-card{border:1px solid var(--line);background:#fff;padding:24px}
.hero-card h2{font-size:18px;margin-bottom:6px}
.hero-card dl{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;margin:14px 0 0;font-size:14px}
.hero-card dt{color:var(--ink2)}
.hero-card dd{margin:0;font-weight:500}
/* secciones */
section{scroll-margin-top:96px}
.sec{padding:56px 0}
.sec.alt{background:var(--bg2);border-top:1px solid var(--line2);border-bottom:1px solid var(--line2)}
.sec-h{margin-bottom:26px}
.sec-h h2{margin-bottom:8px}
.sec-h p{color:var(--ink2);max-width:70ch;margin:0}
/* respuesta directa */
.ans{border-left:3px solid var(--green);background:#fff;border:1px solid var(--line);border-left-width:3px;padding:20px 24px;margin:0 0 18px}
.ans h2,.ans h3{font-size:19px;margin-bottom:8px}
.ans p{margin:0 0 10px;font-size:15.5px}
.ans p:last-child{margin:0}
/* rejillas */
.g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.card{border:1px solid var(--line);background:#fff;padding:22px;display:flex;flex-direction:column}
.card h3{margin-bottom:8px}
.card p{color:var(--ink2);font-size:14px;margin:0 0 12px}
.card .lnk{margin-top:auto;font-size:13.5px;font-weight:600;color:var(--green-d)}
.card:hover{border-color:var(--green)}
.tag{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2);margin-bottom:8px}
/* listas */
.chk li{position:relative;padding-left:24px;margin-bottom:9px;font-size:15px}
.chk li::before{content:"";position:absolute;left:0;top:8px;width:9px;height:9px;background:var(--green);border-radius:2px}
.cols2{columns:2;column-gap:32px}
.cols2 li{break-inside:avoid}
/* pasos */
.pasos{counter-reset:p}
.pasos li{position:relative;padding:0 0 16px 52px;font-size:15px}
.pasos li::before{counter-increment:p;content:counter(p);position:absolute;left:0;top:0;width:34px;height:34px;border-radius:50%;background:var(--green);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:15px}
.pasos b{display:block}
/* barrios */
.zonas{display:flex;flex-wrap:wrap;gap:8px}
.zonas li a,.zonas li span{display:inline-block;border:1px solid var(--line);background:#fff;padding:8px 14px;font-size:13.5px;border-radius:3px}
.zonas li a:hover{border-color:var(--green);color:var(--green-d)}
/* faq */
details.fq{border-bottom:1px solid var(--line2)}
details.fq>summary{cursor:pointer;padding:16px 30px 16px 0;font-weight:600;list-style:none;position:relative;font-size:15.5px}
details.fq>summary::-webkit-details-marker{display:none}
details.fq>summary::after{content:"+";position:absolute;right:4px;top:14px;color:var(--ink2);font-weight:400;font-size:20px}
details.fq[open]>summary::after{content:"–"}
details.fq>p{margin:0 0 16px;color:var(--ink2);max-width:80ch}
/* tabla */
.tbl-w{overflow-x:auto;border:1px solid var(--line);margin:16px 0 22px}
.tbl{width:100%;border-collapse:collapse;font-size:14px;background:#fff}
.tbl th,.tbl td{padding:11px 14px;border-bottom:1px solid var(--line2);text-align:left;vertical-align:top}
.tbl th{width:32%;background:var(--bg2);font-weight:600;color:var(--ink2)}
.tbl tr:last-child th,.tbl tr:last-child td{border-bottom:0}
/* cta final */
.cta{border-top:1px solid var(--line2);padding:52px 0;text-align:center}
.cta h2{margin-bottom:10px}
.cta p{color:var(--ink2);max-width:60ch;margin:0 auto 20px}
.cta .cta-row{justify-content:center}
/* pie */
.ft{background:var(--ink);color:#a1a1a6;font-size:13.5px}
.ft-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:32px;padding-top:52px;padding-bottom:36px}
.ft-brand img{height:46px;margin-bottom:14px}
.ft-brand p{max-width:340px}
.ft h3{color:#fff;font-size:13px;font-weight:600;margin-bottom:14px}
.ft li{margin-bottom:9px}
.ft a:hover{color:#fff}
.ft-contacto{border-top:1px solid #3a3a3c;padding-top:16px;margin-top:8px}
.ft-contacto p{margin:0 0 6px;line-height:1.65}
.ft-contacto a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.ft-bottom{display:flex;justify-content:space-between;gap:18px;padding-top:16px;padding-bottom:26px;border-top:1px solid #3a3a3c;font-size:12px;flex-wrap:wrap}
/* wa flotante */
.wafab{position:fixed;right:18px;bottom:18px;z-index:40;width:56px;height:56px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.wafab svg{color:#fff}
/* responsive */
@media(max-width:1100px){.nav{display:none;position:absolute;left:0;right:0;top:84px;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;gap:0;padding:10px 24px 18px}
.nav.open{display:flex}.nav a{padding:11px 0;border-bottom:1px solid var(--line2)}
.burger{display:inline-flex}
.hero-g,.tienda-in{grid-template-columns:1fr}
.g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}
.ft-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){h1{font-size:30px}h2{font-size:22px}
.g2,.g3{grid-template-columns:1fr}
.cols2{columns:1}
.hero{padding:34px 0 32px}.sec{padding:38px 0}
.ft-grid{grid-template-columns:1fr}
.hd-in{height:70px}.brand img{height:40px}
.nav{top:70px}
.hwa b{font-size:12px}}

/* v3 — 100 % responsive: teléfonos pequeños y objetivos táctiles */
@media(max-width:900px){
.tl-in{padding:9px 16px;font-size:12px;gap:8px}
}
@media(max-width:640px){
.w{padding-left:16px;padding-right:16px}
.hero-card{padding:18px}
.hero-card dl{grid-template-columns:1fr;gap:2px 0}
.hero-card dt{margin-top:8px;font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.card{padding:18px}
.tbl th,.tbl td{padding:9px 10px;font-size:13px}
.tbl th{width:40%}
.pasos li{padding-left:44px}
.pasos li::before{width:30px;height:30px;font-size:14px}
.btn{width:100%}
.cta-row{gap:8px}
.zonas li a,.zonas li span{font-size:13px;padding:9px 12px}
.chip{font-size:12.5px;padding:7px 12px}
.ft-brand img{height:40px}
details.fq>summary{padding:15px 30px 15px 0;font-size:15px}
.hwa{padding:7px 10px}
.hwa b{font-size:12px}
.hwa small{font-size:9px}
}
@media(max-width:400px){
.w{padding-left:14px;padding-right:14px}
h1{font-size:26px}h2{font-size:20px}h3{font-size:16px}
.hero{padding:26px 0 26px}
.lead{font-size:15.5px}
.hero-card dl{font-size:13.5px}
.tbl th,.tbl td{padding:8px;font-size:12.5px}
.brand img{height:34px}
.hd-in{height:62px;gap:10px}
.nav{top:62px}
.hwa small{display:none}
.tl-in{font-size:11.5px;padding:8px 14px}
}
/* texto mínimo legible y áreas táctiles */
@media(max-width:760px){
.tag,.kick,.ft-brand span,.hwa small{font-size:12px}
.ft li a,.ft-bottom a,.ft-contacto a,.zonas li a{display:inline-block;padding-top:5px;padding-bottom:5px}
.card .lnk{padding:8px 0}
.crumbs .w{padding-top:9px;padding-bottom:9px;font-size:12px}
}

/* v4 — legibilidad mínima en la barra superior */
@media(max-width:400px){.tl-in{font-size:12px}.tl-in span{line-height:1.5}}

/* v5 — tableta: mismos mínimos de legibilidad y área táctil que en teléfono */
@media(max-width:900px){
.tag,.kick,.ft-brand span,.hwa small,.tl-in{font-size:12px}
.ft li a,.ft-bottom a,.ft-contacto a,.zonas li a{display:inline-block;padding-top:5px;padding-bottom:5px}
.card .lnk{padding:8px 0}
.crumbs .w{font-size:12px}
.nav a{padding:11px 0}
}

/* v6 — escritorio: mínimos de legibilidad también en pantallas grandes */
.tag,.kick,.ft-brand span,.tl-in{font-size:12px}
.crumbs{font-size:12.5px}
.ft li a,.ft-contacto a,.zonas li a{display:inline-block;padding-top:4px;padding-bottom:4px}
.hwa small{font-size:12px}
/* v10 — destacado de precio mínimo */
.precio-min{border:1px solid var(--line);border-left:4px solid var(--green);background:var(--bg2);padding:22px 24px;margin:22px 0 26px}
.pm-k{display:block;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2);margin-bottom:6px}
.pm-v{display:block;font-size:34px;font-weight:600;letter-spacing:-.02em;color:var(--green-d);margin-bottom:10px}
.precio-min p{margin:0 0 10px;color:var(--ink2);font-size:14.5px;max-width:70ch}
.pm-cta{margin:14px 0 0!important}
@media(max-width:640px){.precio-min{padding:18px}.pm-v{font-size:28px}}
/* v11 — YMYL: confianza, equipo, documentos y fotos */
.conf-bar{background:var(--ink);color:#fff;padding:26px 0}
.conf-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.conf-g div b{display:block;font-size:15px;margin-bottom:4px}
.conf-g div span{font-size:13px;color:#c7c7cc;line-height:1.5}
.conf-l{margin:18px 0 0;font-size:13.5px;color:#c7c7cc}
.conf-l a{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.pers-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:22px 0 26px}
.pers{border:1px solid var(--line);background:#fff;overflow:hidden}
.pers img{width:100%;height:auto;display:block;background:var(--bg2)}
.pers h3{font-size:15px;margin:12px 14px 2px}
.pers-c{margin:0 14px 10px;font-size:13px;color:var(--green-d);font-weight:600}
.pers p{margin:0 14px 14px;font-size:13.5px;color:var(--ink2);line-height:1.55}
.doc-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0 24px}
.doc{border:1px solid var(--line);background:#fff}
.doc img{width:100%;height:auto;display:block;border-bottom:1px solid var(--line2)}
.doc-t{padding:16px 18px}
.doc-t h3{font-size:16px;margin-bottom:4px}
.doc-t p{margin:0 0 6px;font-size:14px}
.ali-g{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:16px 0 24px}
.ali{border:1px solid var(--line);background:#fff;padding:16px;text-align:center}
.ali img{max-width:150px;height:auto;margin:0 auto 10px;object-fit:contain}
.ali h3{font-size:14px;margin-bottom:4px}
.ali p{font-size:12.5px;margin:0}
/* v24 — la imagen ya NO estira hasta el alto de la fila: con height:100%
   se comía todo el espacio del <figure> y el <figcaption> se salía por
   debajo, quedando tapado por la fila siguiente. Ahora el alto lo fija
   aspect-ratio y el pie de foto cabe dentro de la celda. */
.fotos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 20px;align-items:start}
.fotos figure{margin:0;display:flex;flex-direction:column}
.fotos img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block;border:1px solid var(--line)}
.caso{border-top:1px solid var(--line2);padding-top:22px;margin-top:22px}
.caso h3{font-size:19px;margin-bottom:2px}
@media(max-width:900px){.conf-g{grid-template-columns:repeat(2,minmax(0,1fr))}.pers-g{grid-template-columns:repeat(3,minmax(0,1fr))}.ali-g{grid-template-columns:repeat(3,minmax(0,1fr))}.fotos{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.conf-g{grid-template-columns:1fr}.pers-g{grid-template-columns:repeat(2,minmax(0,1fr))}.doc-g{grid-template-columns:1fr}.ali-g{grid-template-columns:repeat(2,minmax(0,1fr))}.fotos{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* v12 — cabecera, barra superior y menú */
.tl-in{justify-content:center;text-align:center;gap:6px 18px;line-height:1.5}
.nav{gap:18px;font-size:13.5px;flex-wrap:nowrap;white-space:nowrap}
.hwa{white-space:nowrap;padding:8px 12px}
.hwa b{font-size:12.5px;white-space:nowrap}
.hwa small{font-size:10.5px;letter-spacing:.03em}
@media(max-width:1180px){.nav{gap:14px;font-size:12.5px}.hwa b{font-size:12px}}
@media(max-width:1080px){.hwa small{display:none}.hwa b{font-size:12px}}
@media(max-width:1100px){.nav{flex-wrap:wrap;white-space:normal;font-size:15px;gap:0}
.hwa{padding:8px 12px}.hwa small{display:block;font-size:10px}}
@media(max-width:520px){.hwa small{display:none}.hwa b{font-size:12px}
.tl-in{font-size:11.5px;padding:8px 14px}
.tl-in span:last-child{width:100%}}
/* v15 — pie uniforme y logo nuevo */
.ft-grid{grid-template-columns:1.25fr .8fr 1fr 1fr 1fr}
.ft-menu h3{color:#fff}
.ali a{display:block}
.ali a:hover img{opacity:.85}
.brand img{height:54px}
.ft-brand img{height:auto;width:220px;max-width:100%;background:none;padding:0}
@media(max-width:1100px){.ft-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.ft-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand img{height:42px}}
@media(max-width:430px){.brand img{height:36px}.ft-grid{grid-template-columns:1fr}}
/* v17 — organigrama */
.org{margin:26px 0 34px}
.org h2{text-align:center;font-size:26px;margin-bottom:6px}

/* v19 — logo de cabecera más grande */
.hd-in{height:104px}
.brand img{height:74px}
@media(max-width:1100px){.hd-in{height:88px}.brand img{height:60px}.nav{top:88px}}
@media(max-width:640px){.hd-in{height:76px}.brand img{height:52px}.nav{top:76px}}
@media(max-width:430px){.hd-in{height:66px}.brand img{height:44px}.nav{top:66px}}
/* ── CABECERA VERDE — v22 ─────────────────────────────────────────────
   Sustituye a la cabecera negra con acento amarillo de la v20, que se
   retiró por completo. Vuelve la barra superior VERDE con la cabecera
   blanca del sitio y se remata con una línea verde de 3 px donde antes
   iba la amarilla, para que el verde de la marca quede visible en el
   menú. Si alguna vez quiere la cabecera blanca «pelada» de la v19,
   borre solo la línea .hd de este bloque.                              */
.tl{background:var(--green);color:#fff;border-bottom:none}
.tl b{color:#fff}
.tl a{color:#fff}
.tl a:hover{color:#fff;opacity:.85}
.hd{background:#fff;border-bottom:3px solid var(--green)}
.nav a{color:var(--ink)}
.nav a:hover,.nav a[aria-current]{color:var(--green-d);border-color:var(--green)}
.burger{color:var(--ink);border-color:var(--line)}
@media(max-width:1100px){
  .nav{background:#fff;border-bottom-color:var(--line)}
  .nav a{border-bottom-color:var(--line2)}
}

/* Aviso de cookies · Ley 1581 de 2012 — v20 */
.ck{position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--line);box-shadow:0 -6px 24px rgba(0,0,0,.10)}
.ck-in{max-width:1160px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.ck p{margin:0;flex:1;min-width:280px;font-size:13px;line-height:1.5;color:var(--ink2)}
.ck p a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.ck-a{display:flex;gap:10px;flex:none}
.ck .btn{min-height:44px;padding:11px 20px}
body.ck-on .wafab{bottom:96px}
@media(max-width:700px){.ck-in{padding:12px 18px;gap:12px}.ck-a{width:100%}.ck-a .btn{flex:1}body.ck-on .wafab{bottom:142px}}

/* Organigrama — mismo modelo que distribuidoradeinsecticidas.com.co (v20).
   Esquinas rectas, lineas de 1 px, foto cuadrada. */
.org-w{max-width:1000px;margin:0 auto}
.org-row{--gap:14px;display:grid;gap:var(--gap);position:relative}
.org-r1{grid-template-columns:minmax(0,400px);justify-content:center}
.org-r2{--cols:5;grid-template-columns:repeat(5,minmax(0,1fr));padding-top:40px}
.org-r3{--cols:3;grid-template-columns:repeat(3,minmax(0,1fr));padding-top:40px;max-width:62%;margin:0 auto}
.org-r2::before,.org-r3::before{content:"";position:absolute;top:0;left:50%;width:1px;height:20px;background:var(--line)}
.org-r2::after,.org-r3::after{content:"";position:absolute;top:20px;height:1px;background:var(--line);left:calc((100% - (var(--cols) - 1)*var(--gap))/var(--cols)/2);right:calc((100% - (var(--cols) - 1)*var(--gap))/var(--cols)/2)}
.org-r2 .org-i,.org-r3 .org-i{position:relative}
.org-r2 .org-i::before,.org-r3 .org-i::before{content:"";position:absolute;top:-20px;left:50%;width:1px;height:20px;background:var(--line)}
.org-c{border:1px solid var(--line);background:#fff;display:flex;flex-direction:column;height:100%}
.org-c img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:50% 10%;background:var(--bg2)}
.org-b{padding:11px 12px 13px}
.org-b b{display:block;font-size:13.5px;font-weight:600;line-height:1.25}
.org-b span{display:block;font-size:12.5px;color:var(--ink2);line-height:1.3;margin-top:3px}
.org-b em{display:block;font-style:normal;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);margin-top:8px;padding-top:8px;border-top:1px solid var(--line2)}
.org-jefe{flex-direction:row;border-color:var(--green);background:var(--green)}
.org-jefe img{width:104px;flex:none;object-position:50% 8%}
.org-jefe .org-b{display:flex;flex-direction:column;justify-content:center;color:#fff}
.org-jefe .org-b b{font-size:16px}
.org-jefe .org-b span{color:rgba(255,255,255,.92);font-size:13px}
.org-jefe .org-b em{color:rgba(255,255,255,.8);border-top-color:rgba(255,255,255,.35)}
@media(max-width:900px){.org-r3{max-width:100%}.org-r2{--cols:3;grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){
  .org-r2,.org-r3{--cols:2;grid-template-columns:repeat(2,minmax(0,1fr));padding-top:28px}
  .org-r2::after,.org-r3::after,.org-r2 .org-i::before,.org-r3 .org-i::before{display:none}
  .org-r2::before,.org-r3::before{height:28px}
  .org-r1{grid-template-columns:minmax(0,1fr)}
  .org-jefe img{width:88px}
}

details.dp{border-top:1px solid var(--line2);margin-top:14px}
details.dp>summary{cursor:pointer;list-style:none;position:relative;padding:12px 24px 4px 0;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink2)}
details.dp>summary::-webkit-details-marker{display:none}
details.dp>summary::after{content:"+";position:absolute;right:2px;top:9px;font-size:17px;font-weight:400}
details.dp[open]>summary::after{content:"–"}
details.dp dl{margin-top:10px;margin-bottom:4px;font-size:13.5px}

/* ── Comején Santa Marta — añadidos mínimos (misma identidad) ─────────
   Solo componentes que el portal necesita y el ZIP no traía. */
.ilu{margin:18px 0 24px;border:1px solid var(--line);background:#fff}
.ilu img{width:100%;height:auto;display:block}
.ilu figcaption{padding:10px 14px;font-size:13px;color:var(--ink2);border-top:1px solid var(--line2);line-height:1.5}
.tbl.t3 th{width:auto}
.tbl.t3 thead th{background:var(--bg2);color:var(--ink);font-weight:600}
.tbl.t3 tbody th{background:#fff;color:var(--ink);font-weight:600;width:28%}
.toc{border:1px solid var(--line);background:var(--bg2);padding:14px 18px;margin:0 0 22px;font-size:14px}
.toc b{display:block;margin-bottom:6px}
.toc ul{columns:2;column-gap:24px}.toc li{margin:0 0 5px;break-inside:avoid}
.toc a{color:var(--green-d);font-weight:500}
@media(max-width:640px){.toc ul{columns:1}}
.gal-cap{font-size:12.5px;color:var(--ink2);margin-top:6px;line-height:1.4}
.fotos.gal img{aspect-ratio:3/4}
.fotos.gal.h img{aspect-ratio:4/3}
.card h3 a{color:var(--ink)}.card h3 a:hover{color:var(--green-d)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--green-d);outline-offset:2px}
.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:8px 12px;z-index:100}
.skip:focus{left:8px;top:8px}
.ali img{max-width:min(150px,100%)}
.tienda .kick{color:#9be29f}

/* ── Bloques del ZIP de referencia restaurados: franja tienda, video de portada y productos ── */
/* franja tienda */
.tienda{background:var(--ink);color:#fff;padding:44px 0}
.tienda-in{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:36px;align-items:center}
.tienda h2{color:#fff;margin-bottom:10px}
.tienda p{color:#c7c7cc;margin:0;max-width:60ch}
.tienda .btn{background:var(--yellow);border-color:var(--yellow);color:var(--ink)!important}
.tienda .btn:hover{background:#e6b900;border-color:#e6b900}
/* v13 — productos enlazados a la tienda */
.prod-strip{background:var(--bg2);border-top:1px solid var(--line);padding:40px 0}
.prod-g{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:6px 0 18px}
.prod-g6{grid-template-columns:repeat(6,minmax(0,1fr))}
.prod{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;padding:14px}
.prod:hover{border-color:var(--green)}
.prod-img{display:block;aspect-ratio:1/1;overflow:hidden;margin-bottom:10px}
.prod-img img{width:100%;height:100%;object-fit:contain;display:block}
.prod h3{font-size:14px;line-height:1.35;margin:0 0 6px}
.prod h3 a{color:var(--ink)}
.prod h3 a:hover{color:var(--green-d)}
.prod p{font-size:12.5px;color:var(--ink2);line-height:1.5;margin:0 0 12px}
.prod-btn{margin-top:auto;min-height:38px;padding:9px 14px;font-size:13px;width:100%}
@media(max-width:1100px){.prod-g,.prod-g6{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){.prod-g,.prod-g6{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.prod-g,.prod-g6{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.prod{padding:11px}.prod h3{font-size:13.5px}}
/* ── VIDEO DE LA PORTADA — v26 ────────────────────────────────────────
   El reproductor de YouTube NO se carga al abrir la página: solo se ve
   la miniatura y, al pulsar play, se inserta el iframe de
   youtube-nocookie.com. Así la portada no se hace más lenta y no se
   instalan cookies de YouTube a quien solo pasa por el sitio.        */
.vid-card{padding:0;overflow:hidden}
.vid{position:relative;display:block;width:100%;aspect-ratio:16/9;background:#000;overflow:hidden}
.vid img{width:100%;height:100%;object-fit:cover;display:block}
.vid-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.15);transition:background .15s}
.vid-play>span{width:66px;height:46px;border-radius:10px;background:var(--green);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 16px rgba(0,0,0,.32)}
.vid:hover .vid-play{background:rgba(0,0,0,.05)}
.vid:hover .vid-play>span{background:var(--green-d)}
.vid-card iframe{display:block;width:100%;aspect-ratio:16/9;border:0}
.vid-cap{padding:18px 22px 20px}
.vid-cap h2{font-size:18px;margin:0 0 5px}
.vid-cap p{margin:0 0 4px;font-size:13.5px}
@media(max-width:640px){.vid-cap{padding:16px 18px 18px}.vid-cap h2{font-size:17px}}
/* formulario rápido de inspección (misma identidad) */
.form{border:1px solid var(--line);background:var(--bg2);padding:22px 24px;margin:22px 0 26px}
.form h2{font-size:20px;margin-top:0}
.fi{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}
.fi-g{display:flex;flex-direction:column;gap:6px}.fi-w{grid-column:1/-1}
.fi label{font-size:13px;font-weight:600;color:var(--ink)}
.fi input,.fi select,.fi textarea{font:inherit;font-size:15px;padding:10px 12px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:4px;width:100%}
.fi input:focus,.fi select:focus,.fi textarea:focus{outline:2px solid var(--green-d);outline-offset:1px;border-color:var(--green-d)}
.fi [aria-invalid="true"]{border-color:#c0392b}
.fi .btn{display:inline-flex;align-items:center;gap:8px}
.fi-note{display:inline-block;margin-left:10px;font-size:13px}
@media(max-width:768px){.fi{grid-template-columns:1fr}.fi-note{display:block;margin:8px 0 0}}
main{display:block}
/* CTA de WhatsApp en línea (misma identidad) */
.wa-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 18px;border:1px solid var(--line);border-left:4px solid var(--green);background:var(--bg2);padding:14px 18px;margin:20px 0 24px}
.wa-cta p{margin:0;font-size:15px}
.wa-cta .btn{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.wa-cta-mid{display:block;padding:20px 22px;background:#fff}
.wa-cta-mid .kick{margin-bottom:4px}
.wa-cta-mid .cta-row{margin-top:12px}
@media(max-width:640px){.wa-cta{display:block}.wa-cta .btn{width:100%;justify-content:center;margin-top:10px}}
.marca-linea{font-size:14px;color:var(--ink2);border-top:1px solid var(--line2);padding-top:14px;margin:26px 0 6px}
.marca-linea a{color:var(--green-d)}
/* full responsive — ajustes finos sin cambiar la identidad */
.brand img{object-fit:contain;object-position:left center}
.hwa small{font-size:12px}
@media(max-width:480px){
  .tl,.tl a,.tl-in,.tl-in span{font-size:12px}
  .ft-bottom,.ft-bottom span,.hero-chips .chip,.chip a,.gal-cap,.tag,.conf-g span{font-size:12px}
  details.dp>summary{min-height:44px;display:flex;align-items:center}
  .btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
  .hwa{min-height:44px}
  .burger{min-height:44px;min-width:44px}
  details.fq>summary{min-height:44px;display:flex;align-items:center}
  .nav a{min-height:44px;display:flex;align-items:center}
}
@media(max-width:420px){.tl-x{display:none}}
/* dominio largo: evitar desborde en pantallas estrechas */
body,p,li,td,th,dd,figcaption,.ft-bottom span,.lead,.ans p{overflow-wrap:break-word;word-break:break-word}
.ft-bottom{flex-wrap:wrap;gap:6px}

/* ── Componentes comunes a los portales de FumiCenter (v5) ───────────── */
.ir-tienda{background:var(--bg2);border-top:1px solid var(--line);padding:28px 0;text-align:center}
.ft-sitios{border-top:1px solid #3a3a3c;margin-top:14px;padding-top:16px;padding-bottom:20px}
.ft-sitios h3{margin:0 0 10px;font-size:14px;color:#fff;text-transform:uppercase;letter-spacing:.06em}
.ft-sitios ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:12px 28px;list-style:none;margin:0;padding:0}
.ft-sitios li{margin:0}
.ft-sitios a{color:#fff;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.ft-sitios span{display:block;font-size:12.5px;color:#a1a1a6;margin-top:2px}
.wa-bar{padding:22px 0 0}
.wa-bar-in{display:flex;align-items:center;flex-wrap:wrap;gap:16px 30px;background:var(--bg2);border:1px solid var(--line);border-radius:4px;padding:16px 26px}
.wa-bar-t{display:flex;align-items:center;gap:12px;margin:0;flex:1 1 300px;font-size:14.5px;line-height:1.4}
.wa-bar-t svg{color:var(--green);flex:none}
.wa-bar-t b{font-weight:600}
.wa-bar-n{font-size:25px;font-weight:700;letter-spacing:-.01em;color:var(--ink);white-space:nowrap;text-decoration:none}
.wa-bar .btn{min-width:150px;display:inline-flex;align-items:center;gap:8px;justify-content:center}
.trust{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:22px;padding:14px 0}
.trust-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 20px;list-style:none;margin:0;padding:0}
.trust-g li{display:flex;align-items:center;justify-content:center;gap:10px;font-size:14.5px;color:var(--ink);margin:0}
.trust-g svg{color:var(--green);flex:none}
@media(max-width:760px){.trust-g{grid-template-columns:repeat(2,minmax(0,1fr))}.trust-g li{justify-content:flex-start;font-size:13.5px}}
@media(max-width:640px){.wa-bar{padding-top:16px}.wa-bar-in{padding:14px 16px;gap:12px}.wa-bar-t{flex-basis:100%}.wa-bar-n{font-size:22px}.wa-bar .btn{width:100%}}
@media(max-width:360px){.trust-g{grid-template-columns:1fr}}
/* logo del mismo tamaño en todos los portales: no se encoge aunque el menú tenga más entradas */
.brand{flex:none}
.hd-in .nav{min-width:0}
@media(min-width:1101px) and (max-width:1280px){.nav{gap:14px;font-size:13px}}

/* v5.1: marca en el H1 de todas las páginas */
.h1-brand{display:inline-block;font-size:.62em;font-weight:600;color:var(--green-d,#2f8a3a);white-space:nowrap;margin-left:.15em;vertical-align:middle}
@media (max-width:640px){.h1-brand{display:block;margin:6px 0 0;font-size:.6em}}

/* =====================================================================
   v6 · responsive, táctil, accesibilidad e impresión · 23-09-2026
   Se aplica igual en los cinco portales. Hallazgos que corrige (auditoría
   de 2.910 cargas, 320–1920 px): objetivos táctiles <24 px en barra
   superior, migas y pie; campos a 15 px (zoom en iOS); menú inalcanzable
   con el móvil en horizontal; tablas de 3 columnas apretadas en 360 px.
   ===================================================================== */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{overflow-x:clip}
main,.ft,.ck p{overflow-wrap:break-word}

/* Márgenes seguros (muesca y barra de inicio del iPhone; requiere viewport-fit=cover) */
.w{padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}
.tl-in{padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}
@media(max-width:640px){.w,.tl-in{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}}
.wafab{margin-bottom:env(safe-area-inset-bottom,0px);margin-right:env(safe-area-inset-right,0px)}
.ck-in{padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))}

/* Objetivos táctiles: mínimo 28 px con ratón (WCAG 2.2 pide 24) y 40–44 px en pantallas táctiles */
.tl a,.crumbs a,.ft li a,.ft-sitios a,.ft-bottom a{display:inline-flex;align-items:center;min-height:28px}
@media(pointer:coarse){
  .tl a,.crumbs a{min-height:40px}
  .ft li{margin-bottom:0}
  .ft li a,.ft-sitios a,.ft-bottom a{min-height:40px}
}

/* Barra superior compacta en teléfonos: una sola línea con la acción principal */
@media(max-width:600px){
  .tl-in{justify-content:center;padding-top:2px;padding-bottom:2px;gap:0}
  .tl-in>span:first-child{display:none}
  .tl a{font-size:13.5px;padding:0 8px}
}

/* Formularios: 16 px evita que iOS haga zoom al tocar un campo */
.fi input,.fi select,.fi textarea{font-size:16px}
.fi button,.fi .btn{min-height:48px}

/* Menú móvil: debajo de la cabecera, con desplazamiento propio y siempre alcanzable */
@media(max-width:1100px){
  .nav{top:100%;max-height:calc(100vh - 96px);max-height:calc(100dvh - 96px);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 14px 28px rgba(0,0,0,.10)}
  .nav a{min-height:44px;display:flex;align-items:center}
  .burger{min-width:44px;min-height:44px;align-items:center;justify-content:center}
  .burger[aria-expanded="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
}
/* Teléfono en horizontal (poca altura): la cabecera deja de ser fija para no tapar media pantalla */
@media(max-width:1100px) and (max-height:520px){.hd{position:relative}}

/* Tablas: en teléfonos cada fila se convierte en una ficha con su etiqueta */
@media(max-width:560px){
  .tbl-stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
  .tbl-stack,.tbl-stack tbody,.tbl-stack tr,.tbl-stack td,.tbl-stack tbody th{display:block;width:100%}
  .tbl-stack tr{border:1px solid var(--line2);border-radius:6px;margin:0 0 12px;background:#fff;overflow:hidden}
  .tbl-stack td,.tbl-stack tbody th{border-bottom:1px solid var(--line2);padding:9px 12px;font-size:14.5px}
  .tbl-stack tr>*:last-child{border-bottom:0}
  .tbl-stack tr>*:first-child{font-weight:600;background:#f6f8f6}
  .tbl-stack td[data-label]::before,.tbl-stack tbody th[data-label]::before{content:attr(data-label);display:block;font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink2);margin-bottom:2px}
}

/* Foco visible para teclado y lectores de pantalla */
:focus-visible{outline:3px solid #1f6f2b;outline-offset:2px}
:focus:not(:focus-visible){outline:none}

/* Menos movimiento para quien lo pide en su sistema */
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Impresión: solo el contenido, con las direcciones de los enlaces */
@media print{
  .tl,.burger,.nav,.hwa,.wa-bar,.trust,.wafab,.ck,.ir-tienda,.cta,.wa-cta,.ft-sitios,form.fi{display:none!important}
  .hd{position:static;border:0}
  body{background:#fff;color:#000;font-size:11pt}
  a{color:#000}
  main a[href^="http"]::after{content:" (" attr(href) ")";font-size:9pt;overflow-wrap:anywhere}
  h1,h2,h3{break-after:avoid}
  tr,li,details,.card{break-inside:avoid}
}

/* v6 · píldoras de la portada: toda la píldora es el enlace (antes solo el texto, 19 px) */
.hero-chips .chip{position:relative;padding-top:0;padding-bottom:0}
.hero-chips .chip a{display:inline-flex;align-items:center;min-height:34px}
.hero-chips .chip a::after{content:"";position:absolute;inset:0;border-radius:100px}
@media(pointer:coarse){.hero-chips .chip a{min-height:40px}}

/* v6 · enlaces que son todo el título de una tarjeta o la primera celda de una tabla: área táctil mayor */
.card h3 a,.tbl th a{display:inline-block;padding:4px 0}
@media(pointer:coarse){.card h3 a,.tbl th a{padding:9px 0}}
/* tarjetas con un solo enlace (marcadas .card-link al publicar): toda la tarjeta es tocable */
.card-link{position:relative}
.card-link h3 a::after{content:"";position:absolute;inset:0}
.card-link:hover h3 a{text-decoration:underline}
.lnk{display:flex;align-items:center;min-height:28px}

/* v9 · marca al final del título: igual que el título (mismo tamaño, grosor y color), separada con barra: «Título | FumiCenter» */
.h1-brand{display:inline;font-size:inherit;font-weight:inherit;color:inherit;letter-spacing:inherit;text-transform:none;white-space:nowrap;margin:0;vertical-align:baseline}
@media (max-width:640px){.h1-brand{display:inline;margin:0;font-size:inherit;vertical-align:baseline}}

/* v10 · visor de imágenes con zoom (js/zoom.js): se abre sobre la página, sin ir al archivo */
img.zm{cursor:zoom-in}
a.zm-a{display:block;position:relative}
a.zm-a::after{content:"";position:absolute;right:10px;top:10px;width:36px;height:36px;border-radius:50%;background:rgba(0,0,0,.55) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5 21 21M10.5 7.5v6M7.5 10.5h6'/%3E%3C/svg%3E") center/19px no-repeat;pointer-events:none;transition:transform .15s}
a.zm-a:hover::after{transform:scale(1.08)}
html.zb-open{overflow:hidden}
.zb{position:fixed;inset:0;z-index:200;background:rgba(10,12,10,.95);display:flex;flex-direction:column}
.zb[hidden]{display:none}
.zb-bar{display:flex;align-items:center;gap:8px;padding:calc(10px + env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) 10px max(12px,env(safe-area-inset-left,0px))}
.zb-sp{flex:1}
.zb-n{color:#d8d8d8;font-size:14px;min-width:52px;text-align:center}
.zb-b{min-width:44px;height:44px;padding:0 10px;border-radius:22px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#fff;font-size:24px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.zb-b:hover{background:rgba(255,255,255,.2)}
.zb-x{font-size:28px}
.zb.single .zb-prev,.zb.single .zb-next,.zb.single .zb-n{display:none}
.zb-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none;cursor:zoom-in;padding:0 max(8px,env(safe-area-inset-right,0px)) 0 max(8px,env(safe-area-inset-left,0px))}
.zb.zoomed .zb-stage{cursor:grab}
.zb-img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transform-origin:center center;user-select:none;-webkit-user-drag:none;background:#fff;border-radius:4px;box-shadow:0 10px 40px rgba(0,0,0,.5)}
.zb-cap{color:#ececec;font-size:14.5px;line-height:1.5;text-align:center;margin:0;padding:10px 18px calc(14px + env(safe-area-inset-bottom,0px));max-height:24vh;overflow:auto}
@media(max-width:640px){.zb-bar{gap:4px}.zb-b{min-width:42px;height:42px}.zb-cap{font-size:13.5px}}
