/* DYNBEL AI · brochure interactivo 2026 · base en modo claro, guiada por dynbelai.com
   Tokens de marca: azul #1E7BFF, navy #14215D, naranja #FF7A1A de acento. Sin letter-spacing > .05em. */
@font-face{font-family:'Plus Jakarta Sans';font-weight:400;src:url('../fonts/pjs-400.woff2') format('woff2');font-display:swap}
@font-face{font-family:'Plus Jakarta Sans';font-weight:500;src:url('../fonts/pjs-500.woff2') format('woff2');font-display:swap}
@font-face{font-family:'Plus Jakarta Sans';font-weight:600;src:url('../fonts/pjs-600.woff2') format('woff2');font-display:swap}
@font-face{font-family:'Plus Jakarta Sans';font-weight:700;src:url('../fonts/pjs-700.woff2') format('woff2');font-display:swap}
@font-face{font-family:'Plus Jakarta Sans';font-weight:800;src:url('../fonts/pjs-800.woff2') format('woff2');font-display:swap}

:root{
  --o:#FF7A1A; --c:#1E7BFF; --nv:#14215D; --lb:#84B7FF;
  --bg:#ffffff; --fg:#0E1840; --muted:#55607A; --card:#ffffff; --line:#DDE6F6; --pill:#EAF0FB; --soft:#EEF4FF;
  --ac:#1564E6;            /* azul de texto sobre claro (contraste AA) */
  --ac-big:#1564E6;
  --cy:#B34700;            /* naranja de texto sobre claro */
  --ia:#7C3AED;
  --shadow:0 12px 30px rgba(20,33,93,.10);
  --glow1:rgba(30,123,255,.14); --glow2:rgba(255,122,26,.09);
  --hdr-bg:rgba(255,255,255,.84);
  --bm-tip-bg:#0E1840; --bm-tip-fg:#fff;
  --bm-accent:#1E7BFF; --bm-accent-2:#FF7A1A; --bm-glow:rgba(30,123,255,.55); --bm-stroke-1:#84B7FF; --bm-stroke-2:#FF7A1A; --bm-watermark:.14;
  --sec-pad-top:84px;
  --tv-a:rgba(238,241,247,.95);--tv-b:rgba(238,241,247,.55);--gv-a:rgba(255,255,255,.95);--gv-b:rgba(30,123,255,.28);
  --trad-bg:#F2F4F8;--trad-fg:#4A5470;--trad-h:#55607A;--trad-ico:#E0E5EE;--go-bg:#fff;--go-fg:#0E1840;--go-h:#1564E6;
  color-scheme:light;
}
html[data-theme="dark"]{
  --bg:#0A1238; --fg:#F2F5FC; --muted:#B4BFD8; --card:rgba(255,255,255,.06); --line:rgba(255,255,255,.14); --pill:rgba(255,255,255,.10); --soft:rgba(30,123,255,.14);
  --ac:#84B7FF; --ac-big:#84B7FF; --cy:#FF9A55; --ia:#C9A5FF;
  --shadow:0 12px 30px rgba(0,0,0,.35);
  --glow1:rgba(30,123,255,.24); --glow2:rgba(255,122,26,.12);
  --hdr-bg:rgba(10,18,56,.84);
  --bm-tip-bg:#fff; --bm-tip-fg:#0E1840;
  --trad-bg:#1A2346;--trad-fg:#C5CCDB;--trad-h:#B4BFD8;--trad-ico:#2A3560;--go-bg:#101B4A;--go-fg:#F2F5FC;--go-h:#84B7FF;
  --tv-a:rgba(20,26,56,.94);--tv-b:rgba(20,26,56,.55);--gv-a:rgba(10,20,60,.93);--gv-b:rgba(30,123,255,.35);
  --bm-menu-bg:#141B3E;--bm-menu-fg:#F2F5FC;
  color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bg);color:var(--fg);font-family:'Plus Jakarta Sans',system-ui,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{display:block;max-width:100%}
p,h1,h2,h3,ul{margin:0;padding:0}
ul{list-style:none}
a{color:inherit}
:focus-visible{outline:3px solid var(--c);outline-offset:3px;border-radius:6px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ac{color:var(--ac-big)} .cy{color:var(--cy)} .ia{color:var(--ia);font-weight:800}
.nw{white-space:nowrap}
.mg{white-space:nowrap}

/* ---------- Encabezado ---------- */
.hdr{position:fixed;left:0;right:0;top:3px;z-index:55;height:60px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 20px;
  background:var(--hdr-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.lock{display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:var(--fg)}
.lock img{height:32px;width:auto}
.lock b{font-size:18px;font-weight:800;line-height:1;white-space:nowrap}
.lock b i{font-style:normal;color:var(--cy)}
.hdr nav{display:flex;gap:4px}
.hdr nav a{font-size:13px;font-weight:600;text-decoration:none;padding:8px 12px;border-radius:999px;color:var(--muted)}
.hdr nav a:hover,.hdr nav a[aria-current="true"]{background:var(--pill);color:var(--fg)}
.hdr .tools{display:flex;align-items:center;gap:8px}
.iconbtn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--fg);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.iconbtn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.iconbtn .sun{display:none} html[data-theme="dark"] .iconbtn .sun{display:block} html[data-theme="dark"] .iconbtn .moon{display:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:inherit;font-weight:800;font-size:15px;line-height:1;text-decoration:none;border-radius:999px;padding:14px 24px;border:1.5px solid transparent;cursor:pointer}
.btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.btn.main{background:var(--o);color:#0B1020}
.btn.main:hover{background:#e57600}
.btn.s{background:var(--card);color:var(--fg);border-color:var(--line);box-shadow:0 4px 14px rgba(60,40,10,.07)}
.btn.sm{padding:10px 16px;font-size:13px}
@media (max-width:980px){.hdr nav{display:none}}
@media (max-width:520px){.hdr{padding:0 12px}.lock b{font-size:15px}.lock img{height:28px}.btn.sm span{display:none}.btn.sm{padding:11px 12px}}

/* ---------- Secciones ---------- */
.sec{position:relative;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:var(--sec-pad-top) 28px 36px;scroll-margin-top:0;overflow:hidden}
.sec::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(60% 40% at 100% 0%,var(--glow1),transparent 70%),radial-gradient(50% 36% at 0% 100%,var(--glow2),transparent 70%)}
.in{width:min(1120px,100%)}
.head{text-align:center;display:flex;flex-direction:column;align-items:center}
.pill{display:inline-flex;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:6px 14px;border-radius:999px;background:var(--pill);color:var(--muted);margin-bottom:14px}
.h2{font-size:clamp(28px,5.4vh + 8px,46px);line-height:1.08;font-weight:800;letter-spacing:-.02em;text-wrap:balance}
.sub{font-size:clamp(15px,2vh + 5px,18px);color:var(--muted);margin-top:10px;text-wrap:balance;max-width:640px}
.p{font-size:15.5px;line-height:1.65;color:var(--muted);text-wrap:pretty}
.card{background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}
.chip{display:inline-flex;align-items:center;font-size:12.5px;font-weight:700;padding:8px 15px;border-radius:999px;background:var(--card);border:1px solid var(--line);box-shadow:0 4px 12px rgba(60,40,10,.06);white-space:nowrap}
.chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.ic{width:46px;height:46px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;background:rgba(253,135,0,.14);color:var(--ac)}
.ic svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.photo{position:relative;overflow:hidden;border-radius:24px;background:#222}
.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.photo .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,16,32,0) 40%,rgba(11,16,32,.82) 100%)}

/* Secciones oscuras de acento (portada de marca, magIA, ecosistema, cierre): siempre oscuras */
.dk{--bg:#0B1020;--fg:#F4F6FA;--muted:#BFC7D8;--card:rgba(255,255,255,.07);--line:rgba(255,255,255,.16);--pill:rgba(255,255,255,.12);--ac:#FFA033;--ac-big:#fd8700;--cy:#43CFFF;--ia:#C9A5FF;
  --glow1:rgba(253,135,0,.28);--glow2:rgba(22,193,253,.2);--shadow:0 12px 30px rgba(0,0,0,.35);background:linear-gradient(160deg,#0B1020 0%,#0E1A2E 60%,#10243B 100%);color:var(--fg)}
.dk.mg-sec{background:linear-gradient(160deg,#150B2E 0%,#1C0F3F 55%,#2A1458 100%);--glow1:rgba(124,58,237,.42);--glow2:rgba(253,135,0,.14)}

/* ---------- 1 · Inicio ---------- */
.s-inicio{padding-bottom:70px}
.s-inicio .in{text-align:center;display:flex;flex-direction:column;align-items:center;position:relative}
.s-inicio h1{font-size:clamp(46px,11vh + 14px,112px);line-height:.98;font-weight:800;letter-spacing:-.035em}
.s-inicio h1 .o{color:var(--ac-big)} .s-inicio h1 .d{color:var(--cy)}
.s-inicio .tag{font-size:clamp(18px,2.8vh + 6px,26px);font-weight:700;margin-top:clamp(12px,3vh,26px)}
.s-inicio .p{max-width:600px;margin-top:14px}
.s-inicio .cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:clamp(18px,3.4vh,30px)}
.s-inicio .chips{margin-top:clamp(16px,3vh,28px)}
.cue{position:absolute;left:50%;bottom:16px;margin-left:-14px;width:28px;height:44px;border:2px solid var(--line);border-radius:16px;color:var(--muted)}
.cue::after{content:"";position:absolute;left:11px;top:8px;width:4px;height:8px;border-radius:2px;background:currentColor;animation:cue 2.4s ease-in-out infinite}
@keyframes cue{0%,100%{transform:translateY(0);opacity:.9}60%{transform:translateY(14px);opacity:0}}
@media (prefers-reduced-motion:reduce){.cue::after{animation:none}}
@media (max-height:640px){.cue{display:none}}

/* ---------- 2 · Quiénes somos ---------- */
.s-somos .grid{display:grid;grid-template-columns:1.05fr 1fr;gap:34px;align-items:center;margin-top:22px}
.s-somos .photo{height:clamp(260px,46vh,380px)}
.s-somos .photo .lema{position:absolute;left:22px;bottom:18px;font-size:clamp(28px,5vh,40px);font-weight:800;color:#fff;letter-spacing:-.02em;z-index:2;line-height:1}
.s-somos .photo .lema span{color:var(--o)}
.s-somos .eq{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:800}
.s-somos .mono{width:48px;height:48px;border-radius:15px;background:#0B1020;display:flex;align-items:center;justify-content:center}
.s-somos .mono img{height:32px;width:auto}
.s-somos .p{margin-top:14px}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}
.stat{border-radius:22px;padding:18px 22px}
.stat .v{font-size:clamp(34px,5vh + 8px,46px);line-height:1;font-weight:800;letter-spacing:-.03em}
.stat .l{margin-top:7px;font-size:14px;font-weight:600}
.stat.a{background:var(--o);color:#0B1020}
.stat.b{background:#0B1020;color:#fff}.stat.b .v{color:var(--c)}
.quote{margin-top:16px;font-size:18px;font-weight:800;font-style:italic;color:var(--ac)}

/* ---------- 3 · Problema + comparador ---------- */
.cmp{margin-top:22px;border-radius:26px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}
.cmp__layer{padding:28px 30px}
.cmp__layer h3{font-size:13px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;margin:12px 0}
.cmp__layer li{display:flex;gap:10px;font-size:16px;line-height:1.4;font-weight:600;margin-top:10px}
.cmp__layer li::before{content:"";flex:0 0 8px;height:8px;border-radius:50%;margin-top:7px;background:currentColor;opacity:.55}
.cmp__trad{background:var(--trad-bg);color:var(--trad-fg)}
.cmp__go{background:var(--go-bg);color:var(--go-fg);border-top:1px solid var(--line)}
.cmp__go li::before{background:var(--o);opacity:1}
.cmp__go h3{color:var(--go-h)}
.cmp__trad h3{color:var(--trad-h)}
.cmp .ico{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center}
.cmp .ico svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cmp__trad .ico{background:var(--trad-ico);color:var(--trad-h)} .cmp__go .ico{background:var(--o);color:#fff}
.cmp__handle,.cmp__range,.cmp__hint,.cmp__tag{display:none}
.js .cmp{position:relative;height:clamp(300px,50vh,380px);touch-action:pan-y;--x:50}
.js .cmp__layer{position:absolute;inset:0;padding:28px 30px;display:flex;flex-direction:column;justify-content:center}
.js .cmp__trad{padding-right:54%}
.js .cmp__go{padding-left:54%;clip-path:inset(0 0 0 calc(var(--x) * 1%));border-top:0}
.js .cmp__trad > *,.js .cmp__go > *{max-width:100%}
.js .cmp__handle{display:block;position:absolute;top:0;bottom:0;left:calc(var(--x) * 1%);width:3px;margin-left:-1.5px;background:var(--o);z-index:3;pointer-events:none}
.js .cmp__handle i{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:var(--o);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(0,0,0,.28)}
.js .cmp__handle svg{width:24px;height:24px;fill:none;stroke:#0B1020;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.js .cmp:focus-within .cmp__handle i{outline:3px solid var(--c);outline-offset:3px}
.js .cmp__range{display:block;position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;z-index:4;cursor:ew-resize}
.js .cmp__tag{display:block;position:absolute;top:14px;z-index:2;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:6px 12px;border-radius:999px}
.js .cmp__tag.l{left:16px;background:var(--trad-ico);color:var(--trad-fg)} .js .cmp__tag.r{right:16px;background:var(--o);color:#0B1020}
.js .cmp__hint{display:block;text-align:center;font-size:13px;font-weight:600;color:var(--muted);margin-top:10px}
@media (max-width:700px){
  /* A1 · en el celular las dos capas se apilan: sin deslizador y sin texto encimado */
  .js .cmp{height:auto}
  .js .cmp__layer{position:static;padding:24px 22px;justify-content:flex-start;clip-path:none;padding-left:22px;padding-right:22px}
  .js .cmp__go{border-top:1px solid var(--line)}
  .js .cmp__handle,.js .cmp__range,.js .cmp__tag,.js .cmp__hint{display:none}
}

/* ---------- 4 · Método ---------- */
.s-metodo .grid{display:grid;grid-template-columns:1fr 280px;gap:34px;margin-top:24px;align-items:stretch}
.step{display:grid;grid-template-columns:88px 1fr;gap:16px;align-items:start;padding:clamp(10px,2vh,20px) 0;border-bottom:1px solid var(--line)}
.step:last-of-type{border-bottom:0}
.step .n{font-size:clamp(44px,8vh,66px);font-weight:800;line-height:1;color:var(--ac-big);letter-spacing:-.03em}
.step h3{font-size:clamp(19px,2.8vh + 4px,24px);line-height:1.15;font-weight:800}
.step p{margin-top:6px;font-size:15.5px;color:var(--muted)}
.s-metodo .photo{min-height:320px}
.pie{display:flex;align-items:center;gap:14px;margin-top:16px;border-radius:20px;padding:14px 22px;background:var(--soft);border:1px solid var(--line);font-size:17px;font-weight:700}
.pie .ic{background:var(--o);color:#fff}
.pie b{color:var(--ac);font-weight:800}

/* ---------- 5 · Portafolio ---------- */
.rows{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px}
.row{border-radius:24px;overflow:hidden;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);display:flex;flex-direction:column}
.row .photo{border-radius:0;height:clamp(180px,32vh,300px)}
.row .photo b{position:absolute;left:18px;bottom:14px;z-index:2;font-size:30px;font-weight:800;color:#fff;letter-spacing:-.02em;line-height:1}
.row p{padding:16px 20px 20px;font-size:14.5px;color:var(--muted)}
.note{display:flex;gap:12px;align-items:flex-start;margin-top:16px;font-size:14px;color:var(--muted);background:var(--soft);border:1px solid var(--line);border-radius:18px;padding:14px 18px}
.note svg{width:22px;height:22px;flex:0 0 auto;fill:none;stroke:var(--ac);stroke-width:1.9;margin-top:1px}

/* ---------- 6 · Vitrina ---------- */
.s-vitrina .vit-grid{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:center}
.s-vitrina .vit-main{min-width:0}
.s-vitrina .stage{display:grid;grid-template-columns:1.5fr 1fr;gap:16px;margin-top:16px;align-items:stretch}
.ph{display:flex;flex-direction:column;align-items:center}
.head.l{align-items:flex-start;text-align:left}
.s-vitrina .chips{justify-content:flex-start}
.cap{font-size:12px;font-weight:700;color:var(--muted);margin-top:8px;text-align:center}
.webcard{padding:10px;display:flex;flex-direction:column}
.webcard .bm-heat{border-radius:12px;overflow:hidden}
.webcard img{width:100%;height:auto;border-radius:12px}
.cam{position:relative;border-radius:24px;overflow:hidden;min-height:240px;box-shadow:var(--shadow)}
.cam > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 55%}
.cam .det{position:absolute;left:41%;top:36%;width:19%;height:42%;border:2.5px solid #5BE3A0;border-radius:6px}
.cam .det span{position:absolute;left:-2px;top:-24px;background:#5BE3A0;color:#06251A;font-size:10px;font-weight:800;padding:3px 8px;border-radius:5px 5px 5px 0;white-space:nowrap}
.cam .lab{position:absolute;left:12px;bottom:12px;z-index:2;display:flex;align-items:center;gap:10px;background:#0B1020;padding:7px 12px;border-radius:999px;color:#fff;font-size:12px;font-weight:700}
.cam .lab img{height:15px;width:auto}
.s-vitrina .chips{margin-top:18px}
.s-vitrina .p{margin-top:12px;font-size:14px;max-width:900px}
.zp1{left:11.4%;top:25%;width:77.2%;height:23.1%}.zp2{left:11.4%;top:50.2%;width:77.2%;height:27.7%}.zp3{left:71.9%;top:10.4%;width:16.7%;height:3.1%}
.zm1{left:4.5%;top:37.2%;width:86%;height:6.3%}.zm2{left:4.5%;top:52.4%;width:86%;height:13.9%}.zm3{left:4.5%;top:70.4%;width:86%;height:17.7%}
.zone-a{left:7.5%;top:20%;width:28.5%;height:49%}
.zone-b{left:68.5%;top:11.7%;width:31%;height:31%}
.zone-c{left:38%;top:44%;width:62%;height:53%}
.zone-d{left:7.5%;top:71%;width:28.5%;height:25%}

/* ---------- 7 · magIA ---------- */
.s-magia .top{display:grid;grid-template-columns:1fr 210px;gap:20px;align-items:center}
.s-magia .h2{font-size:clamp(32px,6vh + 8px,52px)}
.s-magia .head{align-items:flex-start;text-align:left}
.s-magia .goat{position:relative;width:210px}
.s-magia .goat img.g{width:200px;height:auto}
.s-magia .goat img.sp{position:absolute;left:0;top:4px;width:46px}
.feats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
.f{display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(201,165,255,.3);border-radius:20px;padding:14px 18px}
.f .ic{background:#7C3AED;color:#fff}
.f h3{font-size:15.5px;font-weight:800;color:#fff;line-height:1.25}
.f h3 em{font-style:normal;color:#C9A5FF}
.f p{font-size:13.2px;line-height:1.45;color:rgba(255,255,255,.84);margin-top:3px}
.f.w{grid-column:1/-1}
.s-magia .pie{display:block;font-size:12.5px;font-weight:500;background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.18);color:#fff;border-radius:18px;margin-top:14px}
.s-magia .pill{background:rgba(201,165,255,.18);color:#E4D2FF}

/* ---------- 8 · Gamificación ---------- */
.s-gami .grid{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
.s-gami .head{align-items:flex-start;text-align:left}
.s-gami .h2{font-size:clamp(30px,5vh + 8px,42px)}
.s-gami h3.k{font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#1564E6;margin-top:14px}
html[data-theme="dark"] .s-gami h3.k{color:#84B7FF}
.lst{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.li{border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.4;font-weight:600;background:var(--card);border:1px solid var(--line);box-shadow:0 8px 20px rgba(60,40,10,.06)}
.li .ic{width:34px;height:34px;border-radius:11px;background:rgba(30,123,255,.12);color:#1564E6}.li .ic svg{width:18px;height:18px}
.big45{display:flex;align-items:center;gap:16px;margin-top:14px;border-radius:18px;padding:12px 18px;background:linear-gradient(100deg,#7C3AED,#1E7BFF);color:#fff}
.big45 .v{white-space:nowrap;font-size:38px;font-weight:800;line-height:1;letter-spacing:-.02em}
.big45 .t{font-size:14px;font-weight:700;line-height:1.3}
.acad{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:12px;margin-top:16px}
.acad .photo{border-radius:18px;height:110px}
.acad .photo span{position:absolute;left:12px;bottom:9px;z-index:2;font-size:11px;font-weight:700;color:#fff}
.acad .tx{border-radius:18px;padding:14px 16px;background:linear-gradient(150deg,#1E7BFF,#14215D);display:flex;flex-direction:column;justify-content:center;gap:4px;color:#fff}
.acad .tx h3{font-size:18px;font-weight:800}
.acad .tx p{font-size:12px;line-height:1.4;color:#fff}
.foot-note{margin-top:12px;font-size:12.5px;color:var(--muted)}

/* ---------- 9 · Diferenciales ---------- */
.pts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}
.pt{position:relative;display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:center;border-radius:20px;padding:14px 20px;background:var(--card);border:1px solid var(--line);box-shadow:0 8px 22px rgba(60,40,10,.06)}
.pt h3{font-size:16.5px;font-weight:800;line-height:1.2}
.pt p{font-size:13.8px;color:var(--muted);margin-top:3px;line-height:1.45}
.pt{padding-right:58px}
.pt .num{position:absolute;right:16px;top:8px;font-size:30px;font-weight:800;color:rgba(253,135,0,.3)}
.cmp2{display:grid;grid-template-columns:1fr 1fr;margin-top:14px;border-radius:22px;overflow:hidden}
.cmp2 div{padding:20px 26px;display:flex;flex-direction:column;gap:5px;justify-content:center}
.cmp2 .t{background:#EDE6DC;color:#5F594E} .cmp2 .g{background:#0B1020;color:#fff}
.cmp2 small{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.cmp2 .g small{color:var(--o)}
.cmp2 b{font-size:clamp(18px,3vh + 2px,24px);font-weight:800;line-height:1.1}

/* ---------- 10 · Ecosistema ---------- */
.s-eco .hub{position:relative;display:grid;grid-template-columns:1fr 200px 1fr;grid-template-rows:auto auto;gap:22px 24px;margin-top:22px;align-items:center}
.s-eco .center{grid-column:2;grid-row:1/3;width:200px;height:200px;border-radius:50%;background:radial-gradient(closest-side,#1a2a44,#0B1020);border:3px solid var(--o);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#fff;font-weight:800;font-size:15px}
.s-eco .center img{height:66px;width:auto}.s-eco .center i{font-style:normal;color:var(--c)}
.node{border-radius:22px;padding:16px 20px;background:#14233B;border:1px solid rgba(255,255,255,.22);display:flex;flex-direction:column;gap:8px;color:#fff}
.node img{height:30px;width:auto;align-self:flex-start}
.node p{font-size:14.5px;line-height:1.45;color:rgba(255,255,255,.9);text-wrap:balance}
.node.n1{border-top:4px solid #1E7BFF;grid-column:1;grid-row:1}
.node.n2{border-top:4px solid #84B7FF;grid-column:3;grid-row:1}
.node.n3{border-top:4px solid #C9A5FF;grid-column:1/-1;grid-row:3;max-width:320px;justify-self:center}
.node .spk{display:flex;align-items:center;gap:9px;font-size:20px;font-weight:800}
.node .spk img{height:22px;width:22px}
.s-eco .note{background:rgba(255,255,255,.08);color:rgba(255,255,255,.88);border-color:rgba(255,255,255,.16);margin-top:22px}
.s-eco .note svg{stroke:var(--o)}

/* ---------- 11 · Aliados ---------- */
.lbl{margin-top:18px;font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ac)}
.arl{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:10px}
.lg{height:84px;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 22px rgba(60,40,10,.06);display:flex;align-items:center;justify-content:center;padding:14px 18px}
.lg img{max-height:42px;max-width:100%;width:auto}
.lg span{font-size:22px;font-weight:800;color:#0B6FB3}
.aseg{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:10px}
.aseg li{height:48px;border-radius:999px;background:var(--card);border:1px solid var(--line);font-size:13.5px;font-weight:700;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 10px;line-height:1.2}
.strip{margin-top:18px;border-radius:20px;background:linear-gradient(100deg,var(--o),#ffa538);color:#0B1020;padding:16px 24px;display:flex;align-items:center;gap:16px;font-size:16px;font-weight:800;line-height:1.25}
.strip img{height:40px;width:auto}

/* ---------- 12 · Cierre ---------- */
.s-cierre .in{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center}
.s-cierre h2{font-size:clamp(36px,8vh + 10px,66px);line-height:1.02;font-weight:800;letter-spacing:-.03em;text-wrap:balance}
.s-cierre h2 span{color:var(--o)}
.s-cierre .vs{font-size:clamp(20px,3vh + 6px,26px);font-weight:800;color:var(--c);margin-top:12px}
.s-cierre .p{color:rgba(255,255,255,.88);margin-top:12px;max-width:460px}
.s-cierre .btn{margin-top:22px}
.ct{display:flex;flex-direction:column;gap:12px;font-size:15.5px;font-weight:600}
.ct a{display:flex;gap:12px;align-items:center;text-decoration:none}
.ct svg{width:20px;height:20px;fill:none;stroke:var(--o);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.qr{display:flex;gap:18px;align-items:center;margin-top:20px}
.qr>div{background:#fff;border-radius:18px;padding:10px;width:128px}
.qr img{width:100%;height:auto}
.firma{margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.2);font-size:12.5px;color:rgba(255,255,255,.78)}
.firma b{color:#fff}

/* ---------- Pantallas pequeñas (375 px sin scroll horizontal) ---------- */
@media (max-width:900px){
  .sec{min-height:auto;padding:84px 16px 40px}
  .s-inicio{min-height:100svh}
  .s-somos .grid,.s-metodo .grid,.s-gami .grid,.s-cierre .in{grid-template-columns:1fr}
  .s-metodo .photo{min-height:220px}
  .rows,.feats,.pts,.lst{grid-template-columns:1fr}
  .s-vitrina .vit-grid{grid-template-columns:1fr}
  .s-vitrina .stage{grid-template-columns:1fr}
  .s-vitrina .vit-main{order:2}
  .arl,.aseg{grid-template-columns:repeat(2,1fr)}
  .s-eco .hub{grid-template-columns:1fr}
  .s-eco .center,.node.n1,.node.n2,.node.n3{grid-column:1;grid-row:auto;justify-self:center}
  .node{width:100%} .node.n3{max-width:none}
  .s-magia .top{grid-template-columns:1fr 120px}
  .s-magia .goat{width:120px}.s-magia .goat img.g{width:120px}.s-magia .goat img.sp{width:30px}
  .cmp2{grid-template-columns:1fr}
  .acad{grid-template-columns:1fr 1fr}.acad .tx{grid-column:1/-1}
  .step{grid-template-columns:64px 1fr}
  .s-gami .ph{order:-1}
  .big45 .v{font-size:32px}
  .stats{grid-template-columns:1fr 1fr}
}
@media (max-width:420px){
  .h2,.s-magia .h2,.s-gami .h2{font-size:28px}
  .s-magia .top{grid-template-columns:1fr 84px}.s-magia .goat{width:84px}.s-magia .goat img.g{width:84px}.s-magia .goat img.sp{display:none}
  .s-inicio h1{font-size:46px}
  .chip{white-space:normal}
}

/* ---------- Pantallas bajas (1366×768): compactar para que cada sección quepa ---------- */
@media (min-width:901px) and (max-height:820px){
  .sec{--sec-pad-top:76px;padding-bottom:22px}
  .pill{margin-bottom:8px}
  .sub{margin-top:6px}
  .s-vitrina .stage{margin-top:10px}
  .s-vitrina .chips{margin-top:10px}
  .s-vitrina .p{margin-top:8px;font-size:12.5px;line-height:1.5}
  .cap{margin-top:5px}
  .s-gami .grid{gap:26px}
  .s-gami h3.k{margin-top:8px}
  .s-gami .p{font-size:14px;line-height:1.5}
  .li{padding:9px 12px;gap:5px;font-size:12.5px}
  .li .ic{width:28px;height:28px}
  .big45{margin-top:10px;padding:8px 16px}.big45 .v{font-size:32px}
  .acad{margin-top:10px}.acad .photo{height:84px}.acad .tx{padding:10px 14px}
  .foot-note{margin-top:8px}
}
@media (max-width:900px){ .s-cierre h2{font-size:clamp(32px,10vw,56px)} .s-inicio h1{font-size:clamp(44px,15vw,88px)} }

.theme-prl .ac{color:#1564E6}
html[data-theme="dark"] .theme-prl .ac{color:#84B7FF}
.hdr nav a .ia{color:#7C3AED} html[data-theme="dark"] .hdr nav a .ia{color:#C9A5FF}
.step h3{text-wrap:balance}
.f h3,.pt h3{text-wrap:balance}

.cta2{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;align-items:stretch}
.cta2 .btn{margin-top:0 !important;font-size:16px;padding:16px 26px}
.s-inicio .cta .btn{padding:16px 26px;font-size:16px;align-items:center}
.s-inicio .cta{align-items:stretch}
.cam .det span{font-size:11px}
.btn.s.wa svg{stroke:#25D366}
.cta2 .btn,.s-inicio .cta .btn{min-height:52px}

/* ---------- Comparador con imagen alusiva en cada lado (Julián, 23-oct) ---------- */
.cmp__layer{position:relative;overflow:hidden;isolation:isolate}
.cmp__layer::before,.cmp__layer::after{content:"";position:absolute;inset:0;pointer-events:none}
.cmp__layer::before{z-index:-2;background-size:cover;background-position:center}
.cmp__layer::after{z-index:-1}
.cmp__trad::before{background-image:url('../img/normativa.jpg');filter:grayscale(1) contrast(.92)}
.cmp__trad::after{background:linear-gradient(90deg,var(--tv-a) 0%,var(--tv-a) 38%,var(--tv-b) 100%)}
.cmp__go::before{background-image:url('../img/empresas.jpg')}
.cmp__go::after{background:linear-gradient(270deg,var(--gv-a) 0%,var(--gv-a) 38%,var(--gv-b) 100%)}
.js .cmp__layer{position:absolute}
@media (max-width:700px){
  .js .cmp__layer{position:relative}
  .cmp__trad::after{background:var(--tv-a)}
  .cmp__go::after{background:linear-gradient(180deg,var(--gv-a) 0%,var(--gv-a) 70%,var(--gv-b) 100%)}
}
@media (max-width:900px){ :root{--bm-phone-w:min(250px,66vw)} }

/* ====== DYNBEL AI · ajustes de marca y piezas propias ====== */
.ic{background:rgba(30,123,255,.13)}
.btn.main{color:#0E1840}.btn.main:hover{background:#E8650A}
.btn.s{box-shadow:0 4px 14px rgba(20,33,93,.08)}
.chip{box-shadow:0 4px 12px rgba(20,33,93,.07)}
.dk{--bg:#0A1238;--fg:#F2F5FC;--muted:#C3CCE2;--card:rgba(255,255,255,.07);--line:rgba(255,255,255,.16);--pill:rgba(255,255,255,.12);--ac:#84B7FF;--ac-big:#84B7FF;--cy:#FF9A55;--ia:#C9A5FF;
  --glow1:rgba(30,123,255,.34);--glow2:rgba(255,122,26,.18);--shadow:0 12px 30px rgba(0,0,0,.35);background:linear-gradient(155deg,#0A1238 0%,#14215D 62%,#183073 100%);color:var(--fg)}
.dk.mg-sec{background:linear-gradient(160deg,#150B2E 0%,#1C0F3F 55%,#2A1458 100%);--glow1:rgba(124,58,237,.42);--glow2:rgba(30,123,255,.16)}
.lock img{height:30px}
.lock .on-dark{display:none} html[data-theme="dark"] .lock .on-light{display:none} html[data-theme="dark"] .lock .on-dark{display:inline}
@media (max-width:520px){.lock img{height:26px}}
.gr{color:var(--ac)}
/* portada oscura con intro del logo */
.s-inicio .in{max-width:980px}
.s-inicio h1{font-size:clamp(34px,6.4vh + 12px,82px);line-height:1.02;text-wrap:balance}
.s-inicio h1 .gr{color:#84B7FF}
.s-inicio .tag{font-size:clamp(20px,3.4vh + 6px,32px);font-weight:800}
.s-inicio .pill{background:rgba(255,255,255,.12);color:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.2)}
.s-inicio .p{color:rgba(255,255,255,.86)}
.s-inicio .chip{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.22);color:#fff;box-shadow:none}
.s-inicio .btn.s{background:rgba(255,255,255,.10);color:#fff;border-color:rgba(255,255,255,.3);box-shadow:none}
.s-inicio .cue{border-color:rgba(255,255,255,.4);color:rgba(255,255,255,.7)}
html .bm-logo path{stroke-width:15}
/* «Detecta · Alerta · Gestiona» se enciende palabra por palabra */
.dag .dg{display:inline-block;transition:opacity .55s ease,text-shadow .55s ease,transform .55s var(--bm-ease)}
.dag .dg.d3{color:var(--o)}
html.js:not(.bm-static) .dag .dg{opacity:.2;transform:translateY(6px)}
html.js:not(.bm-static) .dag .dg.on{opacity:1;transform:none;text-shadow:0 0 26px currentColor}
.dag .sep{opacity:.5;padding:0 .18em}
/* ISO/IEC 27001 destacado */
.iso{display:inline-flex;align-items:center;gap:12px;padding:10px 18px 10px 12px;border-radius:16px;background:var(--card);border:1.5px solid var(--c);box-shadow:var(--shadow);color:var(--fg);text-align:left}
.iso svg{width:34px;height:34px;flex:0 0 auto;fill:none;stroke:var(--ac);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.iso b{display:block;font-size:14px;font-weight:800;line-height:1.15}
.iso small{display:block;font-size:11.5px;font-weight:600;color:var(--muted);margin-top:2px}
.dk .iso{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.45);box-shadow:none}
.dk .iso svg{stroke:#fff}
.s-inicio .iso{margin-top:clamp(14px,2.6vh,24px)}
/* Quiénes somos */
.s-somos .band{margin-top:22px;border-radius:26px;background:linear-gradient(155deg,#14215D,#1E7BFF);color:#fff;padding:clamp(22px,4vh,36px) clamp(22px,3vw,40px);display:grid;grid-template-columns:1fr 250px;gap:30px;align-items:center;position:relative;overflow:hidden}
.s-somos .band .wm{position:absolute;right:-70px;bottom:-70px;width:380px;opacity:.12}
.s-somos .band h3{font-size:clamp(22px,3.4vh + 6px,30px);line-height:1.12;font-weight:800;letter-spacing:-.02em;text-wrap:balance}
.s-somos .band p{margin-top:10px;font-size:15.5px;line-height:1.55;color:rgba(255,255,255,.92);max-width:560px}
.s-somos .lockup{display:flex;flex-direction:column;gap:12px;position:relative;z-index:1}
.s-somos .lockup .l1{background:#fff;border-radius:16px;padding:12px 16px;display:flex;align-items:center;gap:12px;font-weight:800;color:#14215D;font-size:15px;width:max-content}
.s-somos .lockup .l1 img{height:36px;width:auto}
.s-somos .lockup .l2{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);border-radius:16px;padding:14px 18px}
.s-somos .lockup .l2 img{height:46px;width:auto}
.s-somos .cols{display:grid;grid-template-columns:1.1fr 1fr;gap:28px;margin-top:20px;align-items:start}
.s-somos .ccs{display:flex;align-items:center;gap:12px;margin-top:14px;font-size:14px;font-weight:600;line-height:1.4}
.s-somos .ccs img{height:44px;width:auto;flex:0 0 auto}
.s-somos .stats{grid-template-columns:repeat(4,1fr);margin-top:20px}
.stat{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}
.stat .v{color:var(--ac)} .stat.o .v{color:var(--cy)}
/* problema: sin fotos; el lado «con DYNBEL» muestra el dashboard */
.cmp__trad::before{background-image:none;background:repeating-linear-gradient(135deg,#E9ECF3,#E9ECF3 16px,#F2F4F8 16px,#F2F4F8 32px)}
html[data-theme="dark"] .cmp__trad::before{background:repeating-linear-gradient(135deg,#1A2346,#1A2346 16px,#222C58 16px,#222C58 32px)}
.cmp__go::before{background-image:url('../img/dynbel-web-dashboard.webp');background-size:cover;background-position:100% 30%}
.cmp__trad::before{filter:none}
.cmp__go h3{color:var(--go-h)}
.cmp__go .ico{background:var(--c)}
.js .cmp__handle,.js .cmp__handle i{background:var(--o)}
.js .cmp__tag.r{background:var(--o);color:#0E1840}
.cmp__go li::before{background:var(--c)}
.cmp__intro{max-width:760px;margin:16px auto 0;text-align:center}
/* método */
.s-metodo .steps3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}
.mstep{position:relative;border-radius:26px;padding:clamp(20px,3.4vh,30px) 24px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);transition:transform .5s var(--bm-ease),box-shadow .5s,border-color .5s}
.mstep .num{width:84px;height:84px;border-radius:24px;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(155deg,#14215D,#1E7BFF);position:relative}
.mstep:nth-child(3) .num{background:linear-gradient(155deg,#E8650A,#FF7A1A)}
.mstep .num svg{width:40px;height:40px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mstep .num b{position:absolute;right:-8px;top:-8px;width:30px;height:30px;border-radius:50%;background:#fff;color:#14215D;border:2px solid var(--c);font-size:14px;display:flex;align-items:center;justify-content:center}
.mstep h3{font-size:clamp(24px,3.4vh + 6px,32px);margin-top:16px;font-weight:800;letter-spacing:-.02em}
.mstep p{margin-top:8px;font-size:15.5px;color:var(--muted)}
html.js:not(.bm-static) .mstep{opacity:.45}
html.js:not(.bm-static) .mstep.on{opacity:1;transform:translateY(-6px);border-color:var(--c);box-shadow:0 18px 40px rgba(30,123,255,.22)}
.s-metodo .h2.dag{font-size:clamp(30px,5.6vh + 8px,54px)}
/* mosaico de 59 módulos */
.mos__legend{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:18px}
.mos__legend button{font:inherit;font-size:12.5px;font-weight:700;padding:7px 13px;border-radius:999px;border:1.5px solid var(--fc);background:var(--card);color:var(--fg);cursor:pointer;display:inline-flex;gap:8px;align-items:center}
.mos__legend button b{color:var(--fc);font-weight:800}
.mos__legend button[aria-pressed="true"]{background:var(--fc);color:#fff}.mos__legend button[aria-pressed="true"] b{color:#fff}
.mos__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}
.mfam{border-radius:18px;padding:12px 14px 14px;background:var(--card);border:1px solid var(--line);border-top:4px solid var(--fc);box-shadow:var(--shadow);transition:opacity .35s,transform .35s}
.mfam.w2{grid-column:span 2}
.mfam h3{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:14px;font-weight:800;margin-bottom:9px}
.mfam h3 b{font-size:22px;color:var(--fc2,var(--fc));line-height:1}
.mfam ul{display:flex;flex-wrap:wrap;gap:5px}
.mt{font-size:11.5px;font-weight:600;line-height:1;padding:6px 9px;border-radius:9px;background:color-mix(in srgb,var(--fc) 12%,var(--card));color:var(--fg);white-space:nowrap}
html.js:not(.bm-static) .mos .mt{opacity:0;transform:translateY(14px) scale(.7)}
html.js:not(.bm-static) .mos.is-built .mt{opacity:1;transform:none;transition:opacity .5s ease,transform .6s var(--bm-ease);transition-delay:calc(var(--d,0) * 1ms)}
.mos[data-focus] .mfam{opacity:.28}
.mos[data-focus="0"] .mfam[data-f="0"],.mos[data-focus="1"] .mfam[data-f="1"],.mos[data-focus="2"] .mfam[data-f="2"],.mos[data-focus="3"] .mfam[data-f="3"],.mos[data-focus="4"] .mfam[data-f="4"],.mos[data-focus="5"] .mfam[data-f="5"],.mos[data-focus="6"] .mfam[data-f="6"],.mos[data-focus="7"] .mfam[data-f="7"]{opacity:1;transform:translateY(-3px)}
.mos__nota{margin-top:14px}
/* vitrina */
.s-vitrina .stage{grid-template-columns:1.6fr 1fr}
.s-vitrina .ph2{display:flex;flex-direction:column;align-items:center;justify-content:center}
.s-vitrina .ph2 .bm-phone{--bm-phone-w:min(210px,calc((100svh - 190px) * .4562),60vw)}
.s-vitrina .inc li{display:inline-flex}
.s-vitrina .chips small{font-weight:500;color:var(--muted);margin-left:6px}
.bm-heat__zone{border-color:var(--o);background:rgba(255,122,26,.14)}
.bm-heat__zone b{background:#14215D}
/* magIA: el morado manda en esta hoja */
.s-magia .goat img.sp2{position:absolute;right:0;bottom:12px;width:30px}
.s-magia .goat{width:230px}.s-magia .goat img.g{width:220px}
/* gamificación */
.s-gami .acad2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.s-gami .acad2 .tx{border-radius:18px;padding:14px 16px;background:var(--soft);border:1px solid var(--line)}
.s-gami .acad2 .tx h3{font-size:18px;font-weight:800}.s-gami .acad2 .tx p{font-size:12.5px;line-height:1.45;color:var(--muted);margin-top:4px}
.s-gami .acad2 .mgb{border-radius:18px;padding:14px 16px;background:linear-gradient(150deg,#7C3AED,#14215D);color:#fff;display:flex;align-items:center;gap:12px;font-size:13px;font-weight:700;line-height:1.35}
.s-gami .acad2 .mgb img{width:40px;height:auto;flex:0 0 auto}
.big45{background:linear-gradient(100deg,#14215D,#1E7BFF)}
.li .ic{background:rgba(30,123,255,.12);color:var(--ac)}
/* diferenciales */
.pt .num{color:rgba(30,123,255,.28)}
.pt.hi{background:linear-gradient(155deg,#14215D,#1E7BFF);border:0;color:#fff;grid-column:1/-1;padding-right:20px;box-shadow:0 12px 28px rgba(30,123,255,.30)}
.pt.hi p{color:rgba(255,255,255,.9)} .pt.hi .ic{background:#fff;color:#1564E6}
.pt.hi .iso{margin-left:auto}
.pt.hi{grid-template-columns:52px 1fr auto}
.cmp2 .t{background:#E6EAF2;color:#55607A}.cmp2 .g{background:linear-gradient(155deg,#14215D,#1E7BFF)}.cmp2 .g small{color:#FFB27A}
html[data-theme="dark"] .cmp2 .t{background:#1A2346;color:#B4BFD8}
/* ecosistema */
.s-eco .center{width:230px;height:230px;border-color:#7C3AED;background:radial-gradient(closest-side,#2A1458,#150B2E);gap:0;grid-row:1/3}
.s-eco .center img{height:130px;width:auto}
.s-eco .center i{font-style:normal}
.node{background:rgba(10,18,56,.78)}
.node h3{font-size:20px;font-weight:800}
.node.n3{border-top-color:var(--o)}
/* clientes */
.arl{grid-template-columns:repeat(4,1fr)}
.lg{box-shadow:0 8px 22px rgba(20,33,93,.07)}
.lg img{max-height:44px}
.cli{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:10px}
.cli .lg{height:72px;padding:10px 14px;transition:transform .3s var(--bm-ease),box-shadow .3s}
.cli .lg:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(30,123,255,.2)}
.cli .lg img{max-height:42px}
.tt{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:10px}
.tcard{border-radius:20px;padding:18px 20px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px;margin:0}
.tcard blockquote{margin:0;font-size:14px;line-height:1.55;font-weight:500;text-wrap:pretty}
.tcard blockquote::before{content:"“";color:var(--c);font-weight:800}.tcard blockquote::after{content:"”";color:var(--c);font-weight:800}
.tcard footer{display:flex;align-items:center;gap:12px;margin-top:auto}
.tcard footer .lg2{width:58px;height:40px;border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center;flex:0 0 auto;padding:4px 6px;border:1px solid var(--line)}
.tcard footer img{max-height:30px;max-width:100%;width:auto}
.tcard footer b{display:block;font-size:13px;font-weight:800;line-height:1.2}
.tcard footer span{display:block;font-size:12px;color:var(--muted);line-height:1.3}
/* cierre */
.s-cierre h2 .gr{color:#84B7FF}
.s-cierre .vs{color:#fff}
.s-cierre .vs .d3{color:var(--o)}
.s-cierre .iso{margin-top:18px}
@media (max-width:900px){
  .s-somos .band,.s-somos .cols{grid-template-columns:1fr}
  .s-somos .stats{grid-template-columns:1fr 1fr}
  .s-metodo .steps3{grid-template-columns:1fr}
  .mos__grid{grid-template-columns:1fr 1fr}.mfam.w2{grid-column:1/-1}
  .arl{grid-template-columns:repeat(2,1fr)}.cli{grid-template-columns:repeat(3,1fr)}
  .tt{grid-template-columns:1fr}
  .pt.hi{grid-template-columns:52px 1fr}.pt.hi .iso{grid-column:1/-1;margin-left:0}
  .s-gami .acad2{grid-template-columns:1fr}
  .s-eco .center{grid-row:auto}
  .s-vitrina .stage{grid-template-columns:1fr}
}
@media (max-width:420px){ .mos__grid{grid-template-columns:1fr}.cli{grid-template-columns:repeat(2,1fr)} .s-inicio h1{font-size:34px} .mt{white-space:normal} .iso b{font-size:13px} }

html:root{--bm-accent:#1E7BFF;--bm-accent-2:#FF7A1A;--bm-glow:rgba(30,123,255,.55);--bm-stroke-1:#84B7FF;--bm-stroke-2:#FF7A1A;--bm-watermark:.14}
.mos__grid{grid-auto-flow:dense}
.bm-heat__zone{--bm-accent-2:#FF7A1A}
@media (max-width:900px){
  .s-magia .top{grid-template-columns:1fr 120px}.s-magia .goat{width:120px}.s-magia .goat img.g{width:120px}.s-magia .goat img.sp{width:30px}.s-magia .goat img.sp2{width:18px}
  .cue{display:none}
}
@media (max-width:520px){
  .s-inicio .tag{font-size:clamp(18px,5.6vw,22px)}
  .s-metodo .h2.dag{font-size:clamp(22px,6.8vw,30px);white-space:nowrap}
  .dag .sep{padding:0 .1em}
}
@media (max-width:420px){ .s-magia .top{grid-template-columns:1fr 84px}.s-magia .goat{width:84px}.s-magia .goat img.g{width:84px}.s-magia .goat img.sp{display:none}.s-magia .goat img.sp2{display:none} }

/* v2 · colores por familia (sin estilos en línea) y ajustes de la revisión */
.f0{--fc:#14215D}.f1{--fc:#1E7BFF}.f2{--fc:#0891B2}.f3{--fc:#FF7A1A}.f4{--fc:#3D5AFE}.f5{--fc:#5B6B8C}.f6{--fc:#E8650A}.f7{--fc:#1564E6}
.rel{position:relative}.mt12{margin-top:12px}
.mos__all{font:inherit;font-weight:800;font-size:14px;margin:12px auto 0;padding:10px 18px;border-radius:999px;border:1.5px solid var(--c);background:var(--card);color:var(--fg);cursor:pointer}
.mos__all[hidden]{display:none}
@media (max-width:900px){.mfam.off{display:none}.mos[data-focus] .mfam{opacity:1}}
.s-vitrina .stage{grid-template-columns:1fr auto;align-items:center}
.s-vitrina .ph2 .bm-phone{--bm-phone-w:min(240px,calc((100svh - 190px) * .4562),60vw)}
.webcard{align-self:center}
.s-vitrina .vit-grid .ph .bm-phone{--bm-phone-w:min(240px,calc((100svh - 190px) * .4562),60vw)}
.lg.tec img{filter:brightness(.62) contrast(1.35)}
.chip > span{white-space:nowrap}
@media (max-width:900px){.s-vitrina .stage{grid-template-columns:1fr}.s-vitrina .ph2 .bm-phone,.s-vitrina .vit-grid .ph .bm-phone{--bm-phone-w:min(250px,66vw)}}
.s-gami .ph .bm-phone{--bm-phone-w:min(240px,calc((100svh - 190px) * .4562),60vw)}
@media (max-width:900px){.s-gami .ph .bm-phone{--bm-phone-w:min(250px,66vw)}}

/* ====== v4 · Prevención y Riesgos: 11 tarjetas tocables y ficha (dialog modal) ====== */
.s-prev .pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}
.pcard{display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:start;padding:14px 16px;border-radius:20px;background:var(--card);border:1px solid var(--line);border-left:5px solid var(--c);text-decoration:none;color:var(--fg);box-shadow:var(--shadow);transition:transform .3s var(--bm-ease),box-shadow .3s}
.pcard:hover,.pcard:focus-visible{transform:translateY(-4px);box-shadow:0 16px 32px rgba(30,123,255,.22)}
.pcard__t{display:flex;flex-direction:column;gap:5px;min-width:0}
.pcard__t b{font-size:15.5px;line-height:1.2;font-weight:800}
.ptier{align-self:flex-start;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:3px 9px;border-radius:99px;background:var(--pill);color:var(--muted)}
.ptier.esp{background:#FFE9D6;color:#8F3F00}
html[data-theme="dark"] .ptier.esp{background:rgba(255,122,26,.2);color:#FFB27A}
.pcard__v{font-size:13.2px;line-height:1.45;color:var(--muted)}
.pcard__go{font-size:12.5px;font-weight:800;color:var(--ac)}
.pcard__go::after{content:" →"}
html.dlg-open{overflow:hidden}
dialog.ficha{border:0;padding:0;border-radius:28px;width:min(980px,calc(100% - 32px));max-height:min(88vh,780px);overflow:auto;background:var(--bg);color:var(--fg);box-shadow:0 40px 80px rgba(0,0,0,.45)}
dialog.ficha::backdrop{background:rgba(8,14,40,.62)}
.ficha__x{position:sticky;top:12px;float:right;margin:12px 12px -56px 0;z-index:5;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--fg);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.ficha__x svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.ficha__grid{display:grid;grid-template-columns:270px 1fr;gap:34px;padding:34px 36px 32px;align-items:center}
.ficha__ph{display:flex;justify-content:center}
.ficha__ph .bm-phone{--bm-phone-w:min(236px,calc((100svh - 200px) * .4562),60vw)}
.ficha__fam{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.ficha__h{font-size:clamp(26px,3.4vh + 12px,36px);line-height:1.1;font-weight:800;letter-spacing:-.02em;margin:6px 0 8px;text-wrap:balance}
.ficha__k{display:block;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ac);margin-bottom:4px}
.ficha__q{margin-top:14px;font-size:15px;line-height:1.55;color:var(--fg)}
.ficha__f{margin-top:14px}
.ficha__f ul{display:flex;flex-direction:column;gap:7px}
.ficha__f li{display:flex;gap:9px;font-size:14px;line-height:1.45}
.ficha__f li::before{content:"";flex:0 0 7px;height:7px;border-radius:50%;margin-top:7px;background:var(--c)}
.ficha__mg{margin-top:14px;padding:10px 14px;border-radius:14px;background:rgba(124,58,237,.10);border:1px solid rgba(124,58,237,.30);font-size:14px;line-height:1.45}
.ficha__mg .ficha__k{color:#7C3AED}
html[data-theme="dark"] .ficha__mg .ficha__k{color:#C9A5FF}
.ficha__nota{margin-top:12px;font-size:13px;line-height:1.5;color:var(--muted);font-style:italic}
.ficha__ver{margin-top:18px}
@media (max-width:900px){.s-prev .pgrid{grid-template-columns:1fr 1fr}}
@media (max-width:700px){
  .s-prev .pgrid{grid-template-columns:1fr}
  dialog.ficha{inset:0;margin:0;width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0}
  .ficha__grid{grid-template-columns:1fr;gap:20px;padding:64px 16px 28px}
  .ficha__ph .bm-phone{--bm-phone-w:min(190px,52vw)}
  .ficha__x{position:fixed;top:12px;right:12px;margin:0}
}

/* v4 · magIA en el celular: la cabrita va dentro del flujo, centrada y entera (sin posiciones que se salgan) */
@media (max-width:700px){
  .s-magia .top{display:flex;flex-direction:column;align-items:center;gap:6px}
  .s-magia .head{align-items:center;text-align:center}
  .s-magia .goat{position:relative;order:-1;width:170px;height:auto;margin:0 auto;display:block}
  .s-magia .goat img.g{position:static;display:block;width:150px;height:auto;margin:0 auto}
  .s-magia .goat img.sp{display:block;position:absolute;left:0;top:0;width:30px}
  .s-magia .goat img.sp2{display:block;position:absolute;right:2px;bottom:6px;width:18px}
}

/* v5 · dos modalidades (estándar y especializada) */
.mt .m2,.ptier.m2{font-style:normal}
.mt .m2{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:99px;background:var(--navy,#14215D);color:#fff;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;vertical-align:1px}
html[data-theme="dark"] .mt .m2{background:#1E7BFF}
.ptier.m2{background:#14215D;color:#fff}
html[data-theme="dark"] .ptier.m2{background:#1E7BFF}
.pcard__mod{font-size:12px;line-height:1.45;color:var(--muted)}
.pcard__mod b{color:var(--fg)}
.ficha__mg .ficha__k{text-transform:none;letter-spacing:0;font-size:12px}
.ficha__mod{margin-top:14px;padding:12px 14px;border-radius:14px;background:var(--card);border:1px solid var(--line);border-left:4px solid #E8650A;font-size:13.5px;line-height:1.5}
.ficha__mod p{margin-top:6px}
.ficha__mod b{font-weight:800}
.mod2s{margin-top:28px;padding:20px 22px;border-radius:20px;background:var(--card);border:1px solid var(--line);border-left:5px solid #E8650A}
.mod2s h3{font-size:18px;font-weight:800;letter-spacing:-.01em}
.mod2s__s{margin-top:4px;font-size:14px;color:var(--muted)}
.mod2s__g{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:14px}
.mod2c{padding:12px 14px;border-radius:14px;background:color-mix(in srgb,#1E7BFF 7%,var(--card));border:1px solid var(--line)}
.mod2c h4{font-size:15px;font-weight:800;margin:0}
.mod2c p{margin-top:6px;font-size:13px;line-height:1.5}
.mod2c b{font-weight:800}
.mod2s__p{margin-top:12px;font-size:13.5px;font-weight:700}
@media (max-width:700px){.mod2s{padding:16px}.mod2s__g{grid-template-columns:1fr}}

.qr a{display:block;background:#fff;border-radius:18px;padding:10px;width:128px}
.btn.s.tel svg{stroke:currentColor}

/* llamado a la acción en la ficha de cada módulo (Julián, 25-oct) */
.ficha__cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.ficha__cta .btn{margin-top:0 !important}
.btn.ficha__lo svg,.btn.ficha__ml svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.btn.ficha__ml svg{stroke:var(--ac)}
a.ficha__ver{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-size:14px;font-weight:700;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
a.ficha__ver svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}
@media (max-width:700px){.ficha__cta .btn{flex:1 1 100%}}
