/*
 * CPIC Distrito II · estilos del theme
 * Paleta: naranja #FE5722, negro, grises. Tipografía: Montserrat.
 */


:root{
  --orange:#FE5722;
  --orange-ink:#CF3F0E;
  --orange-tint:#FFEFE9;
  --ink:#1d1d1d;
  --text:#333333;
  --muted:#666a70;
  --paper:#ffffff;
  --grey:#f1f1f1;
  --line:#e3e3e5;
  --black:#000000;
  --display:"Montserrat","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --body:"Montserrat","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --wrap:1180px;
  --shadow:0 10px 30px rgba(29,29,29,.08);
  --shadow-lg:0 18px 44px rgba(29,29,29,.14);
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--text);font-family:var(--body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--display);color:var(--ink);line-height:1.15;text-wrap:balance;margin:0}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:12px}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 20px}

.topbar{font-size:13px}
.topbar .wrap{display:flex;justify-content:flex-end;gap:10px;padding-top:10px;padding-bottom:0;flex-wrap:wrap}
.topbar a{text-decoration:none;font-weight:600;background:var(--grey);padding:5px 14px;border-radius:99px}
.topbar a:hover{background:var(--orange-tint);color:var(--orange-ink)}

/* botones */
.btn{display:inline-block;margin-top:28px;background:var(--orange);color:#fff;font:700 15px var(--body);text-decoration:none;padding:15px 30px;border-radius:999px;border:0;cursor:pointer;transition:transform .2s,background .2s,color .2s,box-shadow .2s}
.btn:hover,.btn:focus-visible{background:var(--ink);color:#fff;transform:translateY(-2px);box-shadow:0 8px 18px rgba(29,29,29,.2)}
.btn:active{transform:translateY(0);box-shadow:none}
.btn.dark{background:var(--ink);color:#fff}
.btn.dark:hover,.btn.dark:focus-visible{background:var(--orange);color:#fff}

/* secciones */
section.blk{padding:72px 0}
section.blk.alt{background:var(--grey)}
.sec-h{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:34px;flex-wrap:wrap}
.sec-h h2{font-size:clamp(26px,3.2vw,38px);font-weight:800;position:relative;padding-bottom:16px}
.sec-h h2:after{content:"";position:absolute;left:0;bottom:0;width:64px;height:7px;border-radius:99px;background:var(--orange)}
.sec-h .cota{font-size:12px;font-weight:700;color:var(--orange-ink);letter-spacing:.06em;text-transform:uppercase;background:var(--orange-tint);padding:7px 16px;border-radius:99px}
.grid{display:grid;gap:24px}
.g3{grid-template-columns:repeat(3,1fr)}

/* noticias */
.news{background:var(--paper);border-radius:32px;display:flex;flex-direction:column;box-shadow:var(--shadow);padding:10px;transition:transform .2s,box-shadow .2s}
.news:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.news .ph{aspect-ratio:16/9;background:var(--ink);position:relative;overflow:hidden;display:grid;place-items:center;border-radius:24px}

.news .ph b{position:relative;color:#fff;font-weight:800;font-size:44px;letter-spacing:-.02em}
.news .bd{padding:20px 16px 14px;display:flex;flex-direction:column;gap:10px;flex:1}
.news-tag{font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--orange-ink);text-transform:uppercase;align-self:flex-start;background:var(--orange-tint);padding:5px 12px;border-radius:99px}
.news h3{font-size:19px;font-weight:700}
.news h3 a{text-decoration:none}
.news h3 a:hover{color:var(--orange-ink)}
.news p{margin:0;font-size:14.5px;color:var(--muted)}
.news time{margin-top:auto;font-size:13px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}
.center{text-align:center}

/* utilidades */

/* revistas */
.issue{background:var(--paper);border-radius:26px;display:flex;flex-direction:column;text-decoration:none;box-shadow:var(--shadow);padding:8px;transition:transform .2s,box-shadow .2s}
.issue:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.cover{aspect-ratio:3/4;background:var(--ink);color:#fff;position:relative;overflow:hidden;padding:16px;display:flex;flex-direction:column;justify-content:space-between;border-radius:20px}
.cover:before{content:"";position:absolute;right:-50px;bottom:-50px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(254,87,34,.75),rgba(254,87,34,0) 70%)}
.cover>*{position:relative}
.cover small{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--orange)}
.cover b{font-size:46px;font-weight:800;line-height:1;letter-spacing:-.03em}
.cover.pr{background:var(--orange);color:#000}
.cover.pr small{color:#000}
.cover.pr:before{background:radial-gradient(circle,rgba(255,255,255,.4),rgba(255,255,255,0) 70%)}
.issue .meta{padding:12px 8px 8px;display:flex;flex-direction:column;gap:2px}
.issue .meta em{font-style:normal;font-size:12px;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}
.issue .meta strong{font-size:15px;font-weight:700;color:var(--ink)}
.issue .meta .read{align-self:flex-start;margin-top:14px;display:inline-flex;align-items:center;gap:10px;padding:5px 5px 5px 16px;border-radius:999px;background:var(--grey);color:var(--ink);font-size:13px;font-weight:700;transition:background .2s,color .2s}
.issue .meta .read i{font-style:normal;width:28px;height:28px;border-radius:50%;background:var(--orange);color:#000;display:grid;place-items:center;font-size:14px;line-height:1;transition:transform .2s}
.issue:hover .meta .read{background:var(--ink);color:#fff}
.issue:hover .meta .read i{transform:translateX(3px)}
.pager{display:flex;gap:8px;justify-content:center;margin:30px 0 0}
.pager button{width:42px;height:42px;border:0;border-radius:50%;background:var(--grey);font:700 14px var(--body);cursor:pointer;color:var(--ink)}
.pager button.on,.pager button:hover{background:var(--orange);color:#000}
.stack>*+*{margin-top:64px}

/* enlaces */
.links{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}

/* delegaciones */
.deleg{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:stretch}
.map{position:relative;min-height:290px;background:#e6e8e8;overflow:hidden;border-radius:36px;box-shadow:var(--shadow)}
.map svg{position:absolute;inset:0;width:100%;height:100%}
.map a{position:absolute;left:16px;top:16px;background:var(--paper);padding:8px 16px;font-size:13px;font-weight:600;color:#1a56c4;text-decoration:none;box-shadow:0 2px 8px rgba(0,0,0,.2);border-radius:99px}
.deleg h3{font-size:32px;font-weight:800;margin-bottom:18px}
.dl{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.dl li{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:center}
.dl svg{width:44px;height:44px;padding:11px;border-radius:50%;background:var(--orange-tint);color:var(--orange-ink)}
.dl b{display:block;font-weight:700;color:var(--ink)}

/* páginas internas */
.page-hero{background-color:var(--ink);background-image:linear-gradient(115deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.78) 55%,rgba(254,87,34,.34) 100%),var(--hero-img,linear-gradient(transparent,transparent));background-size:cover;background-position:center;color:#fff;position:relative;overflow:hidden;margin:8px 16px 0;border-radius:44px}

.page-hero .wrap{position:relative;padding-top:54px;padding-bottom:54px;min-height:260px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.crumb{font-size:12px;font-weight:600;letter-spacing:.06em;color:#cfcfcf;display:inline-block;background:rgba(255,255,255,.1);padding:6px 16px;border-radius:99px}
.crumb a{text-decoration:none}
.crumb a:hover{color:var(--orange)}
.page-hero h1{color:#fff;font-size:clamp(30px,4.4vw,52px);font-weight:800;margin-top:18px}
.page-hero h1:after{content:"";display:block;width:84px;height:7px;border-radius:99px;background:var(--orange);margin-top:20px}
.prose{padding:56px 0 76px}
.prose .col{max-width:960px}
.prose h2{font-size:26px;font-weight:800;margin:48px 0 18px;position:relative;padding-bottom:14px}
.prose h2:after{content:"";position:absolute;left:0;bottom:0;width:52px;height:6px;border-radius:99px;background:var(--orange)}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:19px;font-weight:700;margin:28px 0 10px}
.prose p{margin:0 0 14px}
.prose ul.chk{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:10px}
.prose ul.chk li{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}
.prose ul.chk li.has-dl{align-items:center}
.prose ul.chk li:before{content:"";flex:none;margin-top:.1em;width:22px;height:22px;border-radius:50%;background:var(--orange-tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23CF3F0E' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12.5 4 4 8-9'/%3E%3C/svg%3E") center/14px no-repeat}
.dlbtn{display:inline-flex;align-items:center;gap:10px;background:var(--grey);padding:5px 20px 5px 5px;font-weight:700;font-size:14px;text-decoration:none;color:var(--ink);margin:4px 8px 10px 0;border-radius:99px;transition:background .2s,color .2s,transform .2s,box-shadow .2s}
.dlbtn svg{width:34px;height:34px;padding:8px;border-radius:50%;background:var(--orange);color:#000;flex:none;transition:transform .25s}
.dlbtn:hover,.dlbtn:focus-visible{background:var(--ink);color:#fff;transform:translateY(-2px);box-shadow:0 8px 18px rgba(29,29,29,.2)}
.dlbtn:hover svg,.dlbtn:focus-visible svg{animation:dl-nudge .7s ease-in-out infinite}
@keyframes dl-nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(3px)}}
.dlbtn:active{transform:translateY(0);box-shadow:none}
.prose ul.chk .dlbtn{margin:0}
.note{background:var(--orange-tint);padding:20px 24px;margin:0 0 24px;border-radius:26px}
.dashed{border:2px dashed #d3d3d6;padding:16px 20px;color:var(--muted);font-size:14px;margin:0;border-radius:20px}

/* institucional */
.org{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.card{background:var(--paper);padding:28px 30px;border-radius:32px;box-shadow:var(--shadow)}
.card h3{font-size:17px;font-weight:800;margin:0 0 16px;display:flex;align-items:center;gap:12px}
.card h3:before{content:"";width:12px;height:12px;border-radius:50%;background:var(--orange);flex:none}
.roster{list-style:none;margin:0;padding:0;display:grid}
.roster li{display:grid;grid-template-columns:150px 1fr;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.roster li:last-child{border:0}
.roster li span{font-weight:700;color:var(--ink);font-size:13px}
.roster.one li{grid-template-columns:1fr}
.org .full{grid-column:1/-1}
.cols2{columns:2;column-gap:40px}
.cols2 li{break-inside:avoid}

/* incumbencias */
.acc{display:grid;gap:12px;margin-bottom:36px}
details{background:var(--paper);border-radius:24px;box-shadow:var(--shadow)}
details[open]{box-shadow:var(--shadow-lg)}
summary{list-style:none;cursor:pointer;padding:18px 66px 18px 24px;font-weight:700;color:var(--ink);position:relative;font-size:15.5px;border-radius:24px}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";position:absolute;right:16px;top:50%;transform:translateY(-50%);width:34px;height:34px;display:grid;place-items:center;background:var(--orange-tint);color:var(--orange-ink);font-weight:800;border-radius:50%;font-size:18px}
details[open] summary:after{content:"–";background:var(--orange);color:#000}
details .in{padding:6px 24px 24px}
details .in ol,details .in ul{margin:12px 0 0;padding-left:22px;display:grid;gap:8px}

/* listas */
.ord{list-style:none;margin:0 0 30px;padding:0;display:grid;gap:8px}
.ord li{padding:14px 20px;background:var(--grey);border-radius:18px;font-size:14.5px;display:grid;grid-template-columns:200px 1fr;gap:16px}
.ord li b{color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}
.ord li.s{display:block}
.eq{display:grid;gap:18px}
.eq article{background:var(--paper);padding:24px 28px;border-radius:30px;box-shadow:var(--shadow)}
.eq h3{margin:0 0 10px;font-size:18px}
.eq p{margin:0 0 8px;font-size:14.5px}
.eq .rule{display:inline-block;background:var(--orange-tint);color:var(--orange-ink);font-weight:600;font-size:13px;padding:6px 14px;margin:4px 6px 0 0;border-radius:99px}
.dgroup{margin-bottom:34px;display:grid;gap:10px}
.drow{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px 10px 24px;background:var(--grey);border-radius:99px}
.drow span{font-weight:600;color:var(--ink)}
.drow .dlbtn{margin:0;flex:none;background:var(--paper)}
.drow .dlbtn:hover,.drow .dlbtn:focus-visible{background:var(--ink)}

/* formularios */
form.f{display:grid;gap:16px;max-width:620px}
form.f label{font-weight:700;font-size:14px;color:var(--ink);display:grid;gap:6px}
form.f input,form.f textarea{font:500 16px var(--body);padding:14px 20px;border:2px solid transparent;border-radius:999px;background:var(--grey);color:var(--text)}
form.f textarea{min-height:140px;resize:vertical;border-radius:26px}
form.f input:focus,form.f textarea:focus{border-color:var(--orange);outline:none;background:var(--paper)}
form.f .chkrow{display:flex;gap:10px;align-items:flex-start;font-weight:500}
form.f .chkrow input{margin-top:4px;width:18px;height:18px;padding:0}
.ok{display:none;background:var(--ink);color:#fff;padding:14px 22px;font-size:14px;border-radius:22px}
.ok.show{display:block}
.contact{display:grid;grid-template-columns:1.1fr .9fr;gap:44px}
.mails{list-style:none;padding:0;margin:0;display:grid;gap:8px}

/* footer */
footer.site{background:var(--black);color:#d6d6d6}
.caratula .wrap{padding-top:48px;padding-bottom:30px;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:24px}
.caratula .cell{padding:4px 0}
.caratula h4{color:var(--orange);font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;font-weight:700}
.caratula p{margin:0;font-size:14px;line-height:1.7}
.caratula a{text-decoration:none}
.legal{font-size:13px;color:#cfcfcf}
.legal-in{display:flex;align-items:center;justify-content:space-between;gap:16px 24px;flex-wrap:wrap;padding-top:20px;padding-bottom:28px;border-top:1px solid #2c2c2c}
.legal p{margin:0;font-size:13px;color:#cfcfcf}
.legal p a{color:inherit;text-decoration:none}
.legal p a:hover{color:var(--orange);text-decoration:underline}
.legal .made{display:block;line-height:0}
.legal .made img{display:block;height:36px;width:auto;opacity:.9;transition:opacity .2s,transform .2s}
.legal .made:hover img,.legal .made:focus-visible img{opacity:1;transform:translateY(-2px)}
@media (max-width:620px){.legal-in{flex-direction:column;align-items:flex-start}}

.logos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.logo{position:relative;display:grid;place-items:center;aspect-ratio:3/2;background:var(--paper);border-radius:30px;box-shadow:var(--shadow);overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .2s,box-shadow .2s}
.logo:hover,.logo:focus-visible{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.logo .mk{font-weight:800;font-size:clamp(26px,3vw,38px);letter-spacing:-.01em;text-align:center;line-height:1.05;padding:0 20px}
.logo .mk.sm{font-size:clamp(20px,2.2vw,27px)}
.logo .info{position:absolute;left:0;right:0;bottom:0;background:rgba(29,29,29,.58);-webkit-backdrop-filter:blur(12px) saturate(1.2);backdrop-filter:blur(12px) saturate(1.2);color:#fff;padding:18px 24px 20px;display:flex;flex-direction:column;justify-content:flex-end;gap:3px;transform:translateY(101%);transition:transform .28s ease;border-top:1px solid rgba(255,255,255,.35);overflow:hidden}
.logo .info>*{position:relative}
.logo:hover .info,.logo:focus-visible .info{transform:none}
.logo .info b{font-size:16px;font-weight:700;line-height:1.3;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.logo .info small{font-size:12.5px;font-weight:500;color:#e6e6e6}
.logo .info em.read{font-style:normal;align-self:flex-start;margin-top:10px;display:inline-flex;align-items:center;gap:10px;padding:5px 5px 5px 16px;border-radius:999px;background:#fff;color:var(--ink);font-size:13px;font-weight:700;text-shadow:none}
.logo .info em.read i{font-style:normal;width:28px;height:28px;border-radius:50%;background:var(--orange);color:#000;display:grid;place-items:center;font-size:14px;line-height:1;transition:transform .2s}
.logo:hover .info em.read i,.logo:focus-visible .info em.read i{transform:translateX(3px)}
@media (max-width:980px){.logos{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.logos{grid-template-columns:1fr}}
@media (hover:none){
  .logo{aspect-ratio:auto;grid-template-rows:1fr auto}
  .logo .mk{padding:34px 20px}
  .logo .info{position:static;transform:none;padding:14px 20px;background:var(--ink);-webkit-backdrop-filter:none;backdrop-filter:none;border-top:0}
}

/* barra naranja superior */
.topbar{background:var(--orange);font-size:14px}
.topbar .wrap{display:flex;justify-content:flex-start;gap:28px;padding-top:9px;padding-bottom:9px}
.topbar a{background:none;padding:0;border-radius:0;color:#fff;font-weight:600;display:inline-flex;align-items:center;gap:9px;text-decoration:none}
.topbar a:hover{background:none;color:#fff;text-decoration:underline}
.topbar svg{width:15px;height:15px;flex:none}
.g4{grid-template-columns:repeat(4,1fr)}

/* tapas boceto */
.cover{gap:12px;justify-content:flex-start;padding:18px}
.cover:before{right:-40px;bottom:-40px}
.cover i{display:block;border-radius:99px;position:relative}
.cover .m{width:58%;height:16px;background:var(--orange)}
.cover .p{flex:1;border-radius:16px;background:rgba(255,255,255,.1);min-height:60px}
.cover .l{height:8px;width:92%;background:rgba(255,255,255,.4)}
.cover .l.s{width:62%}
.cover.pr .m{background:var(--ink)}
.cover.pr .p{background:rgba(0,0,0,.14)}
.cover.pr .l{background:rgba(0,0,0,.4)}

/* nota individual */
.note-layout{display:grid;grid-template-columns:300px 1fr;gap:44px;align-items:start}
.note-layout .cover{aspect-ratio:3/4}
.note-layout .meta-d{display:inline-flex;gap:10px;align-items:center;font-weight:700;font-size:13px;color:var(--orange-ink);background:var(--orange-tint);padding:7px 16px;border-radius:99px;margin-bottom:18px}
.note-layout h2{font-size:24px;font-weight:800;margin:0 0 16px}
.note-layout p{margin:0 0 14px}
.note-layout p a{color:var(--orange-ink);font-weight:600;word-break:break-all}
.pn{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:54px}
.pn a{display:flex;flex-direction:column;gap:6px;background:var(--grey);border-radius:26px;padding:20px 26px;text-decoration:none;transition:background .15s}
.pn a:hover{background:var(--orange-tint)}
.pn small{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--orange-ink)}
.pn b{font-size:16px;color:var(--ink);line-height:1.3}
.pn a.r{text-align:right}

@media (max-width:980px){.g4{grid-template-columns:repeat(2,1fr)}.note-layout{grid-template-columns:1fr}.note-layout .cover{max-width:260px}.pn{grid-template-columns:1fr}.pn a.r{text-align:left}}

/* utilidades en filas */
.utg{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}
.ut{grid-column:span 2;display:flex;align-items:center;gap:20px;background:var(--paper);border-radius:36px;padding:16px 22px 16px 16px;text-decoration:none;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}
.ut:nth-child(n+4){grid-column:span 3}
.ut:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.ut .ic{width:88px;height:88px;border-radius:26px;background:var(--orange-tint);display:grid;place-items:center;flex:none;transition:background .2s}
.ut .ic svg{width:44px;height:44px;color:var(--orange-ink);fill:currentColor}
.ut .ic img{max-width:62px;max-height:62px;object-fit:contain}
.ut:hover .ic{background:var(--orange)}
.ut:hover .ic svg{color:#000}
.ut .tx{flex:1;font-weight:700;font-size:17px;line-height:1.3;color:var(--ink)}
.ut .go{width:42px;height:42px;border-radius:50%;background:var(--grey);display:grid;place-items:center;font-weight:700;color:var(--ink);flex:none;transition:background .2s}
.ut:hover .go{background:var(--orange);color:#000}
@media (max-width:980px){.utg{grid-template-columns:repeat(2,1fr)}.ut,.ut:nth-child(n+4){grid-column:span 1}.ut:last-child{grid-column:span 2}}
@media (max-width:620px){.utg{grid-template-columns:1fr}.ut:last-child{grid-column:auto}.ut .ic{width:72px;height:72px;border-radius:22px}.ut .ic svg{width:36px;height:36px}}


@media (max-width:980px){

  .g3{grid-template-columns:1fr}
  .links{grid-template-columns:repeat(2,1fr)}

  .deleg,.contact,.org{grid-template-columns:1fr}
  .caratula .wrap{grid-template-columns:1fr}

  .page-hero{border-radius:32px}
}
@media (max-width:620px){
  
  .links{grid-template-columns:1fr}
  .roster li{grid-template-columns:1fr;gap:2px}
  .ord li{grid-template-columns:1fr;gap:2px}
  .cols2{columns:1}
  
  .drow{flex-direction:column;align-items:flex-start;border-radius:26px;padding:14px 18px}
  section.blk{padding:50px 0}
  .page-hero{margin-left:8px;margin-right:8px}
  .card{padding:22px 20px}
}
@media (prefers-reduced-motion:reduce){.dlbtn:hover svg,.dlbtn:focus-visible svg{animation:none}.dlbtn:hover{transform:none}*{transition:none!important;scroll-behavior:auto!important}}


/* =========================================================
   Header, menú y buscador
   ========================================================= */
.site-header{position:sticky;top:0;z-index:40;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 6px 20px rgba(29,29,29,.05)}
.admin-bar .site-header{top:32px}
@media (max-width:782px){.admin-bar .site-header{top:46px}}
.site-header>.wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:84px;position:relative}
.brand{display:flex;align-items:center;gap:16px;text-decoration:none;color:inherit}
.brand img,.brand .custom-logo{height:68px;width:auto;max-width:none;flex:none}
.brand .bn{font-weight:600;font-size:15.5px;line-height:1.25;color:var(--ink);max-width:240px;letter-spacing:-.005em}
.brand .bn small{display:block;margin-top:3px;font-weight:400;font-size:12.5px;letter-spacing:.02em;color:var(--muted)}

.main-nav .menu{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px}
.main-nav li{position:relative}
.main-nav .menu>li>a{display:block;font:600 14.5px/1 var(--body);color:var(--ink);text-decoration:none;padding:13px 16px;border-radius:999px}
.main-nav .menu>li>a:hover,.main-nav .menu>li.current-menu-item>a,.main-nav .menu>li.current-menu-ancestor>a,.main-nav .menu>li.is-open>a{background:var(--orange-tint);color:var(--orange-ink)}
.main-nav .menu-item-has-children>a:after{content:"";display:inline-block;margin-left:7px;border:4px solid transparent;border-top-color:currentColor;border-bottom:0;vertical-align:2px}
.main-nav .sub-menu{list-style:none;margin:0;padding:10px;position:absolute;left:0;top:calc(100% + 6px);min-width:300px;background:var(--paper);border-radius:22px;box-shadow:var(--shadow-lg);display:none;flex-direction:column;align-items:stretch;gap:2px;z-index:5}
.main-nav .sub-menu:before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}
.main-nav li:hover>.sub-menu,.main-nav li:focus-within>.sub-menu,.main-nav li.is-open>.sub-menu{display:flex}
.main-nav .sub-menu a{display:block;text-align:left;padding:12px 16px;font-weight:500;font-size:14px;color:var(--ink);text-decoration:none;border-radius:14px}
.main-nav .sub-menu a:hover,.main-nav .sub-menu .current-menu-item>a{background:var(--orange-tint);color:var(--orange-ink)}

.header-tools{display:flex;align-items:center;gap:10px}
.search-btn,.menu-btn{border:0;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;cursor:pointer;flex:none}
.search-btn{background:var(--orange);color:#fff}
.search-btn:hover{background:var(--orange-ink)}
.menu-btn{display:none;background:var(--grey);color:var(--ink)}
.searchbar{display:none;padding:12px 0 16px;border-top:1px solid var(--line)}
.searchbar.open{display:block}
.searchform{display:flex;gap:8px;background:var(--paper);box-shadow:var(--shadow);border-radius:999px;padding:6px}
.searchform input[type=search]{flex:1;font:500 16px var(--body);padding:10px 18px;border:0;border-radius:999px;background:transparent;min-width:0;color:var(--text)}
.searchform input[type=search]:focus{outline:none}
.searchform button{font:700 14px var(--body);background:var(--orange);color:#000;border:0;border-radius:999px;padding:0 26px;cursor:pointer}

/* barra naranja */
.topbar svg{width:15px;height:15px;flex:none}

/* =========================================================
   Hero con fotos
   ========================================================= */
.hero{background:var(--ink);color:#fff;position:relative;overflow:hidden;margin:8px 16px 0;border-radius:44px;display:grid}
.slide{grid-area:1/1;position:relative;min-height:500px;isolation:isolate;opacity:0;visibility:hidden;transition:opacity 1s ease,visibility 0s linear 1s}
.slide.on{opacity:1;visibility:visible;z-index:1;transition:opacity 1s ease,visibility 0s}
.slide-bg{position:absolute;inset:0;background:var(--ink) var(--bg,none) center/cover no-repeat;z-index:-2;transform:scale(1);transition:transform 0s linear 1s}
.slide.on .slide-bg{transform:scale(1.07);transition:transform 12s ease-out}
.slide:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(rgba(254,87,34,.1),rgba(254,87,34,.1)),rgba(29,29,29,.1)}
.slide.no-img:after{content:"";position:absolute;right:-120px;bottom:-200px;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle at 40% 40%,rgba(254,87,34,.55),rgba(254,87,34,0) 68%);z-index:-1}
.slide .wrap{display:flex;flex-direction:column;justify-content:center;min-height:500px;padding-top:56px;padding-bottom:92px}
.slide .slide-in{max-width:760px;text-shadow:0 2px 22px rgba(0,0,0,.55),0 1px 3px rgba(0,0,0,.35)}
.slide .btn{text-shadow:none}
.slide h1,.slide h2{color:#fff;font-weight:800;font-size:clamp(28px,4.2vw,52px);letter-spacing:-.01em}
.slide h1 em,.slide h2 em{font-style:normal;color:var(--orange)}
.slide p{margin:16px 0 0;font-size:clamp(16px,1.6vw,20px);color:#ececec;max-width:34em}
.slide .by{margin-top:22px;display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:14px;color:#fff;text-shadow:none;background:rgba(0,0,0,.42);padding:9px 18px;border-radius:999px;backdrop-filter:blur(4px)}
.slide .by:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--orange)}
.hero-ctl{position:absolute;left:0;right:0;bottom:26px;z-index:3}
.hero-ctl .wrap{display:flex;align-items:center;gap:14px}
.dots{display:flex;gap:8px}
.dots button{width:12px;height:12px;border:0;background:rgba(255,255,255,.4);cursor:pointer;padding:0;border-radius:99px;transition:width .2s}
.dots button.on{background:var(--orange);width:36px}
.arrows{margin-left:auto;display:flex;gap:8px}
.arrows button{width:44px;height:44px;border:0;background:rgba(255,255,255,.16);color:#fff;cursor:pointer;font-size:18px;border-radius:50%}
.arrows button:hover{background:var(--orange);color:#000}

/* =========================================================
   Tarjetas con imágenes reales
   ========================================================= */
.news .ph img,.cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.news .ph{position:relative}
.news .ph b{position:relative}
.cover{position:relative}
.cover.has-img{padding:0}
.cover.has-img:before{display:none}
.news .news-tag a{text-decoration:none}


/* enlaces de interés: logos reales */
.logo img{max-width:72%;max-height:62%;width:auto;height:auto;object-fit:contain;display:block}

/* mapa de delegaciones */
.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.map a{z-index:2}

/* =========================================================
   Contenido, notas y revistas
   ========================================================= */
.entry>*:first-child{margin-top:0}
.entry p{margin:0 0 16px}
.entry h2{font-size:24px;font-weight:800;margin:30px 0 14px}
.entry h3{font-size:19px;font-weight:700;margin:24px 0 10px}
.entry a{color:var(--orange-ink);font-weight:600;word-break:break-word}
.entry img{max-width:100%;height:auto;border-radius:20px}
.entry ul,.entry ol{padding-left:22px;margin:0 0 16px}
.entry li{margin-bottom:6px}
.entry blockquote{margin:22px 0;padding:18px 24px;border-radius:24px;background:var(--orange-tint)}
.entry iframe{max-width:100%;border:0;border-radius:24px}
.entry .wp-video,.entry video{max-width:100%;border-radius:24px}
.entry figure{margin:0 0 20px}
.entry figcaption{font-size:13px;color:var(--muted);margin-top:8px}
.note-layout.no-thumb{grid-template-columns:1fr}
.note-layout.no-thumb .entry{max-width:820px}
.note-layout .thumb{border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}
.note-layout .thumb img{display:block;width:100%;height:auto;border-radius:0}
.flipwrap{border-radius:32px;overflow:hidden;box-shadow:var(--shadow-lg);background:var(--grey)}
.flipwrap>*{max-width:100%}
.flipwrap+.entry,.shead+.flipwrap{margin-top:0}
.shead{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.shead .meta-d{display:inline-flex;font-weight:700;font-size:13px;color:var(--orange-ink);background:var(--orange-tint);padding:7px 16px;border-radius:99px}
.alts{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 0}
.after-flip{margin-top:30px}

/* paginación */
.pager .page-numbers{width:42px;height:42px;border-radius:50%;background:var(--grey);font:700 14px/42px var(--body);color:var(--ink);text-align:center;text-decoration:none;display:block}
.pager .page-numbers.current,.pager a.page-numbers:hover{background:var(--orange);color:#000}
.pager .page-numbers.dots{background:none;width:auto;padding:0 4px}
.pager .page-numbers.prev,.pager .page-numbers.next{width:auto;padding:0 18px}

/* formularios */
.f .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.notice{border-radius:22px;padding:14px 22px;font-size:14.5px;margin:0 0 22px;font-weight:600}
.notice.ok{background:var(--ink);color:#fff;display:block}
.notice.err{background:#fde7e1;color:#8c2a0a}
form.f small{font-weight:500;color:var(--muted);font-size:12.5px}

/* búsqueda y 404 */
.results{display:grid;gap:14px}
.result{background:var(--grey);border-radius:24px;padding:20px 26px;text-decoration:none;display:block}
.result:hover{background:var(--orange-tint)}
.result h3{font-size:18px;margin:0 0 4px}
.result p{margin:0;font-size:14.5px;color:var(--muted)}
.result small{font-weight:700;color:var(--orange-ink);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.empty-msg{padding:40px 0;text-align:center}

/* incumbencias */
.inc-intro{margin:14px 0 8px}
.in ol.inc{margin:12px 0 0;padding-left:26px;display:grid;gap:8px}
.in ol.inc ol{margin:8px 0 4px;padding-left:24px;display:grid;gap:6px;list-style:decimal}

/* ordenanzas */
.ord li a{color:var(--ink);text-decoration:none;font-weight:700}
.ord li a:hover{color:var(--orange-ink);text-decoration:underline}
.ord-search{display:inline-flex;margin:0 0 26px}

@media (max-width:980px){
  .menu-btn{display:grid}
  .main-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);border-radius:0 0 28px 28px;box-shadow:var(--shadow-lg);max-height:75vh;overflow:auto}
  .main-nav.open{display:block}
  .main-nav .menu{flex-direction:column;align-items:stretch;gap:0;padding:12px 16px 16px}
  .main-nav .menu>li>a{border-radius:14px;padding:14px 16px}
  .main-nav .menu-item-has-children>a:after{display:none}
  .main-nav .sub-menu{position:static;display:flex;box-shadow:none;padding:0 0 8px 14px;min-width:0}
  .main-nav .sub-menu:before{display:none}
  .slide,.slide .wrap{min-height:440px}
}
@media (max-width:620px){
  .brand .bn{font-size:12.5px;max-width:170px}
  .brand .bn small{font-size:11px;margin-top:1px}
  .brand img,.brand .custom-logo{height:54px}
  .hero{margin-left:8px;margin-right:8px;border-radius:32px}
  .slide .wrap{padding-bottom:84px}
}
@media (prefers-reduced-motion:reduce){.slide,.slide.on{transition:none}.slide-bg,.slide.on .slide-bg{transition:none;transform:none}}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* brillos decorativos */
.news .ph.fallback:before{content:"";position:absolute;right:-40px;bottom:-60px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(254,87,34,.7),rgba(254,87,34,0) 70%)}

/* logos: imagen real; sigla solo si falla */
.logo .mk{display:none}
.logo.noimg .mk{display:block}
.logo.noimg img{display:none}
.empty-msg{padding:30px 0;color:var(--muted)}
.revista-content ._df_book,.revista-content .df-container{border-radius:32px;overflow:hidden}
.revista-content>*+*{margin-top:22px}
.search-btn svg,.menu-btn svg{width:20px;height:20px}

/* campus: logos más grandes */
.logos.campus .logo img{width:96%;max-width:96%;max-height:96%;height:auto;object-fit:contain}

/* botón Leer en noticias */
.news time{margin-top:0}
.news .foot{margin-top:auto;padding-top:6px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.news .read{display:inline-flex;align-items:center;gap:10px;padding:5px 5px 5px 16px;border-radius:999px;background:var(--grey);color:var(--ink);font-size:13px;font-weight:700;text-decoration:none;transition:background .2s,color .2s}
.news .read i{font-style:normal;width:28px;height:28px;border-radius:50%;background:var(--orange);color:#000;display:grid;place-items:center;font-size:14px;line-height:1;transition:transform .2s}
.news:hover .read{background:var(--ink);color:#fff}
.news:hover .read i{transform:translateX(3px)}

/* hover propio de los botones Leer / Visitar sitio */
.issue .meta .read:hover,.news .read:hover,.logo .info em.read:hover{background:var(--orange);color:#fff;box-shadow:0 6px 14px rgba(254,87,34,.35)}
.issue .meta .read:hover i,.news .read:hover i,.logo .info em.read:hover i{background:#fff;color:#000;transform:translateX(4px)}

/* correos de contacto */
.mails a.mrow{display:flex;align-items:center;gap:14px;padding:8px 22px 8px 8px;background:var(--grey);border-radius:99px;text-decoration:none;color:var(--ink);font-size:15px;transition:background .2s,color .2s,transform .2s,box-shadow .2s}
.mails .mi{width:40px;height:40px;border-radius:50%;background:var(--orange);color:#000;display:grid;place-items:center;flex:none;transition:transform .25s,background .2s,color .2s}
.mails .mi svg{width:18px;height:18px}
.mails .mrow b{flex:none;min-width:92px;font-weight:700}
.mails .addr{margin-left:auto;font-weight:600;color:var(--orange-ink);text-align:right;overflow-wrap:anywhere;transition:color .2s}
.mails a.mrow:hover,.mails a.mrow:focus-visible{background:var(--ink);color:#fff;transform:translateX(5px);box-shadow:0 8px 18px rgba(29,29,29,.18)}
.mails a.mrow:hover .addr,.mails a.mrow:focus-visible .addr{color:#fff}
.mails a.mrow:hover .mi,.mails a.mrow:focus-visible .mi{transform:rotate(-12deg) scale(1.08)}
@media (max-width:520px){.mails a.mrow{flex-wrap:wrap;border-radius:26px}.mails .addr{margin-left:54px;text-align:left;width:100%}.mails .mrow b{min-width:0}}

/* evita renglones huérfanos al final de los párrafos */
.prose p,.note p{text-wrap:pretty}
