/* =========================================================
   niblok · Páginas públicas
   Tipografía del proyecto: Archivo
   Lenguaje visual alineado con los BP del panel
   ========================================================= */
html,body{min-height:100%}
body{margin:0;background:#020609;color:#edfaff}
.public-section-page,.public-section-page *{box-sizing:border-box}
.public-section-page a{text-decoration:none}

.public-section-page{
  --page-accent:#39c1ff;
  --page-accent-rgb:57,193,255;
  min-height:100vh;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 2%,rgba(var(--page-accent-rgb),.13),transparent 30rem),
    radial-gradient(circle at 90% 32%,rgba(229,57,53,.09),transparent 32rem),
    linear-gradient(180deg,#020609,#03090d 48%,#020609);
  color:#edfaff;
  font-family:var(--font-body,"Archivo",system-ui,-apple-system,"Segoe UI",sans-serif);
}
.public-section-page--violet{--page-accent:#9b8cff;--page-accent-rgb:155,140,255}
.public-section-page--amber{--page-accent:#ffd166;--page-accent-rgb:255,209,102}
.public-section-page--red{--page-accent:#ff4d5e;--page-accent-rgb:255,77,94}
.public-section-page :is(h1,h2,h3,strong,.public-section-btn,.public-section-eyebrow,.public-section-card-number,.public-section-trend){font-family:var(--font-display,"Archivo",system-ui,-apple-system,"Segoe UI",sans-serif)}
.public-section-container{max-width:1380px}

/* Hero */
.public-section-hero{position:relative;padding:clamp(3.6rem,7vw,6.8rem) 0 clamp(3rem,6vw,5rem);border-bottom:1px solid rgba(var(--page-accent-rgb),.20)}
.public-section-orbit{position:absolute;border:1px solid rgba(var(--page-accent-rgb),.18);border-radius:50%;pointer-events:none;animation:publicOrbit 18s linear infinite}
.public-section-orbit:before{content:"";position:absolute;inset:16%;border:1px dashed rgba(255,255,255,.06);border-radius:inherit}
.public-section-orbit--one{width:460px;height:460px;right:-150px;top:-220px}
.public-section-orbit--two{width:270px;height:270px;left:-110px;bottom:-165px;animation-direction:reverse;animation-duration:14s}
@keyframes publicOrbit{to{transform:rotate(360deg)}}
.public-section-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(460px,.95fr);gap:clamp(2rem,5vw,5rem);align-items:center;position:relative;z-index:1}
.public-section-back{display:inline-flex;align-items:center;gap:.45rem;color:rgba(237,250,255,.58);font-size:.77rem;font-weight:600;margin-bottom:1.15rem}
.public-section-back:hover{color:var(--page-accent)}
.public-section-eyebrow,.public-section-heading>span,.public-section-cta-card>div>span{display:block;color:var(--page-accent);font-size:.69rem;font-weight:800;letter-spacing:.145em;text-transform:uppercase}
.public-section-copy h1{max-width:14ch;margin:.65rem 0 1rem;font-size:clamp(2.35rem,5.25vw,4.75rem);line-height:1.01;letter-spacing:-.042em;font-weight:800;color:#fff}
.public-section-copy>p{max-width:60ch;margin:0;color:rgba(228,247,252,.68);font-size:clamp(.98rem,1.6vw,1.12rem);line-height:1.68;font-weight:500}
.public-section-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.65rem}
.public-section-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;padding:.62rem 1rem;border:1px solid rgba(var(--page-accent-rgb),.34);border-radius:999px;color:#ebfcff;background:rgba(255,255,255,.035);font-weight:700;font-size:.78rem;letter-spacing:.035em;transition:.18s ease}
.public-section-btn:hover{color:#fff;border-color:var(--page-accent);transform:translateY(-2px);box-shadow:0 12px 28px rgba(var(--page-accent-rgb),.16)}
.public-section-btn--primary{background:linear-gradient(135deg,rgba(var(--page-accent-rgb),.30),rgba(var(--page-accent-rgb),.10));border-color:rgba(var(--page-accent-rgb),.72)}

/* Cockpit visual */
.public-section-summary{position:relative;padding:1rem;border:1px solid rgba(var(--page-accent-rgb),.30);border-radius:22px;background:linear-gradient(145deg,rgba(var(--page-accent-rgb),.09),rgba(3,9,13,.94) 42%,rgba(0,0,0,.94));box-shadow:0 28px 80px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.035);backdrop-filter:blur(16px);overflow:hidden}
.public-section-summary:before{content:"";position:absolute;width:220px;height:220px;right:-100px;top:-120px;border-radius:50%;background:rgba(var(--page-accent-rgb),.13);filter:blur(46px);pointer-events:none}
.public-section-summary:after{content:"";position:absolute;inset:9px;border:1px solid rgba(255,255,255,.04);border-radius:15px;pointer-events:none}
.public-section-summary-head{display:flex;align-items:center;gap:.72rem;position:relative;z-index:1;padding:.1rem .12rem .82rem;border-bottom:1px solid rgba(var(--page-accent-rgb),.13)}
.public-section-summary-head>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:rgba(var(--page-accent-rgb),.13);color:var(--page-accent);font-size:1.1rem}
.public-section-summary-head>div{min-width:0;flex:1}
.public-section-summary-head small{display:block;color:rgba(230,249,255,.48);font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}
.public-section-summary-head strong{display:block;margin-top:.1rem;color:#fff;font-size:.9rem;font-weight:700;overflow-wrap:anywhere}
.public-section-summary-head em{font-style:normal;white-space:nowrap;padding:.28rem .5rem;border:1px solid rgba(var(--page-accent-rgb),.24);border-radius:999px;color:var(--page-accent);background:rgba(var(--page-accent-rgb),.07);font:700 .58rem/1 var(--font-display,"Archivo",sans-serif);letter-spacing:.07em;text-transform:uppercase}
.public-section-cockpit{position:relative;z-index:1;margin-top:.78rem;padding:.75rem .75rem .2rem;border:1px solid rgba(57,193,255,.14);border-radius:16px;background:radial-gradient(circle at 75% 0%,rgba(57,193,255,.10),transparent 45%),rgba(0,0,0,.22)}
.public-section-cockpit-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.public-section-cockpit-head span{display:block;color:rgba(230,249,255,.50);font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.public-section-cockpit-head strong{display:block;margin-top:.18rem;color:#fff;font-size:1.75rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}
.public-section-trend{display:inline-flex;align-items:center;gap:.3rem;padding:.32rem .5rem;border-radius:999px;color:#78f0ad;background:rgba(48,209,128,.08);border:1px solid rgba(48,209,128,.20);font-size:.65rem;font-weight:700}
.public-section-chart-wrap{height:218px;margin-top:.25rem;position:relative}.public-section-chart-wrap canvas{width:100%!important;height:100%!important}
.public-section-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;margin-top:.65rem;position:relative;z-index:1}
.public-section-metric{min-width:0;padding:.62rem;border:1px solid rgba(255,255,255,.065);border-radius:11px;background:rgba(255,255,255,.025)}
.public-section-metric strong{display:block;color:#fff;font-size:.93rem;font-weight:700;line-height:1.1;overflow-wrap:anywhere}.public-section-metric span{display:block;margin-top:.16rem;color:rgba(230,249,255,.48);font-size:.58rem;line-height:1.3}
.public-section-summary-note{position:relative;z-index:1;margin:.72rem .08rem .04rem;color:rgba(230,249,255,.52);font-size:.66rem;line-height:1.5}

/* Secciones */
.public-section-block{padding:clamp(3.5rem,6vw,5.8rem) 0}
.public-section-block--soft{background:linear-gradient(180deg,rgba(var(--page-accent-rgb),.032),rgba(0,0,0,.16));border-block:1px solid rgba(var(--page-accent-rgb),.10)}
.public-section-heading{text-align:center;max-width:760px;margin:0 auto 2rem}.public-section-heading--left{text-align:left;margin:0}
.public-section-heading h2{margin:.52rem 0 .72rem;font-size:clamp(1.8rem,3.3vw,2.85rem);line-height:1.08;letter-spacing:-.025em;color:#fff;font-weight:800}
.public-section-heading p{margin:0;color:rgba(228,247,252,.58);line-height:1.62;font-weight:500}
.public-section-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}
.public-section-card{position:relative;min-width:0;padding:1.12rem;border:1px solid rgba(var(--page-accent-rgb),.16);border-radius:18px;background:linear-gradient(145deg,rgba(var(--page-accent-rgb),.045),rgba(5,10,14,.92) 48%);overflow:hidden;transition:.18s ease;box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}
.public-section-card:hover{transform:translateY(-4px);border-color:rgba(var(--page-accent-rgb),.42);box-shadow:0 20px 44px rgba(0,0,0,.27)}
.public-section-card-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:rgba(var(--page-accent-rgb),.12);color:var(--page-accent);font-size:1.05rem}
.public-section-card-number{position:absolute;right:1rem;top:1rem;color:rgba(255,255,255,.12);font-weight:800;font-size:1.25rem}
.public-section-card h3{margin:.95rem 0 .45rem;color:#fff;font-size:.96rem;font-weight:700}.public-section-card p{margin:0;color:rgba(229,248,252,.55);font-size:.76rem;line-height:1.58;font-weight:500}
.public-section-card ul{list-style:none;margin:.78rem 0 0;padding:0;display:grid;gap:.35rem}.public-section-card li{position:relative;padding-left:.85rem;color:rgba(235,251,255,.72);font-size:.71rem;font-weight:600}.public-section-card li:before{content:"";position:absolute;left:0;top:.48em;width:5px;height:5px;border-radius:50%;background:var(--page-accent);box-shadow:0 0 8px rgba(var(--page-accent-rgb),.6)}
.public-section-process{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,6vw,6rem);align-items:start}
.public-section-process-list{display:grid;gap:.65rem}.public-section-process-step{display:grid;grid-template-columns:42px minmax(0,1fr);gap:.8rem;align-items:start;padding:.85rem;border:1px solid rgba(var(--page-accent-rgb),.14);border-radius:15px;background:rgba(255,255,255,.022)}
.public-section-process-step>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:rgba(var(--page-accent-rgb),.12);color:var(--page-accent);font:800 .8rem/1 var(--font-display,"Archivo",sans-serif)}.public-section-process-step h3{margin:.08rem 0 .25rem;color:#fff;font-size:.88rem;font-weight:700}.public-section-process-step p{margin:0;color:rgba(229,248,252,.53);font-size:.73rem;line-height:1.52;font-weight:500}
.public-section-cta{padding:clamp(3rem,5vw,4.6rem) 0}.public-section-cta-card{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:clamp(1.25rem,3vw,2rem);border:1px solid rgba(var(--page-accent-rgb),.30);border-radius:22px;background:linear-gradient(135deg,rgba(var(--page-accent-rgb),.14),rgba(5,10,14,.94) 55%)}
.public-section-cta-card h2{margin:.45rem 0 .4rem;color:#fff;font-size:clamp(1.4rem,3vw,2.3rem);font-weight:800;letter-spacing:-.025em}.public-section-cta-card p{margin:0;color:rgba(229,248,252,.56);font-weight:500}
.nav-link-electric-red.active{background:rgba(57,193,255,.12);color:#fff;box-shadow:inset 0 -2px 0 #39c1ff,0 0 14px rgba(57,193,255,.22)}

@media(max-width:1100px){.public-section-hero-grid{grid-template-columns:1fr}.public-section-summary{max-width:760px}.public-section-process{grid-template-columns:1fr}.public-section-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.public-section-hero{padding-top:2.5rem}.public-section-copy h1{font-size:clamp(2.05rem,11vw,3.35rem)}.public-section-card-grid{grid-template-columns:1fr}.public-section-actions,.public-section-actions .public-section-btn{width:100%}.public-section-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-section-cta-card{align-items:flex-start;flex-direction:column}.public-section-cta-card .public-section-btn{width:100%}.public-section-block{padding:3.1rem 0}.public-section-chart-wrap{height:205px}}
@media(max-width:420px){.public-section-summary-head em{display:none}.public-section-summary{padding:.82rem}.public-section-chart-wrap{height:190px}.public-section-cockpit{padding:.65rem .55rem .1rem}}
@media(prefers-reduced-motion:reduce){.public-section-orbit{animation:none}.public-section-card,.public-section-btn{transition:none}}

/* Productos · fusión de fuentes */
.public-section-signal-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.38rem;margin:.55rem 0 .25rem}
.public-section-signal{min-width:0;display:flex;align-items:flex-start;gap:.42rem;padding:.48rem;border:1px solid rgba(57,193,255,.10);border-radius:10px;background:rgba(0,0,0,.25)}
.public-section-signal>i{flex:0 0 auto;color:#39c1ff;font-size:.82rem;margin-top:.08rem}
.public-section-signal>span{min-width:0;color:rgba(230,249,255,.43);font-size:.52rem;line-height:1.35;overflow-wrap:anywhere}
.public-section-signal strong{display:block;color:#fff;font-size:.58rem;margin-bottom:.08rem;text-transform:uppercase;letter-spacing:.065em}
.public-section-fusion{position:relative;background:radial-gradient(circle at 12% 48%,rgba(57,193,255,.08),transparent 28rem),radial-gradient(circle at 88% 38%,rgba(255,77,94,.07),transparent 27rem);border-block:1px solid rgba(57,193,255,.11)}
.public-section-fusion-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1rem;align-items:stretch}
.public-section-source-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
.public-section-source-card{display:flex;gap:.72rem;align-items:flex-start;min-width:0;padding:.95rem;border:1px solid rgba(57,193,255,.15);border-radius:16px;background:linear-gradient(145deg,rgba(57,193,255,.07),rgba(4,10,14,.94) 55%);box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
.public-section-source-card>div{flex:0 0 auto;display:grid;place-items:center;width:38px;height:38px;border-radius:11px;color:#39c1ff;background:rgba(57,193,255,.11);box-shadow:0 0 18px rgba(57,193,255,.08)}
.public-section-source-card>span{min-width:0;color:rgba(230,249,255,.53);font-size:.72rem;line-height:1.52}
.public-section-source-card strong{display:block;margin-bottom:.22rem;color:#fff;font-size:.85rem}
.public-section-output-panel{min-width:0;padding:1.15rem;border:1px solid rgba(255,209,102,.24);border-radius:18px;background:radial-gradient(circle at 90% 0%,rgba(255,209,102,.12),transparent 38%),linear-gradient(145deg,rgba(255,209,102,.055),rgba(4,9,13,.96) 55%);box-shadow:0 24px 55px rgba(0,0,0,.24)}
.public-section-output-head{display:flex;align-items:center;gap:.72rem;padding-bottom:.8rem;border-bottom:1px solid rgba(255,209,102,.12)}
.public-section-output-head>i{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:rgba(255,209,102,.12);color:#ffd166;font-size:1.05rem}
.public-section-output-head small{display:block;color:rgba(230,249,255,.46);font-size:.61rem;text-transform:uppercase;letter-spacing:.09em;font-weight:700}
.public-section-output-head strong{display:block;margin-top:.12rem;color:#fff;font-size:.92rem}
.public-section-output-panel ul{list-style:none;margin:1rem 0 .8rem;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
.public-section-output-panel li{position:relative;padding:.65rem .65rem .65rem 1.55rem;border:1px solid rgba(255,255,255,.06);border-radius:12px;background:rgba(255,255,255,.025);color:rgba(236,251,255,.75);font-size:.7rem;line-height:1.45;font-weight:600}
.public-section-output-panel li:before{content:"";position:absolute;left:.65rem;top:.85rem;width:7px;height:7px;border-radius:50%;background:#ffd166;box-shadow:0 0 12px rgba(255,209,102,.65)}
.public-section-output-panel>p{margin:0;padding-top:.72rem;border-top:1px solid rgba(255,255,255,.05);color:rgba(230,249,255,.40);font-size:.62rem;line-height:1.5}

@media(max-width:1100px){.public-section-fusion-grid{grid-template-columns:1fr}.public-section-output-panel ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.public-section-signal-strip,.public-section-source-stack,.public-section-output-panel ul{grid-template-columns:1fr}.public-section-signal{padding:.55rem}.public-section-source-card{padding:.82rem}}
