/* Begalo · tema "marco y corte": gris carbón y rojo del logo, cortes a 45° y blanco cálido */
:root{
  --ink-950:#161616; --ink-900:#1F1F1F; --ink-800:#2A2A2A; --brand-ink:#333333; --ink-700:#3D3D3D;
  --red:#F8344A; --red-600:#E0213A; --red-700:#C41A31; --red-300:#FF6B7A; --red-50:#FEEEF0;
  --bg:#FFFFFF; --paper:#F6F4F2; --text:#262626; --muted:#5E5A57; --line:#E7E2DE;
  --on-dark:#F2EFED; --on-dark-muted:#BDB7B3;
  --f-display:"Outfit",system-ui,"Segoe UI",sans-serif;
  --f-body:"Source Sans 3",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --r:14px; --hdr:76px;
  --logo-ink:var(--brand-ink);
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--hdr) + 16px);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 1.0625rem/1.65 var(--f-body);-webkit-font-smoothing:antialiased}
img,svg{max-width:100%}
h1,h2,h3{font-family:var(--f-display);line-height:1.12;margin:0;text-wrap:balance;letter-spacing:-.015em;color:var(--brand-ink)}
p,ul,ol{margin:0}
a{color:inherit}
:focus-visible{outline:3px solid var(--red);outline-offset:3px;border-radius:6px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
.container{width:100%;max-width:1200px;margin-inline:auto;padding-inline:20px}
.narrow{max-width:760px}
.skip{position:absolute;left:-999px;top:8px;background:#fff;color:var(--text);padding:8px 14px;border-radius:8px;z-index:100}
.skip:focus{left:12px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ic{width:20px;height:20px;flex:none}
.muted{color:var(--muted)}

/* Logo y acentos */
.logo{display:block;height:40px;width:auto}
.logo .li,.mark .li{fill:var(--logo-ink)}
.logo .lf,.mark .lf{fill:var(--red)}
.flag{display:block;width:18px;height:auto;fill:var(--red)}
.flag.sm{width:12px}

/* Botones */
.btn{display:inline-flex;align-items:center;gap:8px;font:600 1rem/1 var(--f-body);text-decoration:none;padding:14px 22px;border-radius:10px;border:1.5px solid transparent;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,background .2s,border-color .2s}
.btn .ic{width:18px;height:18px}
.btn-primary{background:var(--red-600);color:#fff;box-shadow:0 10px 24px -12px rgba(224,33,58,.8)}
.btn-primary:hover{background:var(--red-700);transform:translateY(-1px)}
.btn-dark{background:var(--brand-ink);color:#fff}
.btn-dark:hover{background:var(--ink-950);transform:translateY(-1px)}
.btn-ghost{color:#fff;border-color:rgba(255,255,255,.38)}
.btn-ghost:hover{background:rgba(255,255,255,.08);border-color:#fff}
.btn-ghost-dark{color:var(--text);border-color:var(--line)}
.btn-sm{padding:10px 16px;font-size:.92rem}
.btn-wa .wa-ic{width:20px;height:20px;flex:none}

/* Header */
.site-header{position:sticky;top:0;z-index:50;--logo-ink:#fff;background:rgba(22,22,22,.88);backdrop-filter:saturate(140%) blur(12px);-webkit-backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid rgba(255,255,255,.07);padding-top:env(safe-area-inset-top,0px)}
.hdr{display:flex;align-items:center;gap:24px;height:var(--hdr)}
.brand{display:block;flex:none}
.main-nav{margin-left:auto}
.main-nav>ul{list-style:none;display:flex;align-items:center;gap:2px;padding:0}
.main-nav a,.sub-toggle{display:flex;align-items:center;gap:4px;color:var(--on-dark);text-decoration:none;font:500 .97rem var(--f-body);padding:8px 11px;border-radius:8px;background:none;border:0;cursor:pointer;white-space:nowrap}
.main-nav a:hover,.sub-toggle:hover{background:rgba(255,255,255,.07);color:#fff}
.main-nav>ul>li>a[aria-current],.has-sub.is-current>.sub-toggle{color:#fff;box-shadow:inset 0 -2px 0 var(--red);border-radius:0}
.sub-toggle .ic{width:16px;height:16px;transition:transform .2s}
.has-sub{position:relative}
.sub{list-style:none;padding:8px;position:absolute;left:-8px;top:calc(100% + 10px);min-width:340px;background:#fff;border-radius:14px;box-shadow:0 24px 48px -16px rgba(0,0,0,.45);display:none}
.sub::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.sub a{color:var(--text);padding:11px 12px;gap:12px;white-space:normal;font-weight:500;line-height:1.3}
.sub a .ic{color:var(--red-600)}
.sub a:hover,.sub a[aria-current]{background:var(--paper);color:var(--brand-ink)}
.has-sub.open .sub{display:block}
.has-sub.open .sub-toggle .ic{transform:rotate(180deg)}
@media (hover:hover) and (min-width:1101px){.has-sub:hover .sub{display:block}}
.hdr-actions{display:flex;align-items:center;gap:10px}
.lang-switch{position:relative}
.lang-switch summary{list-style:none;display:flex;align-items:center;gap:6px;cursor:pointer;color:#fff;font:600 .9rem var(--f-body);padding:8px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.2)}
.lang-switch summary::-webkit-details-marker{display:none}
.lang-switch summary .ic{width:18px;height:18px;color:var(--red-300)}
.lang-switch ul{position:absolute;right:0;top:calc(100% + 8px);list-style:none;padding:6px;background:#fff;border-radius:12px;box-shadow:0 18px 40px -12px rgba(0,0,0,.45);min-width:160px}
.lang-switch li a{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--text);padding:9px 12px;border-radius:8px;font-size:.95rem}
.lang-switch li a b{font:700 .78rem var(--f-display);color:var(--red-700);width:22px}
.lang-switch li a:hover,.lang-switch li a[aria-current]{background:var(--paper)}
.lang-switch li a[aria-current]{font-weight:600}
.wa-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px 0 12px;border-radius:10px;color:#fff;text-decoration:none;font:600 .92rem var(--f-body);background:rgba(37,211,102,.12);border:1px solid rgba(37,211,102,.5);transition:background .2s,border-color .2s,transform .15s}
.wa-btn .wa-ic{width:20px;height:20px;flex:none;color:#25D366;transition:color .2s}
.wa-btn:hover{background:#25D366;border-color:#25D366;transform:translateY(-1px)}
.wa-btn:hover .wa-ic{color:#fff}
@media (max-width:1280px){.wa-btn{width:40px;padding:0}.wa-btn span{display:none}}
.nav-toggle{display:none;background:none;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:8px;padding:8px;cursor:pointer}
.nav-toggle .ic{width:22px;height:22px}
@media (max-width:1100px){
  .nav-toggle{display:inline-flex}
  .main-nav{position:absolute;left:0;right:0;top:100%;background:var(--ink-950);border-bottom:1px solid rgba(255,255,255,.08);display:none;margin:0;max-height:calc(100dvh - var(--hdr));overflow:auto}
  .main-nav.open{display:block}
  .main-nav>ul{flex-direction:column;align-items:stretch;padding:8px 20px 18px}
  .main-nav a,.sub-toggle{width:100%;padding:13px 4px;font-size:1.05rem;border-bottom:1px solid rgba(255,255,255,.07);border-radius:0}
  .main-nav>ul>li>a[aria-current],.has-sub.is-current>.sub-toggle{box-shadow:inset 3px 0 0 var(--red);padding-left:12px}
  .sub-toggle{justify-content:space-between}
  .sub{position:static;display:none;min-width:0;background:transparent;box-shadow:none;padding:4px 0 8px 8px}
  .sub a{color:var(--on-dark-muted);font-size:1rem;border-bottom:0;padding:10px 4px}
  .sub a:hover,.sub a[aria-current]{background:transparent;color:#fff}
  .sub a .ic{color:var(--red-300)}
  .hdr-actions{margin-left:auto}
}
@media (max-width:560px){.logo{height:34px}.hdr{gap:12px}}

/* Hero */
.hero{position:relative;background:radial-gradient(900px 520px at 85% 10%,rgba(248,52,74,.16) 0%,transparent 60%),radial-gradient(900px 600px at 0% 100%,#2E2E2E 0%,transparent 65%),var(--ink-900);color:var(--on-dark);overflow:hidden;margin-top:calc(-1 * var(--hdr));padding-top:calc(var(--hdr) + 72px);padding-bottom:140px}
.hero::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(-45deg,rgba(255,255,255,.028) 0 1px,transparent 1px 28px);pointer-events:none}
.hero h1{font-size:clamp(2.3rem,5.2vw,4rem);font-weight:700;color:#fff;margin-top:16px}
.hero .accent{color:var(--red)}
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px;align-items:center}
.hero-lead{font-size:clamp(1.08rem,1.6vw,1.25rem);color:var(--on-dark-muted);margin-top:20px;max-width:58ch}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.eyebrow{font:600 .8rem/1.2 var(--f-display);letter-spacing:.12em;text-transform:uppercase;color:var(--red-700)}
.eyebrow.on-dark{color:var(--red-300)}
.hero-cut{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:70px;display:block}
@media (max-width:640px){.hero-cut{height:40px}}

/* Visual del hero: el símbolo del logo con las ideas clave */
.hero-visual{position:relative;aspect-ratio:1;max-width:440px;width:100%;margin-inline:auto;--logo-ink:#fff}
.hv-mark{position:absolute;inset:14%;width:72%;height:72%;filter:drop-shadow(0 30px 60px rgba(0,0,0,.45))}
.hv-mark .li{fill:#fff}
.hv-stripe{position:absolute;left:50%;top:50%;width:150%;height:56px;background:linear-gradient(90deg,transparent,rgba(248,52,74,.55) 30%,rgba(248,52,74,.55) 70%,transparent);transform:translate(-50%,-50%) rotate(-45deg);filter:blur(1px)}
.hv-chip{position:absolute;font:600 .9rem var(--f-body);color:#fff;padding:8px 14px;border-radius:999px;background:rgba(31,31,31,.85);border:1px solid rgba(255,255,255,.18);box-shadow:0 10px 30px -10px rgba(0,0,0,.6);white-space:nowrap;animation:float 6s ease-in-out infinite}
.hv-chip::before{content:"";display:inline-block;width:7px;height:7px;border-radius:2px;background:var(--red);margin-right:8px;vertical-align:1px}
.hv-chip-1{left:-2%;top:12%}
.hv-chip-2{right:-4%;top:30%;animation-delay:-1.5s}
.hv-chip-3{left:2%;bottom:20%;animation-delay:-3s}
.hv-chip-4{right:0;bottom:4%;animation-delay:-4.5s}
@keyframes float{50%{transform:translateY(-6px)}}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-visual{max-width:360px}}
@media (max-width:420px){.hv-chip{font-size:.8rem;padding:6px 11px}}

/* Hero interior */
.hero-sm{padding-top:calc(var(--hdr) + 40px);padding-bottom:120px}
.svc-hero{display:flex;gap:24px;align-items:flex-start;margin-top:22px;position:relative}
.svc-hero h1{font-size:clamp(2rem,4.4vw,3.2rem);margin-top:10px;max-width:22ch}
.svc-hero .eyebrow{margin-top:4px}
@media (max-width:640px){.svc-hero{flex-direction:column;gap:16px}}
.crumbs{position:relative}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;font-size:.92rem;color:var(--on-dark-muted)}
.crumbs li+li::before{content:"/";margin-right:6px;opacity:.5}
.crumbs a{text-decoration:none;color:var(--on-dark)}
.crumbs a:hover{color:var(--red-300)}

/* Secciones */
.sec{padding-block:96px}
.sec-tight{padding-block:64px;border-top:1px solid var(--line)}
.sec-paper{background:var(--paper)}
.sec-paper+.sec-tight{border-top:0}
.sec-dark{background:radial-gradient(800px 480px at 100% 0%,rgba(248,52,74,.14) 0%,transparent 60%),var(--ink-900);color:var(--on-dark)}
.sec-dark h2,.sec-dark h3{color:#fff}
.sec-head{max-width:740px;margin-bottom:48px}
.sec-head .flag{margin-bottom:14px}
.sec-head h2,.sec-dark h2{font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:700;margin-top:12px}
.lead{color:var(--muted);font-size:1.13rem;margin-top:14px;max-width:62ch}
.lead.on-dark{color:var(--on-dark-muted)}
.h-sm{font-size:1.45rem;margin-bottom:20px}
.h-xs{font-size:1.05rem;margin:22px 0 12px}
.h-gap{margin-top:44px}
.sec-more{margin-top:32px}
.sec-more a{display:inline-flex;align-items:center;gap:8px;color:var(--red-700);font-weight:600;text-decoration:none}
.sec-more a:hover{text-decoration:underline}
.sec-more .ic{width:18px;height:18px}
.prose p+p{margin-top:16px}
.prose p{color:var(--muted);font-size:1.08rem}
@media (max-width:640px){.sec{padding-block:68px}}

/* Esencia */
.essence{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.essence .sec-head{margin-bottom:0}
.pillars{list-style:none;padding:0;display:grid;gap:14px}
.pillars li{display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:16px;padding:22px 24px;border:1px solid var(--line);border-radius:var(--r);background:#fff;position:relative;overflow:hidden}
.pillars li::after{content:"";position:absolute;right:-18px;top:-18px;width:36px;height:36px;background:var(--red);transform:rotate(45deg)}
.pillar-n{grid-row:span 2;font:700 1.6rem/1 var(--f-display);color:var(--red-600)}
.pillars h3{font-size:1.2rem}
.pillars p{color:var(--muted);margin-top:4px}
@media (max-width:900px){.essence{grid-template-columns:1fr;gap:36px}}

/* Soluciones */
.svc-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}
.svc-card{grid-column:span 2;position:relative;display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:28px;text-decoration:none;transition:transform .2s ease,border-color .2s,box-shadow .2s}
.svc-card:nth-child(4),.svc-card:nth-child(5){grid-column:span 3}
.svc-card:hover{transform:translateY(-3px);border-color:#F3A9B2;box-shadow:0 22px 40px -26px rgba(196,26,49,.45)}
.svc-card h3{font-size:1.32rem}
.svc-card p{color:var(--muted)}
.svc-card .more{margin-top:auto;padding-top:10px;display:inline-flex;align-items:center;gap:6px;color:var(--red-700);font-weight:600;font-size:.97rem}
.svc-card .more .ic{width:16px;height:16px;transition:transform .2s}
.svc-card:hover .more .ic{transform:translateX(3px)}
.svc-ic{display:grid;place-items:center;width:50px;height:50px;border-radius:12px;background:var(--brand-ink);color:#fff;position:relative;overflow:hidden;flex:none}
.svc-ic::after{content:"";position:absolute;right:-9px;top:-9px;width:18px;height:18px;background:var(--red);transform:rotate(45deg)}
.svc-ic .ic{width:24px;height:24px}
.svc-ic.big{width:76px;height:76px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18)}
.svc-ic.big::after{width:26px;height:26px;right:-13px;top:-13px}
.svc-ic.big .ic{width:36px;height:36px}
.svc-feature{background:linear-gradient(160deg,var(--ink-900),var(--ink-700));border-color:transparent;color:#fff}
.svc-feature h3{color:#fff}
.svc-feature p{color:var(--on-dark-muted)}
.svc-feature .more{color:var(--red-300)}
.svc-feature .svc-ic{background:rgba(255,255,255,.08)}
@media (max-width:960px){.svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.svc-card,.svc-card:nth-child(4),.svc-card:nth-child(5){grid-column:span 1}.svc-feature{grid-column:span 2!important}}
@media (max-width:600px){.svc-grid{grid-template-columns:1fr}.svc-feature{grid-column:span 1!important}}

/* Sectores (inicio) */
.sectors{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.sector-card{position:relative;padding:36px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);overflow:hidden}
.sector-card::before{content:"";position:absolute;right:-60px;top:-60px;width:120px;height:120px;background:var(--red);transform:rotate(45deg)}
.sector-card h3{font-size:1.7rem;margin-top:18px}
.sector-card p{color:var(--on-dark-muted);margin-top:10px}
.sector-card .btn{margin-top:26px}
.sector-card .svc-ic{background:rgba(255,255,255,.08)}
.sector-card .svc-ic::after{display:none}
.codes{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.codes a{display:block;font:600 .92rem var(--f-display);letter-spacing:.02em;padding:7px 12px;border-radius:8px;text-decoration:none;color:#fff;border:1px solid rgba(255,255,255,.25)}
.codes a:hover{border-color:var(--red);background:rgba(248,52,74,.15)}
.codes-light a{color:var(--brand-ink);border-color:var(--line);background:#fff}
.codes-light a:hover{border-color:var(--red-600);background:var(--red-50)}
@media (max-width:900px){.sectors{grid-template-columns:1fr;gap:32px}}

/* Pasos */
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;position:relative}
.steps-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.steps::before{content:"";position:absolute;top:23px;left:23px;right:23px;height:2px;background:linear-gradient(90deg,var(--red),var(--brand-ink) 60%,transparent)}
.steps li{position:relative;display:flex;flex-direction:column;gap:8px}
.step-n{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--brand-ink);color:#fff;font:700 1rem var(--f-display);position:relative;border:3px solid var(--bg);box-shadow:0 0 0 1px var(--line)}
.sec-paper .step-n{border-color:var(--paper)}
.steps li:first-child .step-n{background:var(--red-600)}
.steps h3{font-size:1.2rem;margin-top:8px}
.steps p{color:var(--muted);font-size:.99rem}
@media (max-width:960px){.steps,.steps-5{grid-template-columns:1fr;gap:26px}.steps::before{top:23px;bottom:23px;left:23px;right:auto;width:2px;height:auto;background:linear-gradient(180deg,var(--red),var(--brand-ink))}.steps li{display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:18px}.steps li h3{margin-top:10px}.steps li p{grid-column:2}}

/* Experiencia */
.exp{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:56px;align-items:center}
.exp .sec-head{margin-bottom:28px}
.facts{list-style:none;padding:0;display:grid;gap:14px}
.facts li{display:flex;flex-direction:column-reverse;padding:22px 26px;border-radius:var(--r);background:#fff;border:1px solid var(--line);border-left:4px solid var(--red)}
.facts b{font:700 2.6rem/1 var(--f-display);color:var(--brand-ink)}
.fact-t{color:var(--muted);margin-top:6px}
@media (max-width:900px){.exp{grid-template-columns:1fr;gap:36px}}

/* Alianzas */
.ally-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ally{display:flex;flex-direction:column;gap:14px;padding:32px;border:1px solid var(--line);border-radius:18px;background:#fff}
.ally-lg{padding:40px}
.ally-brand{min-height:52px;display:flex;align-items:center}
.ally-name{font:800 1.9rem/1 var(--f-display);color:var(--brand-ink);letter-spacing:.02em}
.ally p{color:var(--muted)}
.ally .chips{margin-top:2px}
.ally-link{margin-top:auto;display:inline-flex;align-items:center;gap:8px;color:var(--red-700);font-weight:600;text-decoration:none}
.ally-link .ic{width:17px;height:17px}
.ally-link:hover{text-decoration:underline}
@media (max-width:760px){.ally-grid{grid-template-columns:1fr}}
.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0}
.chips li{font-size:.88rem;font-weight:500;padding:5px 12px;border-radius:999px;background:var(--paper);color:var(--text)}

/* Páginas de solución */
.two{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:48px;align-items:start}
@media (max-width:900px){.two{grid-template-columns:1fr;gap:32px}}
.checks{list-style:none;padding:0;display:grid;gap:14px}
.checks li{display:flex;gap:14px;align-items:flex-start;font-size:1.06rem}
.ic-check{width:28px;height:28px;padding:5px;border-radius:8px;background:var(--red-600);color:#fff;stroke-width:2.6}
.aside-box{padding:28px;border-radius:var(--r);background:var(--paper);border:1px solid var(--line)}
.aside-box p{color:var(--muted)}
.dots{list-style:none;padding:0;display:grid;gap:10px}
.dots li{padding-left:22px;position:relative}
.dots li::before{content:"";position:absolute;left:0;top:.6em;width:9px;height:9px;background:var(--red);transform:rotate(45deg);border-radius:1px}
.feat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.feat{border:1px solid var(--line);border-radius:var(--r);padding:26px;background:#fff}
.feat h3{font-size:1.18rem;margin-top:14px}
.feat p{color:var(--muted);margin-top:6px}
.feat-grid.n4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1100px){.feat-grid.n4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.feat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.feat-grid,.feat-grid.n4{grid-template-columns:1fr}}
.notice{display:flex;gap:14px;align-items:flex-start;padding:18px 20px;border-radius:12px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--brand-ink);color:var(--muted);margin-top:28px}
.notice:first-child{margin-top:0}
.notice .ic{color:var(--brand-ink);margin-top:2px}
.featured-std{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 40px;align-items:center;padding:36px;border-radius:18px;background:linear-gradient(135deg,var(--ink-900),var(--ink-700));color:var(--on-dark);margin-top:28px;position:relative;overflow:hidden}
.featured-std::after{content:"";position:absolute;right:-50px;bottom:-50px;width:100px;height:100px;background:var(--red);transform:rotate(45deg)}
.featured-std:first-child{margin-top:0}
.featured-std h2{color:#fff;font-size:clamp(1.4rem,2.6vw,1.9rem);margin-top:10px}
.featured-std p{color:var(--on-dark-muted);margin-top:10px;max-width:62ch}
.featured-std .cta-row{margin-top:0;position:relative;z-index:1}
@media (max-width:760px){.featured-std{grid-template-columns:1fr;padding:26px}}
.std-code{font-family:var(--f-display);font-weight:700;color:var(--red-600);letter-spacing:.01em}
.featured-std .std-code,.hero .std-code{color:var(--red-300)}
.std-code.big{display:block;font-size:.55em;margin-bottom:6px}
.is-pending{font-style:italic;opacity:.75}
.paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.path-card{display:flex;flex-direction:column;gap:10px;padding:30px;border:1px solid var(--line);border-radius:18px;background:#fff}
.path-card h3{font-size:1.35rem;margin-top:6px}
.path-card p{color:var(--muted)}
.path-card .cta-row{margin-top:auto;padding-top:14px}
@media (max-width:760px){.paths{grid-template-columns:1fr}}
.iso{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.iso li{display:flex;flex-direction:column;gap:4px;padding:28px;border-radius:var(--r);background:var(--brand-ink);color:var(--on-dark-muted)}
.iso b{font:700 1.8rem var(--f-display);color:#fff}
@media (max-width:640px){.iso{grid-template-columns:1fr}}
.tiles{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.tiles li{display:flex;flex-direction:column;gap:12px;padding:22px;border-radius:var(--r);background:#fff;border:1px solid var(--line);font:600 1.08rem var(--f-display);color:var(--brand-ink)}
@media (max-width:900px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
.related{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.related a{display:flex;gap:10px;align-items:center;text-decoration:none;border:1px solid var(--line);border-radius:10px;padding:10px 16px 10px 12px;font-weight:600}
.related a .ic{color:var(--red-600)}
.related a:hover{border-color:var(--red-600)}

/* Catálogo CONOCER */
.cat-tools{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.cat-search{position:relative;flex:1 1 280px;max-width:420px}
.cat-search .ic{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--muted)}
.cat-search input{width:100%;font:inherit;padding:13px 16px 13px 44px;border:1.5px solid var(--line);border-radius:10px;background:#fff;color:var(--text)}
.cat-search input:focus{outline:none;border-color:var(--brand-ink)}
.cat-filters{display:flex;flex-wrap:wrap;gap:8px}
.cat-filters button{font:600 .9rem var(--f-body);padding:9px 13px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--text);cursor:pointer}
.cat-filters button span{font-weight:500;color:var(--muted);margin-left:2px}
.cat-filters button[aria-pressed="true"]{background:var(--brand-ink);border-color:var(--brand-ink);color:#fff}
.cat-filters button[aria-pressed="true"] span{color:var(--on-dark-muted)}
.cat-count{margin:22px 0 14px;color:var(--muted)}
.cat-count b{color:var(--brand-ink)}
.cat-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cat-list li[hidden]{display:none}
.cat-list a{height:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"code ic" "name name" "cat cat";gap:8px;padding:22px;border-radius:var(--r);background:#fff;border:1px solid var(--line);text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s}
.cat-list a:hover{border-color:#F3A9B2;transform:translateY(-2px);box-shadow:0 18px 34px -24px rgba(196,26,49,.45)}
.cat-list .std-code{grid-area:code;font-size:1.15rem}
.cat-list .std-name{grid-area:name;font-weight:600;line-height:1.35;color:var(--brand-ink)}
.cat-list .std-cat{grid-area:cat;font-size:.86rem;color:var(--muted)}
.cat-list .ic{grid-area:ic;width:18px;height:18px;color:var(--red-600)}
.cat-list .is-featured a{border-color:var(--red-600);box-shadow:inset 4px 0 0 var(--red)}
.cat-empty{padding:28px;border:1.5px dashed var(--line);border-radius:var(--r);color:var(--muted);text-align:center}
@media (max-width:960px){.cat-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){
  .cat-filters{flex-wrap:nowrap;overflow-x:auto;margin-inline:-20px;padding:0 20px 4px;scrollbar-width:none}
  .cat-filters button{flex:none}
  .cat-list{grid-template-columns:1fr;gap:0;border:1px solid var(--line);border-radius:var(--r);background:#fff;overflow:hidden}
  .cat-list li+li a{border-top:1px solid var(--line)}
  .cat-list a{border:0;border-radius:0;padding:14px 16px;grid-template-columns:96px minmax(0,1fr) auto;grid-template-areas:"code name ic" "code cat ic";gap:2px 12px;align-items:center}
  .cat-list a:hover{transform:none;box-shadow:none;background:var(--paper)}
  .cat-list .std-code{font-size:1rem}
  .cat-list .std-name{font-size:.96rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .cat-list .is-featured a{box-shadow:inset 3px 0 0 var(--red)}
}

/* Estándares del sector */
.std-cards{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:40px}
.std-cards a{height:100%;display:flex;flex-direction:column;gap:10px;padding:26px;border-radius:var(--r);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.14);text-decoration:none;transition:border-color .2s,background .2s}
.std-cards a:hover{border-color:var(--red);background:rgba(248,52,74,.08)}
.std-cards .std-code{font-size:1.6rem;color:var(--red-300)}
.std-cards .std-name{color:var(--on-dark)}
.std-cards .more{margin-top:auto;display:inline-flex;gap:6px;align-items:center;font-weight:600;color:#fff}
.std-cards .more .ic{width:16px;height:16px}
@media (max-width:860px){.std-cards{grid-template-columns:1fr}}

/* Contacto */
.contact{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:48px;align-items:start}
@media (max-width:900px){.contact{grid-template-columns:1fr}}
.channels ul{list-style:none;padding:0;display:grid;gap:12px}
.channel{display:flex;gap:14px;align-items:center;padding:18px;border-radius:var(--r);border:1px solid var(--line);text-decoration:none;background:#fff}
a.channel:hover{border-color:var(--brand-ink)}
.channel .ic,.channel .wa-ic{width:26px;height:26px;color:var(--red-600);flex:none}
.channel-wa .wa-ic{color:#25D366}
.channel b{display:block;color:var(--brand-ink)}
.channel small{display:block;color:var(--muted);font-size:.92rem}
.form{padding:34px;border-radius:18px;background:var(--paper);border:1px solid var(--line)}
@media (max-width:560px){.form{padding:22px}}
.f-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.f-full{grid-column:1/-1}
@media (max-width:640px){.f-grid{grid-template-columns:1fr}}
.f{display:block;font-weight:600;font-size:.96rem;color:var(--brand-ink)}
.f small{font-weight:400;color:var(--muted)}
.f input,.f select,.f textarea{display:block;margin-top:6px;font:400 1rem var(--f-body);color:var(--text);padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;background:#fff;width:100%}
.f textarea{resize:vertical;min-height:130px}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--brand-ink);box-shadow:0 0 0 3px rgba(51,51,51,.12)}
.f .invalid,.f-check .invalid{border-color:var(--red-600)}
.f-check{display:flex;gap:10px;align-items:flex-start;margin-top:18px;font-size:.96rem}
.f-check input{width:18px;height:18px;margin-top:3px;accent-color:var(--red-600)}
.f-check input.invalid{outline:2px solid var(--red-600);outline-offset:2px}
.f-check a{color:var(--red-700)}
.f-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:22px}
.f-status{font-weight:600}
.f-status.ok{color:#1E7A43}
.f-status.err{color:var(--red-700)}
.hp{position:absolute;left:-9999px;opacity:0}

/* Banda de cierre */
.cta-band{background:var(--red-600);color:#fff;padding-block:60px;position:relative;overflow:hidden}
.cta-band::before{content:"";position:absolute;right:-80px;top:-80px;width:220px;height:220px;background:rgba(255,255,255,.08);transform:rotate(45deg)}
.cta-inner{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}
.cta-inner h2{font-size:clamp(1.6rem,3vw,2.2rem);color:#fff}
.cta-inner p{opacity:.92;margin-top:8px;max-width:60ch}
.cta-inner .cta-row{margin-top:0}
.cta-band .btn-primary{background:#fff;color:var(--brand-ink);box-shadow:none}
.cta-band .btn-primary:hover{background:var(--paper)}
.cta-band .btn-ghost{border-color:rgba(255,255,255,.6)}

/* Legal y 404 */
.legal h1{font-size:clamp(2rem,4vw,2.8rem)}
.legal h2{font-size:1.3rem;margin-top:36px}
.legal p{margin-top:10px}
.pending{margin-top:24px;padding:14px 18px;border-radius:10px;background:#FFF7E6;color:#8A5300;border:1px solid #F5D9A3}
.nf-code{font:800 6rem/1 var(--f-display);color:var(--red-600);margin-top:12px}
.nf h1{font-size:2rem;margin-top:8px}

/* Footer */
.site-footer{--logo-ink:#fff;background:var(--ink-950);color:var(--on-dark-muted);padding-top:72px}
.ftr{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:40px}
.ftr .logo{height:44px}
.ftr-brand p{margin-top:16px;font-size:.97rem;max-width:36ch}
.ftr h2{font:600 .8rem var(--f-display);text-transform:uppercase;letter-spacing:.12em;color:#fff;margin-bottom:14px}
.ftr ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px}
.ftr a{text-decoration:none;font-size:.97rem}
.ftr a:hover{color:#fff}
.ftr-contact{margin-top:18px}
.ftr-contact li{display:flex;gap:10px;align-items:center}
.ftr-contact .ic,.ftr-contact .wa-ic{width:18px;height:18px;color:var(--red-300);flex:none}
.ftr-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid rgba(255,255,255,.08);margin-top:56px;padding-block:24px;font-size:.9rem}
@media (max-width:860px){.ftr{grid-template-columns:1fr 1fr}.ftr-brand{grid-column:1/-1}}
@media (max-width:480px){.ftr{grid-template-columns:1fr}}

/* Aviso de idioma sugerido */
.lang-banner{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;max-width:520px;margin-inline:auto;display:flex;align-items:center;gap:14px;background:#fff;color:var(--text);border-radius:14px;padding:12px 12px 12px 18px;box-shadow:0 20px 50px -15px rgba(0,0,0,.5)}
.lang-banner[hidden]{display:none}
.lang-banner p{flex:1;font-size:.95rem;min-width:0}
.lb-close{background:none;border:0;font-size:1.5rem;line-height:1;color:var(--muted);cursor:pointer;padding:4px 8px}

/* Tarjeta de GALABIT: usa su propia identidad (azul marino, degradado azul→cian y "bits"), solo en esta tarjeta */
.ally-galabit{--gb-navy-900:#071330;--gb-navy-700:#13306B;--gb-blue:#1663E0;--gb-cyan:#38B8F0;position:relative;overflow:hidden;background:radial-gradient(420px 260px at 100% 0%,rgba(56,184,240,.18),transparent 60%),linear-gradient(160deg,var(--gb-navy-900),var(--gb-navy-700));border-color:transparent;color:#E8EEFA}
.ally-galabit::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--gb-blue),var(--gb-cyan))}
.ally-galabit p{color:#A9B8D6}
.ally-galabit .chips li{background:rgba(255,255,255,.06);color:#E8EEFA;border:1px solid rgba(56,184,240,.25)}
.ally-galabit .ally-link{color:var(--gb-cyan)}
.ally-galabit :focus-visible{outline-color:var(--gb-cyan)}
.gb-logo{display:block;height:46px;width:auto;overflow:visible}
.gb-logo text{font:800 44px "Exo 2",var(--f-display);letter-spacing:.02em}
.gb-gala{fill:#fff}
