/* Biblioteca normativa (nb-*) */
.nb-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.nb-home{background:var(--navy);color:#fff;position:relative;overflow:hidden}
.nb-home::after{content:"§";position:absolute;right:-30px;top:-80px;font:400 420px/1 var(--serif);color:rgba(255,255,255,.04);pointer-events:none}
.nb-home .eyebrow{color:#c6a9e0}
.nb-home .headline em{color:#c6a9e0;font-style:italic}
.nb-home-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(40px,7vw,100px);align-items:center}
.nb-home-lede{color:#d2c5da;font-family:var(--sans);font-size:16px;max-width:430px;margin:22px 0 0}
.nb-home-search{display:flex;gap:10px;background:#fff;padding:8px;border-radius:10px;box-shadow:0 20px 50px rgba(0,0,0,.18)}
.nb-home-search input{flex:1;min-width:0;border:0;outline:0;padding:12px 14px;font:17px var(--sans);color:var(--ink);background:transparent}
.nb-home-search .button{min-height:46px}
.nb-home-search.compact{max-width:720px;margin-top:22px;box-shadow:0 8px 24px rgba(42, 18, 55,.08);border:1px solid var(--line)}
.nb-home-ej{margin-top:14px;font:13px var(--sans);color:#b5a2c0}
.nb-home-ej a{margin-left:10px;color:#cab3de;border-bottom:1px dotted currentColor}
.nb-hero .nb-home-ej,.nb-band .nb-home-ej{color:var(--muted)}
.nb-hero .nb-home-ej a{color:var(--gold)}
.nb-home-acc{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.nb-home .nb-chip{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:#fff}
.nb-home .nb-chip:hover{background:#fff;color:var(--navy)}
.nb-chip{display:inline-flex;align-items:center;padding:7px 14px;border:1px solid var(--line);border-radius:999px;font:13px var(--sans);background:#fff;color:var(--ink);transition:.2s}
.nb-chip:hover{border-color:var(--gold);color:var(--gold)}
.nb-chip-all{font-weight:600}
.nb-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.nb-pill{display:inline-block;padding:2px 9px;border-radius:999px;background:#f1ecf7;color:#543169;font:600 11px var(--sans);letter-spacing:.02em}
.nb-pill.acc{background:#f3edf9;color:#563477}.nb-pill.ok{background:#e7f3ec;color:#1f6b43}
.nb-pill.der{background:#f8e6e8;color:#8f2525}.nb-pill.warn{background:#ebdcf9;color:#401169}

.nb-hero{background:linear-gradient(180deg,var(--band-blue,#f1ecf7),#fff);padding:clamp(60px,8vw,110px) 0 50px}
.nb-hero .display{font-size:clamp(40px,5vw,70px);margin-bottom:34px}
.nb-hero .display em{color:var(--gold)}
.nb-hero .nb-home-search{max-width:820px;border:1px solid var(--line)}
.nb-group{margin-bottom:46px}
.nb-group-t{font:600 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.nb-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.nb-card{display:flex;flex-direction:column;gap:6px;padding:22px;border:1px solid var(--line);border-radius:12px;background:#fff;transition:.25s}
.nb-card:hover{border-color:var(--gold);transform:translateY(-3px);box-shadow:0 14px 30px rgba(42, 18, 55,.08)}
.nb-card strong{font:400 19px/1.25 var(--serif)}
.nb-card small{font:13px var(--sans);color:var(--muted)}
.nb-card-m{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:10px}
.nb-fuente{font:12px var(--sans);color:var(--muted);margin-top:30px}

.nb-band{background:var(--band-blue,#f1ecf7);padding:42px 0 32px;border-bottom:1px solid #e3dae9}
.nb-h1{font:400 clamp(30px,3.4vw,46px)/1.12 var(--serif);margin:18px 0 6px;letter-spacing:-.02em}
.nb-sub{font:14px var(--sans);color:var(--muted);margin:8px 0}
.nb-loading,.nb-empty{font:15px var(--sans);color:var(--muted);padding:50px 0}
.nb-empty{padding:12px 0}
.nb-inner{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;max-width:860px}
.nb-inner input{flex:1;min-width:240px;padding:13px 15px;border:1px solid #dcd2e3;border-radius:8px;font:16px var(--sans);background:#fff;color:var(--ink)}
.nb-inner input:focus{outline:2px solid rgba(110, 68, 150,.35);border-color:var(--gold)}
.nb-seg{display:flex;border:1px solid #dcd2e3;border-radius:8px;overflow:hidden;background:#fff}
.nb-seg button{border:0;background:none;padding:0 16px;font:600 12px var(--sans);cursor:pointer;color:var(--muted)}
.nb-seg button.on{background:var(--navy);color:#fff}

.nb-layout{display:grid;grid-template-columns:270px 1fr;gap:40px;align-items:start}
.nb-side{position:sticky;top:96px;max-height:calc(100vh - 120px);overflow:auto;border-right:1px solid var(--line);padding-right:14px}
.nb-tree{display:flex;flex-direction:column;font:13px/1.35 var(--sans)}
.nb-node{padding:6px 8px;border-radius:6px;color:var(--muted)}
.nb-node:hover{background:var(--mist);color:var(--ink)}
.nb-node.on{background:var(--navy);color:#fff}
.nb-node.lv0{font-weight:600;color:var(--ink)}.nb-node.lv1{font-weight:600}
.nb-node.lv2{padding-left:16px}.nb-node.lv3{padding-left:26px}.nb-node.lv4{padding-left:36px;font-size:12px}
.nb-list{display:flex;flex-direction:column;gap:10px;min-width:0}
.nb-item{display:block;padding:18px 20px;border:1px solid var(--line);border-radius:10px;background:#fff;transition:.2s}
.nb-item:hover{border-color:var(--gold);box-shadow:0 8px 22px rgba(42, 18, 55,.06)}
.nb-item-h{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}
.nb-num{font:600 14px var(--sans);color:var(--navy)}
.nb-epi{font:400 17px/1.3 var(--serif)}
.nb-item p{margin:8px 0 0;font:14px/1.6 var(--sans);color:var(--muted)}
.nb-item mark,.nb-art mark{background:#dbc1f1;color:inherit;padding:0 1px}
.nb-sec{font:600 12px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin:22px 0 4px}
.nb-sec.lv3,.nb-sec.lv4{letter-spacing:.04em;text-transform:none;font-size:13px;color:var(--navy)}
.nb-more{align-self:center;margin-top:10px}
.nb-raw{white-space:pre-wrap;font:13px/1.55 ui-monospace,Menlo,monospace;background:var(--mist);padding:14px;border-radius:8px;overflow:auto}

.nb-art-wrap{background:#fff}
.nb-art{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.nb-art-h{display:flex;justify-content:space-between;gap:20px;padding:28px 32px 20px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#f9f6fb,#fff)}
.nb-crumbs{font:12px var(--sans);color:var(--muted)}
.nb-crumbs a{color:var(--gold)}
.nb-art-t{font:400 clamp(28px,3vw,40px)/1.1 var(--serif);margin:10px 0 4px}
.nb-art-e{font:italic 400 19px/1.35 var(--serif);color:#543169}
.nb-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.nb-art-acts{display:flex;flex-direction:column;gap:8px;flex-shrink:0}
.nb-art-acts .button{min-height:40px;padding:0 16px}
.nb-aviso{margin:18px 32px 0;padding:12px 16px;border-left:3px solid #8444bc;background:#f3eafb;font:14px var(--sans)}
.nb-body{padding:24px 32px 8px;font:18px/1.75 var(--serif);color:#2c1937;max-width:78ch}
.nb-body p{margin:0 0 14px}
.nb-body p.l1{padding-left:26px}.nb-body p.l2{padding-left:48px}
.nb-lbl{font-weight:600;color:var(--navy)}
.nb-nav{display:flex;justify-content:space-between;padding:10px 32px 22px}
.nb-tabs{border-top:1px solid var(--line);background:#fbfafc}
.nb-tablist{display:flex;flex-wrap:wrap;gap:2px;padding:0 20px;border-bottom:1px solid var(--line);background:#fff}
.nb-tablist button{border:0;background:none;padding:14px 14px;font:600 13px var(--sans);color:var(--muted);cursor:pointer;border-bottom:2px solid transparent}
.nb-tablist button.on{color:var(--navy);border-bottom-color:var(--gold)}
.nb-tablist i{font-style:normal;margin-left:6px;background:#f1ecf7;padding:1px 7px;border-radius:999px;font-size:11px}
.nb-pane{padding:22px 32px 28px;font:15px/1.6 var(--sans)}
.nb-pane h4{font:600 12px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin:22px 0 10px}
.nb-pane h4:first-child{margin-top:0}
.nb-draft{background:#f3edf9;border-radius:10px;padding:16px 18px}
.nb-draft small{font:600 11px var(--sans);color:#563477;text-transform:uppercase;letter-spacing:.08em}
.nb-draft p{margin:6px 0 0;font:17px/1.6 var(--serif)}
.nb-note{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px 14px;margin-bottom:8px}
.nb-note p{margin:0 0 4px;white-space:pre-wrap}.nb-note small{color:var(--muted)}
.nb-noteform{display:grid;gap:8px;margin-top:12px}
.nb-noteform textarea,.nb-noteform input,.nb-pick select,.nb-pick input{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:8px;font:14px var(--sans);background:#fff}
.nb-noteform textarea{min-height:80px}
.nb-noteform .button{justify-self:start;min-height:38px}
.nb-jur{border:1px solid var(--line);border-radius:8px;background:#fff;margin-bottom:8px}
.nb-jur summary{padding:10px 14px;cursor:pointer;font-weight:600}
.nb-jur pre{white-space:pre-wrap;margin:0;padding:0 14px 14px;font:13px/1.55 var(--sans)}
.nb-rel{display:flex;flex-direction:column;gap:6px}
.nb-rel a{display:flex;flex-direction:column;padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:#fff}
.nb-rel a:hover{border-color:var(--gold)}
.nb-rel small{color:var(--gold);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.nb-hist{margin:0;padding-left:18px}.nb-hist li{margin-bottom:6px}
.nb-cmp{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px;align-items:start}
.nb-cmp .nb-body{font-size:16px}
.nb-cmp .nb-art-h,.nb-cmp .nb-body,.nb-cmp .nb-pane{padding-left:22px;padding-right:22px}
.nb-pick{border:1px dashed #d9cedf;border-radius:14px;padding:22px;background:#faf8fc;display:grid;gap:12px}
.nb-pick h3{margin:0;font:400 24px var(--serif)}
body.is-normas .site-footer{margin-top:40px}
@media (max-width:960px){
  .nb-home-grid,.nb-layout,.nb-cmp{grid-template-columns:1fr}
  .nb-side{position:static;max-height:260px;border-right:0;border-bottom:1px solid var(--line);padding:0 0 12px}
  .nb-art-h{flex-direction:column}.nb-art-acts{flex-direction:row}
  .nb-body,.nb-pane,.nb-art-h{padding-left:18px;padding-right:18px}
  .nb-home-search{flex-direction:column}
}
.nb-node.on,.nb-node.lv0.on{background:var(--navy);color:#fff}
.nb-x{border:1px solid var(--line);border-radius:10px;background:#fbfafc}
.nb-x summary{padding:12px 16px;cursor:pointer;font:600 13px var(--sans);color:var(--muted)}
.nb-x .nb-raw{margin:0 12px 12px;max-height:420px}

/* ===== Inicio centrado en normas ===== */
.nb-top{position:relative;overflow:hidden;background:var(--navy);color:#fff;padding:clamp(70px,9vw,130px) 0 clamp(50px,6vw,80px)}
.nb-top::before{content:"";position:absolute;inset:0;background:url("/assets/images/hero-architecture.jpg") center/cover no-repeat;opacity:.1;filter:grayscale(1)}
.nb-top::after{content:"§";position:absolute;right:-20px;top:-90px;font:400 480px/1 var(--serif);color:rgba(255,255,255,.035);pointer-events:none}
.nb-top .container{position:relative;z-index:1}
.nb-top .eyebrow{color:#c6a9e0}
.nb-top .display{font-size:clamp(40px,5.4vw,78px);max-width:900px}
.nb-top .display em{color:#c6a9e0}
.nb-top-lede{max-width:640px;margin:22px 0 34px;color:#d2c5da;font:17px/1.6 var(--sans)}
.nb-top-search{max-width:860px}
.nb-top-search input{font-size:18px;padding:16px 16px}
.nb-top .nb-home-acc{max-width:900px}
.nb-stats{display:flex;flex-wrap:wrap;gap:12px 34px;margin-top:38px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);font:13px var(--sans);color:#b5a2c0}
.nb-stats b{color:#fff;font-weight:600;margin-right:4px}
.home-feed{background:#fff;padding:clamp(56px,7vw,96px) 0}
.home-feed-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(36px,5vw,70px);align-items:start}
.nb-feed-block{margin-bottom:56px}
.nb-feed-h{display:flex;justify-content:space-between;align-items:baseline;gap:20px;border-bottom:2px solid var(--ink);padding-bottom:12px;margin-bottom:22px}
.nb-feed-h h2{margin:0;font:400 clamp(26px,2.4vw,34px)/1.1 var(--serif)}
.news-list{display:flex;flex-direction:column}
.news-item{display:grid;grid-template-columns:200px 1fr;gap:24px;padding:22px 0;border-bottom:1px solid var(--line)}
.news-item:first-child{padding-top:4px}
.news-cover{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:8px;background:var(--mist)}
.news-cover img,.news-cover .journal-placeholder{width:100%;height:100%;object-fit:cover;min-height:0;border-width:10px}
.news-item h3{margin:6px 0 8px;font:400 23px/1.25 var(--serif)}
.news-item h3 a:hover{color:var(--gold)}
.news-item p{margin:0 0 10px;color:var(--muted);font-size:15px;line-height:1.55}
.news-foot{font:12px var(--sans);color:#877c8e}
.nb-cards.compact{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.studio-aside{position:sticky;top:100px}
.studio-card{border:1px solid var(--line);border-radius:14px;padding:28px;background:linear-gradient(180deg,var(--band-sand,#f3edf9),#fff 55%)}
.studio-card .eyebrow{margin-bottom:6px;color:var(--gold)}
.studio-brand{display:block;font:400 26px/1.15 var(--serif);letter-spacing:.02em}
.studio-kicker{margin:4px 0 14px;font:600 11px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.studio-card > p{font-size:15px;line-height:1.55;color:#45364d;margin:0 0 18px}
.studio-lead{display:flex;gap:12px;align-items:center;padding:14px 0;border-block:1px solid var(--line)}
.studio-photo{width:54px;height:54px;border-radius:50%;background:#e1d8e7 center top/cover no-repeat;flex-shrink:0}
.studio-lead strong{display:block;font:400 17px var(--serif)}
.studio-lead small{font:12px var(--sans);color:var(--gold);text-transform:uppercase;letter-spacing:.06em}
.studio-areas{display:flex;flex-direction:column;padding:14px 0 6px}
.studio-areas span{font:600 11px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.studio-areas a{font:14px/1.5 var(--sans);padding:5px 0;border-bottom:1px dotted var(--line);color:var(--ink)}
.studio-areas a:hover{color:var(--gold)}
.studio-actions{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin-top:20px}
.studio-actions .button{width:100%}
.studio-divider{background:var(--band-blue,#f1ecf7);border-top:1px solid #e3dae9;padding:26px 0 0}
.studio-divider .eyebrow{margin:0}
.hero.hero-studio{min-height:auto;background:var(--band-blue,#f1ecf7)}
.hero.hero-studio::after{background:linear-gradient(90deg,#f1ecf7 0%,rgba(245, 239, 248,.9) 45%,rgba(245, 239, 248,.35) 100%),linear-gradient(0deg,#f1ecf7,transparent 45%)}
.hero.hero-studio .hero-content{padding:50px 0 80px}
.hero.hero-studio .display{font-size:clamp(36px,4.4vw,62px)}
.hero.hero-studio + .doctrine-section{border-top:0}
@media (max-width:960px){
  .home-feed-grid{grid-template-columns:1fr}
  .studio-aside{position:static}
  .news-item{grid-template-columns:110px 1fr;gap:16px}
  .news-item h3{font-size:19px}
}
.nb-top .nb-chip{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.2);color:#fff}
.nb-top .nb-chip:hover{background:#fff;color:var(--navy);border-color:#fff}
.nb-top .nb-home-ej a{color:#cab3de}

/* ===== Lectura jerárquica del artículo ===== */
.nb-body{max-width:none}
.nb-body > p{max-width:76ch}
.nb-kids{display:flex;flex-direction:column;gap:2px}
.nb-root{margin:6px 0 18px}
.nb-it{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:baseline}
.nb-it > .nb-lb{font:600 16px/1.75 var(--sans);color:var(--navy);min-width:30px}
.nb-it-b{min-width:0}
.nb-it-b > p{margin:0 0 10px;max-width:74ch}
.nb-it-b > p.nb-cont{color:#3c2947}
.nb-it .nb-kids{margin:4px 0 12px;padding-left:16px;border-left:2px solid #ebe3ef}
/* nivel 1: incisos / literales principales */
.nb-it.lv1{padding:6px 0}
.nb-it.lv1 > .nb-lb{display:inline-flex;justify-content:center;min-width:34px;padding:0 8px;border-radius:6px;background:#2a1237;color:#fff;font-size:14px;line-height:1.9;margin-top:4px}
/* nivel 2: numerales */
.nb-it.lv2{font-size:17px}
.nb-it.lv2 > .nb-lb{color:var(--gold);font-size:15px}
.nb-it.lv2 .nb-it-b > p{font-size:17px}
.nb-it.lv2 .nb-kids{border-left-color:#e2d7eb}
/* nivel 3+: acápites, romanos */
.nb-it.lv3 > .nb-lb,.nb-it.lv4 > .nb-lb,.nb-it.lv5 > .nb-lb{color:#6f5d7a;font-size:14px;font-style:italic}
.nb-it.lv3 .nb-it-b > p,.nb-it.lv4 .nb-it-b > p{font-size:16px;color:#402e4a}
/* modo índice plegable (artículos largos) */
.nb-outline{margin-top:8px}
.nb-otools{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;margin:0 0 12px;background:#f7f4f9;border:1px solid #eae2ef;border-radius:10px;font:13px var(--sans);position:sticky;top:84px;z-index:2}
.nb-otools > span{font-weight:600;color:var(--navy);margin-right:4px}
.nb-otools input{flex:1;min-width:180px;padding:8px 10px;border:1px solid #dcd2e3;border-radius:7px;font:14px var(--sans);background:#fff}
.nb-otools button{border:1px solid #dcd2e3;background:#fff;border-radius:7px;padding:7px 11px;font:600 12px var(--sans);cursor:pointer;color:var(--navy)}
.nb-otools button:hover{border-color:var(--gold);color:var(--gold)}
details.nb-it{display:block;border:1px solid var(--line);border-radius:10px;background:#fff;margin-bottom:8px;transition:box-shadow .2s}
details.nb-it[open]{box-shadow:0 8px 24px rgba(42, 18, 55,.07);border-color:#dbcfe2}
details.nb-it > summary{list-style:none;display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;align-items:center;padding:12px 14px;cursor:pointer;font:15px/1.45 var(--sans);color:#402e4a}
details.nb-it > summary::-webkit-details-marker{display:none}
details.nb-it > summary::after{content:"";width:9px;height:9px;border-right:2px solid #9c8ca6;border-bottom:2px solid #9c8ca6;transform:rotate(45deg);margin:0 4px 4px 0;transition:transform .2s}
details.nb-it[open] > summary::after{transform:rotate(-135deg);margin-bottom:-4px}
details.nb-it > summary:hover{background:#fbfafc;border-radius:10px}
details.nb-it > summary .nb-lb{display:inline-flex;justify-content:center;min-width:36px;padding:2px 8px;border-radius:6px;background:#2a1237;color:#fff;font:600 13px/1.6 var(--sans)}
details.nb-it[open] > summary .nb-sm{color:var(--muted)}
.nb-cnt{font-style:normal;font:600 11px var(--sans);background:#f3edf9;color:#563477;padding:2px 8px;border-radius:999px;white-space:nowrap}
.nb-cnt::after{content:" sub."}
details.nb-it > .nb-it-b{padding:6px 20px 12px 64px;border-top:1px solid var(--line);font:17px/1.7 var(--serif)}
details.nb-it > .nb-it-b > p{margin:10px 0}
details.nb-it[hidden]{display:none}
@media (max-width:700px){
  details.nb-it > .nb-it-b{padding:6px 14px 12px 18px}
  .nb-it .nb-kids{padding-left:10px}
  .nb-otools{position:static}
}
.nb-art-wrap{padding-top:36px}
.nb-body p.nb-nota{font:13px/1.5 var(--sans)!important;color:#877c8e!important}

/* =====================================================================
   v2 · Lectura cómoda (artículo, índice, comparación)
   ===================================================================== */
.nb{--nb-navy:#2a1237;--nb-blue:#5e3a7e;--nb-sky:#f0eaf7;--nb-gold:#6e4496;--nb-goldsoft:#ece4f3;--nb-ink:#33193f;--nb-mut:#6a6076;--nb-line:#e7dfeb}
.nb svg{width:17px;height:17px;flex-shrink:0}
.nb-progress{position:sticky;top:80px;z-index:20;height:3px;background:transparent}
.nb-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--nb-gold),#a580c5);transition:width .1s linear}
.nb-art-wrap{background:linear-gradient(180deg,#f7f4fa 0,#faf8fc 320px,#fff 100%);padding-top:34px}
.nb-layout{grid-template-columns:280px minmax(0,1fr);gap:34px}

/* índice lateral */
.nb-side{background:#fff;border:1px solid var(--nb-line);border-radius:14px;padding:14px 10px 14px 14px;top:100px;max-height:calc(100vh - 124px);box-shadow:0 6px 22px rgba(42, 18, 55,.04)}
.nb-tree-h{display:flex;flex-direction:column;padding:4px 8px 12px;margin-bottom:6px;border-bottom:1px solid var(--nb-line)}
.nb-tree-h span{font:600 10.5px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--nb-gold)}
.nb-tree-h strong{font:400 18px/1.25 var(--serif);color:var(--nb-ink);margin-top:2px}
.nb-tree{gap:1px}
.nb-node{display:flex;flex-direction:column;gap:1px;padding:7px 10px;border-radius:8px;border-left:3px solid transparent;color:var(--nb-ink);font:13.5px/1.35 var(--sans);transition:background .15s,border-color .15s}
.nb-node small{font:600 10px/1.3 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#998e9f}
.nb-node span{color:#422f4d}
.nb-node:hover{background:#f7f4f9}
.nb-node.on,.nb-node.lv0.on{background:var(--nb-sky);color:var(--nb-navy);border-left-color:var(--nb-gold)}
.nb-node.on span{color:var(--nb-navy);font-weight:600}
.nb-node.on small{color:var(--nb-gold)}
.nb-node.lv0{font-weight:600;margin-bottom:4px}
.nb-node.lv1,.nb-node.lv2{font-weight:500}
.nb-node.lv3{padding-left:18px}.nb-node.lv4{padding-left:28px}
.nb-side::-webkit-scrollbar{width:6px}.nb-side::-webkit-scrollbar-thumb{background:#e0d8e5;border-radius:6px}

/* encabezados de sección en listados */
.nb-sec{display:flex;flex-direction:column;gap:2px;margin:26px 0 8px;padding:12px 16px;border-radius:10px;background:var(--nb-sky);border-left:3px solid var(--nb-navy);text-transform:none;letter-spacing:0}
.nb-sec small{font:600 10.5px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--nb-gold)}
.nb-sec span{font:400 19px/1.3 var(--serif);color:var(--nb-ink)}
.nb-sec.lv3,.nb-sec.lv4{background:#f9f6fb;border-left-color:#b8a2c4}
.nb-sec.lv3 span,.nb-sec.lv4 span{font-size:17px}

/* tarjeta del artículo */
.nb-art{border-radius:16px;border-color:var(--nb-line);box-shadow:0 10px 34px rgba(42, 18, 55,.06)}
.nb-art-h{display:block;padding:22px 30px 18px;background:#fff;border-bottom:1px solid var(--nb-line);position:relative}
.nb-art-h::before{content:"";position:absolute;left:0;top:22px;bottom:18px;width:4px;border-radius:0 4px 4px 0;background:linear-gradient(180deg,var(--nb-navy),var(--nb-blue))}
.nb-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;font:12.5px/1.4 var(--sans);color:var(--nb-mut)}
.nb-crumbs a{color:var(--nb-gold);font-weight:600}
.nb-crumbs i{font-style:normal;color:#cec3d4}
.nb-art-top{margin-top:8px}
.nb-art-t{font:400 clamp(30px,3vw,40px)/1.1 var(--serif);margin:0;color:var(--nb-ink)}
.nb-art-e{font:italic 400 19px/1.35 var(--serif);color:var(--nb-blue);margin-top:4px}
.nb-meta{margin-top:12px}
.nb-pill{font-weight:600;padding:3px 10px}
.nb-pill.ok{display:inline-flex;align-items:center;gap:6px}
.nb-pill.ok b{width:6px;height:6px;border-radius:50%;background:#2f9e62;box-shadow:0 0 0 3px rgba(47,158,98,.18)}
.nb-art-acts{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;margin-top:16px}
.nb-btn{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 14px;border:1px solid #e1d8e7;border-radius:9px;background:#fff;color:var(--nb-ink);font:600 13px var(--sans);cursor:pointer;transition:all .18s}
.nb-btn:hover{border-color:var(--nb-navy);background:#f9f5fb;transform:translateY(-1px)}
.nb-btn.pri{background:var(--nb-navy);border-color:var(--nb-navy);color:#fff}
.nb-btn.pri:hover{background:var(--nb-blue);border-color:var(--nb-blue)}
.nb-btn.ok{border-color:#2f9e62;color:#1f6b43;background:#eef8f2}

/* nota de vigencia */
.nb-aviso{display:flex;gap:12px;margin:20px 30px 0;padding:14px 16px;border:1px solid #e7dbee;border-left:0;background:linear-gradient(90deg,#f5eff9,#fbf7fd);border-radius:12px;font:14px/1.55 var(--sans);color:#422f4d;position:relative}
.nb-aviso::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:3px;background:var(--nb-blue)}
.nb-aviso svg{color:var(--nb-blue);margin:2px 0 0 4px;width:19px;height:19px}
.nb-aviso b{display:block;font:600 11px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--nb-blue);margin-bottom:2px}
.nb-aviso p{margin:0}

/* cuerpo */
.nb-art{--nb-fs:1}
.nb-body{padding:22px 30px 10px;font-size:calc(18px * var(--nb-fs));line-height:1.75;color:var(--nb-ink)}
.nb-body > p{font-size:inherit}
.nb-it-b > p,.nb-it.lv2 .nb-it-b > p{font-size:calc(17.5px * var(--nb-fs))}
.nb-it.lv3 .nb-it-b > p,.nb-it.lv4 .nb-it-b > p{font-size:calc(16.5px * var(--nb-fs))}

/* barra de herramientas del índice plegable */
.nb-otools{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 8px 8px 14px;margin:6px 0 16px;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);border:1px solid var(--nb-line);border-radius:12px;box-shadow:0 4px 16px rgba(42, 18, 55,.05);top:92px}
.nb-oinfo{font:13px var(--sans);color:var(--nb-mut);white-space:nowrap}
.nb-oinfo b{font:600 15px var(--sans);color:var(--nb-navy);margin-right:3px}
.nb-fwrap{flex:1 1 220px;display:flex;align-items:center;gap:8px;height:38px;padding:0 12px;border:1px solid #e1d8e7;border-radius:9px;background:#faf8fc;color:#998e9f;transition:border-color .15s,background .15s}
.nb-fwrap:focus-within{border-color:var(--nb-gold);background:#fff;box-shadow:0 0 0 3px rgba(110, 68, 150,.12)}
.nb-otools .nb-fwrap input{flex:1;min-width:0;border:0;padding:0;background:transparent;font:14px var(--sans);color:var(--nb-ink);outline:0}
.nb-obtns{display:inline-flex;border:1px solid #e1d8e7;border-radius:9px;overflow:hidden;flex-shrink:0}
.nb-otools .nb-obtns button{border:0;border-radius:0;height:36px;padding:0 12px;background:#fff;font:600 12.5px var(--sans);color:var(--nb-ink)}
.nb-otools .nb-obtns button + button{border-left:1px solid #e1d8e7}
.nb-otools .nb-obtns button:hover{background:#f7f4f9;color:var(--nb-navy)}

/* elementos plegables */
details.nb-it{border-color:var(--nb-line);border-radius:12px;margin-bottom:8px;position:relative;overflow:hidden}
details.nb-it::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent;transition:background .2s}
details.nb-it:hover{border-color:#d9cde0}
details.nb-it[open]{border-color:#d8cbe0;box-shadow:0 10px 28px rgba(42, 18, 55,.08)}
details.nb-it[open]::before{background:var(--nb-gold)}
details.nb-it > summary{padding:13px 16px;gap:14px;font:15px/1.5 var(--sans);color:var(--nb-ink)}
details.nb-it > summary:hover{background:#faf8fc;border-radius:0}
details.nb-it[open] > summary{background:#faf8fc;border-bottom:1px solid var(--nb-line)}
details.nb-it > summary .nb-sm{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
details.nb-it > summary .nb-lb{min-width:40px;border-radius:8px;background:var(--nb-sky);color:var(--nb-navy);border:1px solid #e0d1e8;font:700 13px/1.7 var(--sans)}
details.nb-it:hover > summary .nb-lb,details.nb-it[open] > summary .nb-lb{background:var(--nb-navy);color:#fff;border-color:var(--nb-navy)}
.nb-cnt{background:var(--nb-goldsoft);color:#563477}
details.nb-it > .nb-it-b{border-top:0;padding:8px 24px 14px 70px;animation:nbOpen .22s ease}
@keyframes nbOpen{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
mark{background:#ddc4f2;border-radius:3px}

/* jerarquía (vista completa) */
.nb-it.lv1 > .nb-lb{background:var(--nb-sky);color:var(--nb-navy);border:1px solid #e0d1e8;border-radius:8px;font-size:13px;font-weight:700}
.nb-it.lv2 > .nb-lb{color:var(--nb-gold);font-weight:700}
.nb-it .nb-kids{border-left-color:#ece5f0}

/* navegación y pestañas */
.nb-nav{padding:6px 30px 22px}
.nb-nav .text-link{text-transform:none;letter-spacing:0;font-size:13px;border:1px solid var(--nb-line);border-radius:999px;padding:7px 14px}
.nb-nav .text-link:hover{border-color:var(--nb-gold);color:var(--nb-gold)}
.nb-tabs{background:#faf8fc}
.nb-tablist{padding:0 18px;gap:4px}
.nb-tablist button{padding:15px 12px;font-size:13.5px}
.nb-tablist button:hover{color:var(--nb-navy)}
.nb-pane{padding:22px 30px 28px}

/* comparación */
.nb-cmp{gap:22px}
.nb-cmp .nb-art-h,.nb-cmp .nb-body,.nb-cmp .nb-pane{padding-left:22px;padding-right:22px}
.nb-cmp .nb-aviso{margin-left:22px;margin-right:22px}
.nb-cmp .nb-body{font-size:calc(16.5px * var(--nb-fs))}
.nb-pick{border:1px solid var(--nb-line);border-radius:16px;background:#fff;padding:20px;box-shadow:0 10px 34px rgba(42, 18, 55,.05)}
.nb-pick-h{display:flex;gap:12px;align-items:flex-start;padding-bottom:12px;border-bottom:1px solid var(--nb-line)}
.nb-pick-h svg{width:34px;height:34px;padding:8px;border-radius:10px;background:var(--nb-sky);color:var(--nb-navy)}
.nb-pick-h h3{margin:0;font:400 24px/1.2 var(--serif);color:var(--nb-ink)}
.nb-pick-h p{margin:2px 0 0;font:13px var(--sans);color:var(--nb-mut)}
.nb-pick-t{font:600 11px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--nb-gold);margin:10px 0 0}
.nb-rel{gap:8px}
.nb-rel a{padding:12px 14px;border-radius:10px;border-color:var(--nb-line);transition:all .18s}
.nb-rel a:hover{border-color:var(--nb-navy);background:#faf8fc;transform:translateX(2px)}
.nb-rel small{display:flex;align-items:center;gap:8px;font:600 11px var(--sans);letter-spacing:.02em;text-transform:none;color:var(--nb-mut)}
.nb-rel small em{font-style:normal;background:var(--nb-goldsoft);color:#563477;border-radius:999px;padding:1px 8px}
.nb-rel span{font:400 16px/1.4 var(--serif);color:var(--nb-ink);margin-top:4px}
.nb-rel span b{font-weight:600;color:var(--nb-navy)}
.nb-pick select,.nb-pick input{height:40px;border-radius:9px;border-color:#e1d8e7}

/* listados de artículos */
.nb-item{border-radius:12px}
.nb-item:hover{transform:translateY(-1px)}
.nb-epi{font-size:17px}
.nb-num{background:var(--nb-sky,#f0eaf7);color:#2a1237;border-radius:6px;padding:1px 8px;font-size:13px}

@media (max-width:960px){
  .nb-art-h,.nb-body,.nb-pane{padding-left:18px;padding-right:18px}
  .nb-aviso{margin-left:18px;margin-right:18px}
  details.nb-it > .nb-it-b{padding:8px 16px 12px 18px}
  .nb-btn span{display:none}.nb-btn.pri span{display:inline}
  .nb-progress{top:72px}
}
.nb-band + .section-sm{padding-top:34px}
.nb .section-sm:has(.nb-cmp){padding-top:30px;background:linear-gradient(180deg,#f7f4fa 0,#fff 420px)}
.nb .section-sm:has(.nb-cmp) > .container > .text-link{text-transform:none;letter-spacing:0;font-size:13px;border:1px solid var(--nb-line);border-radius:999px;padding:7px 14px;background:#fff}
.nb-band{background:linear-gradient(135deg,#f0eaf7 0%,#f8f5fa 60%,#f2eef6 100%)}
.nb-band .text-link{text-transform:none;letter-spacing:0;font-size:13px}
.nb-x{border-radius:12px}

/* ===================== Comparador ===================== */
.nbc .nbc-top{position:relative;background:linear-gradient(135deg,#2a1237 0%,#401857 60%,#5e3a7e 100%);color:#fff;padding:30px 0 22px;overflow:visible;z-index:5}
.nbc .nbc-top::after{content:"⇆";position:absolute;right:4%;top:-30px;font:400 200px/1 var(--serif);color:rgba(255,255,255,.04);pointer-events:none}
.nbc-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:18px}
.nbc-head .eyebrow{color:#c6a9e0;margin-bottom:6px}
.nbc-head h1{margin:0;font:400 clamp(28px,3vw,38px)/1.1 var(--serif)}
.nbc-opts{display:flex;gap:18px;flex-wrap:wrap}
.nbc-sw{display:inline-flex;align-items:center;gap:9px;font:13px var(--sans);color:#e2d7e9;cursor:pointer;user-select:none}
.nbc-sw input{position:absolute;opacity:0;pointer-events:none}
.nbc-sw i{width:34px;height:19px;border-radius:999px;background:rgba(255,255,255,.2);position:relative;transition:background .2s}
.nbc-sw i::after{content:"";position:absolute;left:3px;top:3px;width:13px;height:13px;border-radius:50%;background:#fff;transition:transform .2s}
.nbc-sw input:checked + i{background:#956bba}
.nbc-sw input:checked + i::after{transform:translateX(15px)}
.nbc-sw input:focus-visible + i{outline:2px solid #fff;outline-offset:2px}
.nbc-bar{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center}
.nbc-slot{display:flex;align-items:center;gap:8px;background:#fff;border-radius:12px;padding:6px;box-shadow:0 14px 34px rgba(0,0,0,.18);position:relative}
.nbc-tag{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:#2a1237;color:#fff;font:700 13px var(--sans)}
.nbc-slot[data-side="b"] .nbc-tag,.nbc-col#nbc-b .nbc-tag{background:#6e4496}
.nbc-norma{flex:0 1 190px;min-width:0;height:38px;border:1px solid #e1d8e7;border-radius:9px;padding:0 30px 0 10px;font:600 13.5px var(--sans);color:#33193f;background:#f9f5fb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%235d6b7a' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 10px center;appearance:none;cursor:pointer}
.nbc-q{flex:1;display:flex;align-items:center;gap:8px;height:38px;padding:0 10px;border:1px solid #e1d8e7;border-radius:9px;color:#998e9f;position:relative;min-width:0}
.nbc-q:focus-within{border-color:#6e4496;box-shadow:0 0 0 3px rgba(110, 68, 150,.15)}
.nbc-q input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:14px var(--sans);color:#33193f}
.nbc-dd{position:absolute;left:-46px;right:-6px;top:calc(100% + 10px);background:#fff;border:1px solid #e1d8e7;border-radius:12px;box-shadow:0 22px 50px rgba(42, 18, 55,.22);max-height:420px;overflow:auto;z-index:40;padding:6px}
.nbc-ddh{font:600 11px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#998e9f;padding:8px 10px}
.nbc-hit{display:flex;gap:10px;align-items:flex-start;width:100%;text-align:left;border:0;background:none;padding:10px;border-radius:9px;cursor:pointer;color:#33193f}
.nbc-hit:hover,.nbc-hit.on{background:#f1ecf7}
.nbc-hit .nb-num{flex-shrink:0;white-space:nowrap}
.nbc-ht{display:flex;flex-direction:column;gap:2px;min-width:0}
.nbc-ht b{font:400 15px/1.3 var(--serif)}
.nbc-ht small{font:12.5px/1.45 var(--sans);color:#6a6076;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nbc-swap{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.1);color:#fff;cursor:pointer;display:grid;place-items:center;transition:all .25s}
.nbc-swap svg{width:20px;height:20px}
.nbc-swap:hover{background:#956bba;border-color:#956bba;transform:rotate(180deg)}
.nbc .nbc-main{background:linear-gradient(180deg,#f4eff6 0,#f9f6fb 300px,#fff 100%);padding:22px 0 50px}
.nbc-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.nbc-grid.sync .nbc-col{max-height:calc(100vh - 110px);overflow:auto;position:sticky;top:96px;border-radius:16px;scrollbar-width:thin}
.nbc-col{min-width:0}
.nbc-colh{display:flex;align-items:center;gap:8px;margin:0 0 10px;padding:8px 10px;background:#fff;border:1px solid var(--line);border-radius:12px;font:14px var(--sans);position:sticky;top:0;z-index:3}
.nbc-grid:not(.sync) .nbc-colh{top:86px}
.nbc-colh .nbc-tag{width:26px;height:26px;font-size:12px}
.nbc-colh b{color:#33193f}
.nbc-sp{flex:1}
.nbc-step,.nbc-open{height:30px;padding:0 10px;border:1px solid #e1d8e7;border-radius:8px;background:#fff;font:600 12.5px var(--sans);color:#33193f;cursor:pointer;display:inline-flex;align-items:center}
.nbc-step:hover,.nbc-open:hover{border-color:#2a1237;background:#f7f4f9}
.nbc-col .nb-art{box-shadow:0 8px 26px rgba(42, 18, 55,.06)}
.nbc-col .nb-art-h::before{display:none}
.nbc-col#nbc-a .nb-art{border-top:3px solid #2a1237}
.nbc-col#nbc-b .nb-art{border-top:3px solid #6e4496}
.nbc-col .nb-art-h,.nbc-col .nb-body,.nbc-col .nb-pane{padding-left:22px;padding-right:22px}
.nbc-col .nb-aviso{margin-left:22px;margin-right:22px}
.nbc-col .nb-body{font-size:calc(16.5px * var(--nb-fs))}
.nbc-col .nb-art-acts{margin-top:12px}
.nbc-col .nb-otools{position:static}
.nbc-chips{display:flex;flex-wrap:wrap;gap:6px}
.nbc-chips button{border:1px solid #e1d8e7;background:#fff;border-radius:999px;padding:6px 12px;font:600 12.5px var(--sans);color:#33193f;cursor:pointer;transition:all .15s}
.nbc-chips button i{font-style:normal;color:#998e9f;margin-left:3px}
.nbc-chips button.on{background:#2a1237;border-color:#2a1237;color:#fff}
.nbc-chips button.on i{color:#dacbe2}
.nbc-sf{flex:none}
.nb-rel a[hidden]{display:none}
mark.co{background:#f0e5f6;color:inherit;border-bottom:2px solid #ac85c3;padding:0 1px;border-radius:2px}
@media (max-width:960px){
  .nbc-bar{grid-template-columns:1fr}
  .nbc-swap{justify-self:center;transform:rotate(90deg)}
  .nbc-grid{grid-template-columns:1fr}
  .nbc-grid.sync .nbc-col{position:static;max-height:none}
  .nbc-dd{left:-6px}
  .nbc-norma{flex-basis:130px}
}
.nbc-sf input,.nb-pick .nbc-sf input{border:0;height:auto;padding:0;background:transparent;box-shadow:none}
.nbc-sf{height:40px}
.nbc-legend{display:none}
/* aviso de modificación publicada */
.nb-alerta{display:flex;gap:12px;margin:16px 30px 0;padding:14px 16px;border-radius:12px;background:linear-gradient(90deg,#f3e9fb,#f8f2fd);border:1px solid #d3bce8;font:14px/1.55 var(--sans);color:#301c42}
.nb-alerta svg{width:22px;height:22px;flex-shrink:0;color:#651ba5;margin-top:1px}
.nb-alerta b{display:block;color:#401169;font-weight:600}
.nb-alerta p{margin:3px 0 6px}
.nb-alerta.deroga{background:linear-gradient(90deg,#fdeef0,#fff7f8);border-color:#f0c9ce;color:#5c1f26}.nb-alerta.deroga svg,.nb-alerta.deroga b{color:#8f2525}
.nb-alerta details summary{cursor:pointer;font-weight:600;color:#401169;font-size:13px}
.nb-alerta-cita{font:italic 14px/1.55 var(--serif);background:rgba(255,255,255,.7);border-radius:8px;padding:8px 10px;margin:6px 0}
.nb-alerta a{font-weight:600;color:#5e3a7e;font-size:13px}
.nbc-col .nb-alerta{margin-left:22px;margin-right:22px}
.nb-emb .nb-alerta{margin:12px 16px 0}
.nb-alnorma{margin-top:16px;padding:12px 16px;border-radius:12px;background:#f3e9fb;border:1px solid #d3bce8;font:14px/1.6 var(--sans);color:#301c42;max-width:900px}
.nb-alnorma > b{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#481377;margin-bottom:4px}
.nb-alnorma > div{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:3px 0}
.nb-alnorma span{font-weight:600;color:#481377;min-width:82px}
.nb-alnorma a{color:#5e3a7e;font-weight:600}
.nb-chip.sm{padding:2px 9px;font-size:12px}
@media (max-width:960px){ .nb-alerta{margin-left:18px;margin-right:18px} }
.nb-parche{display:flex;gap:12px;margin:16px 30px 0;padding:14px 16px;border-radius:12px;background:linear-gradient(90deg,#e9f6ef,#f5fbf7);border:1px solid #c6e4d2;font:14px/1.55 var(--sans);color:#1d3b2b}
.nb-parche svg{width:22px;height:22px;flex-shrink:0;color:#1f8a52;margin-top:1px}
.nb-parche b{display:block;color:#1f6b43;font-weight:600}
.nb-parche p{margin:3px 0 6px}
.nb-parche.deroga{background:linear-gradient(90deg,#fdeef0,#fff7f8);border-color:#f0c9ce;color:#5c1f26}.nb-parche.deroga svg,.nb-parche.deroga b{color:#8f2525}
.nb-parche details summary{cursor:pointer;font-weight:600;color:#1f6b43;font-size:13px}
.nb-parche-ant{background:rgba(255,255,255,.75);border-radius:8px;padding:10px 12px;margin:6px 0;font:15px/1.6 var(--serif);color:#4f3d59;max-height:360px;overflow:auto}
.nb-parche-ant p{margin:0 0 8px}
.nb-parche a{font-weight:600;color:#5e3a7e;font-size:13px}
.nbc-col .nb-parche,.nb-emb .nb-parche{margin-left:22px;margin-right:22px}
@media (max-width:960px){ .nb-parche{margin-left:18px;margin-right:18px} }
/* ===== Ajustes móviles (van al final para prevalecer) ===== */
@media (max-width:960px){
  .nb-layout{grid-template-columns:1fr;gap:16px}
  .nb-side{position:static;max-height:58px;overflow:hidden;padding:10px 12px;transition:max-height .25s}
  .nb-side.open{max-height:65vh;overflow:auto}
  .nb-tree-h{flex-direction:row;align-items:center;justify-content:space-between;cursor:pointer;border-bottom:0;padding:4px 4px 10px;margin:0}
  .nb-tree-h::after{content:"Ver índice ▾";font:600 12px var(--sans);color:#5e3a7e}
  .nb-side.open .nb-tree-h::after{content:"Ocultar ▴"}
  .nb-tree-h strong{font-size:16px}
  .nb-art-h{padding:18px}
  .nb-art-t{font-size:30px}
  .nb-tablist{overflow-x:auto;flex-wrap:nowrap;padding:0 8px}
  .nb-tablist button{white-space:nowrap;padding:12px 10px}
  .nb-otools{flex-wrap:wrap}
  .nb-obtns{width:100%}.nb-obtns button{flex:1}
  details.nb-it > summary{grid-template-columns:auto 1fr auto;gap:10px;padding:12px}
  details.nb-it > summary .nb-cnt{display:none}
}
@media (max-width:700px){
  .nbc-slot{flex-wrap:wrap}
  .nbc-norma{flex:1 1 calc(100% - 40px)}
  .nbc-q{flex:1 1 100%}
  .nbc-dd{left:-6px;right:-6px}
  .nbc-opts{flex-direction:column;gap:10px}
  .nbc-colh{flex-wrap:wrap}
  .nbc-grid:not(.sync) .nbc-colh{position:static}
  .nb-home-search{padding:6px}
  .nb-band{padding:28px 0 22px}
  .nb-h1{font-size:28px}
  .nb-inner input{min-width:0}
  .nb-seg{width:100%}.nb-seg button{flex:1;height:36px}
}
.nb-layout > *{min-width:0}
@media (max-width:960px){ .nb-art{max-width:100%} .nb-body{overflow-wrap:anywhere} .nb-crumbs{overflow-wrap:anywhere} }
/* Comentario académico */
.nb-com{background:linear-gradient(180deg,#f3eff7,#fff 140px);border:1px solid #e0d6e9;border-radius:12px;padding:20px 22px}
.nb-com-lead{font:18px/1.6 var(--serif);color:#291e2f;margin:0 0 6px}
.nb-com-s{margin-top:14px;padding-top:12px;border-top:1px solid #e3d9eb}
.nb-com-s h5{margin:0 0 6px;font:700 11px var(--sans);letter-spacing:.09em;text-transform:uppercase;color:#563477}
.nb-com-s p{margin:0 0 8px;font:16px/1.65 var(--serif);color:#372c3e}
.nb-com-s ul{margin:0;padding-left:20px;font:16px/1.6 var(--serif);color:#372c3e}
.nb-com-s li{margin:3px 0}
.nb-com-s.ej{background:#f8f4fa;border:0;border-left:3px solid #6c4086;border-radius:8px;padding:10px 14px}
.nb-com-s.ej h5{color:#6c4086}
.nb-com-nota{display:block;margin-top:14px;font:12px/1.5 var(--sans);color:#938b97}
@media (max-width:600px){.nb-com{padding:16px 14px}.nb-com-lead{font-size:17px}.nb-com-s p,.nb-com-s ul{font-size:15.5px}}
/* Búsqueda: normas primero + sugerencias */
.nb-res-h{font:600 13px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#563477;margin:28px 0 12px}
.nb-res-h:first-child{margin-top:0}
.nb-nres{border:1px solid #ded8e4;border-radius:14px;background:#fff;padding:16px 18px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;box-shadow:0 1px 2px rgba(43, 18, 57,.04)}
.nb-nres-t{flex:1 1 320px;text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:3px}
.nb-nres-t small{font:600 11px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#938b97}
.nb-nres-t strong{font:600 19px/1.3 var(--serif);color:#2e1740}
.nb-nres-t span{font:14px var(--sans);color:#685d6e}
.nb-nres-a{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.nb-nres.big{background:linear-gradient(135deg,#faf6fc,#f6f2fa);border-color:#e6dbec;padding:22px 24px}
.nb-nres.big .nb-nres-t strong{font-size:26px}
.nb-nres-f{flex:1 1 100%;margin:4px 0 0}
.nb-nres-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}
.nb-nres-grid .nb-nres{flex-direction:column;align-items:flex-start}
.nb-nres-grid .nb-nres-t{flex:none}
.nb-fil{margin:0 0 10px}
.nb-fil button{cursor:pointer;font:inherit}
.nb-fil .on{background:#2e1740;color:#fff;border-color:#2e1740}
.nb-hint{font:13.5px/1.5 var(--sans);color:#786d7e;margin:0 0 14px}
.nb-ac{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:60;background:#fff;border:1px solid #e9e4eb;border-radius:12px;box-shadow:0 12px 32px rgba(43, 18, 57,.14);padding:6px;text-align:left}
.nb-ac-i{display:flex;flex-direction:column;gap:2px;padding:9px 12px;border-radius:8px;text-decoration:none;color:#291e2f}
.nb-ac-i strong{font:600 15px var(--sans)}
.nb-ac-i span{font:13px var(--sans);color:#786d7e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nb-ac-i:hover,.nb-ac-i.on{background:#f6f2f8}
.nb-ac-all{border-top:1px solid #f2eef4;margin-top:4px;padding-top:11px;font:600 14px var(--sans);color:#563477}
@media (max-width:600px){.nb-nres-grid{grid-template-columns:1fr}.nb-nres.big .nb-nres-t strong{font-size:22px}.nb-nres{padding:14px}}
/* Alertas por correo */
.nb-al-btn{cursor:pointer;font:inherit;background:#f5edfc;border-color:#c8b1dd;color:#563477}
.nb-modal{position:fixed;inset:0;z-index:200;background:rgba(33, 17, 43,.45);display:grid;place-items:center;padding:16px}
.nb-modal-c{position:relative;background:#fff;border-radius:16px;max-width:440px;width:100%;padding:26px 26px 22px;box-shadow:0 24px 60px rgba(43, 18, 57,.25)}
.nb-modal-c h3{margin:0 0 8px;font:600 22px var(--serif);color:#2e1740}
.nb-modal-c p{margin:0 0 14px;font:15px/1.55 var(--sans);color:#504556}
.nb-modal-c form{display:grid;gap:10px}
.nb-modal-c input[type=email]{font:16px var(--sans);padding:12px 14px;border:1px solid #ded6e2;border-radius:10px;width:100%;box-sizing:border-box}
.nb-modal-c small{font:12px/1.45 var(--sans);color:#938b97}
.nb-modal-x{position:absolute;top:10px;right:12px;border:0;background:none;font-size:26px;line-height:1;cursor:pointer;color:#786d7e}
.nb-chk{display:flex;gap:8px;align-items:center;font:14px var(--sans);color:#504556}
.nb-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.nb-al-msg{margin:0!important;font:14px/1.5 var(--sans)!important;color:#1f6b3a!important}
.nb-al-msg.err{color:#a3341f!important}
/* contenido para buscadores mientras carga la web */
.seo-pre{padding:48px 16px 64px;max-width:900px;margin:0 auto;font:16px/1.6 var(--serif, Georgia, serif);color:#372c3e}
.seo-pre h1{font-size:30px;line-height:1.2;color:#2e1740}
.seo-pre ul{padding-left:18px}
