/* Revista Todo Pirque — sitio web
   Paleta tomada de la revista: tinta, crema y verde azulado editorial. */
:root{
  --ink:#1f1d1b; --ink-2:#4a4642; --muted:#8a847c; --line:#e7e3dd; --line-2:#d8d2c9;
  --bg:#f8f7f4; --paper:#ffffff; --cream:#efece6; --teal:#7d6b57; --teal-d:#2a2724; --teal-l:#ece6dd;
  --accent:#7d6b57; --wa:#2a2724;
  --serif:"Newsreader", "Tiempos Headline", Georgia, "Times New Roman", serif;
  --sans:"Inter", -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --r-lg:28px; --r-md:20px; --r-sm:14px;
  --shadow:0 1px 2px rgba(0,0,0,.04), 0 12px 40px -12px rgba(30,30,20,.18);
  --max:1240px; --gutter:clamp(16px,4vw,40px);
  --ease:cubic-bezier(.2,.7,.2,1);
}
@font-face{font-family:"Newsreader";font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/newsreader-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Newsreader";font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/newsreader-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Newsreader";font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/newsreader-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Newsreader";font-style:italic;font-weight:400;font-display:swap;src:url(assets/fonts/newsreader-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"Newsreader";font-style:italic;font-weight:500;font-display:swap;src:url(assets/fonts/newsreader-latin-500-italic.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/inter-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/inter-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:700;font-display:swap;src:url(assets/fonts/inter-latin-700-normal.woff2) format("woff2")}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.55 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
em{font-style:italic;color:var(--accent)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:8px 14px;border-radius:8px;z-index:100}
.skip:focus{left:8px}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:6px}

/* ---------- Header (vidrio esmerilado) */
.site-header{position:sticky;top:0;z-index:50;background:rgba(248,247,244,.78);backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px);border-bottom:1px solid transparent;transition:border-color .3s, background .3s}
.site-header.is-scrolled{border-bottom-color:var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:60px}
.brand{display:flex;align-items:center;color:var(--ink)}
.logo-svg{height:19px;width:auto;display:block}
.nav{display:flex;align-items:center;gap:28px;font-size:14px;letter-spacing:-.01em}
.nav a{color:var(--ink-2);transition:color .2s}
.nav a:hover,.nav a.is-active{color:var(--ink)}
.nav-cta{background:var(--ink);color:#fff!important;padding:7px 14px;border-radius:999px;font-weight:500}
.nav-cta:hover{background:#000}
.nav-toggle{display:none;background:none;border:0;width:40px;height:40px;position:relative;cursor:pointer}
.nav-toggle span{position:absolute;left:10px;right:10px;height:1.6px;background:var(--ink);transition:transform .3s var(--ease),top .3s var(--ease)}
.nav-toggle span:first-child{top:16px}.nav-toggle span:last-child{top:23px}
.nav-open .nav-toggle span:first-child{top:19.5px;transform:rotate(45deg)}
.nav-open .nav-toggle span:last-child{top:19.5px;transform:rotate(-45deg)}

/* ---------- Tipografía */
.eyebrow{font:600 12px/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--teal);margin:0 0 14px}
.eyebrow--light{color:#c8b9a4}
.h-display{font:500 clamp(40px,6.4vw,84px)/1.02 var(--serif);letter-spacing:-.025em;margin:0 0 20px}
.h-section{font:500 clamp(32px,4.6vw,56px)/1.05 var(--serif);letter-spacing:-.02em;margin:0}
.h-light{color:#fff}.h-light em{color:#d6c3a5}
.lead{font:400 clamp(19px,2vw,22px)/1.5 var(--serif);color:var(--ink-2);margin:0 0 18px}
.byline{font-size:14px;color:var(--ink-2);margin:0 0 4px}
.byline--muted{color:var(--muted)}
.center{text-align:center}
.link-arrow,.card-more,.aviso-nota{display:inline-flex;align-items:center;gap:6px;color:var(--teal);font-weight:500;font-size:15px}
.link-arrow svg,.card-more svg,.aviso-nota svg,.btn svg{width:18px;height:18px;transition:transform .3s var(--ease)}
.link-arrow:hover svg,.card:hover .card-more svg,.aviso-nota:hover svg,.btn:hover svg{transform:translateX(3px)}

/* ---------- Botones */
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:999px;font-weight:500;font-size:16px;transition:transform .2s var(--ease),background .2s,color .2s,box-shadow .2s;border:1px solid transparent}
.btn:active{transform:scale(.98)}
.btn--dark{background:var(--ink);color:#fff}.btn--dark:hover{background:#000}
.btn--ghost{color:var(--teal)}.btn--ghost:hover{background:var(--teal-l)}
.btn--light{background:#f8f7f4;color:#2a2724}.btn--light:hover{background:#f3f3f3}
.btn--outline-light{border-color:rgba(255,255,255,.5);color:#fff}.btn--outline-light:hover{background:rgba(255,255,255,.1)}

/* ---------- Hero */
.hero{padding:clamp(48px,9vw,120px) 0 clamp(40px,6vw,80px)}
.hero-text{text-align:center;max-width:980px}
.hero-kicker{font:500 15px/1 var(--sans);color:var(--muted);margin:0 0 22px;letter-spacing:-.01em}
.hero-title{font:500 clamp(46px,8.6vw,118px)/.98 var(--serif);letter-spacing:-.035em;margin:0 0 26px}
.hero-dek{font:400 clamp(18px,2vw,22px)/1.5 var(--sans);color:var(--ink-2);max-width:680px;margin:0 auto 32px;letter-spacing:-.01em}
.dir-hero .hero-dek{margin-left:0}
.hero-cta{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.hero-media{margin-top:clamp(40px,6vw,72px)}
.hero-img{border-radius:var(--r-lg);overflow:hidden;aspect-ratio:16/8.2;background:#2b3a1d;box-shadow:var(--shadow)}
.hero-img img{width:100%;height:100%;object-fit:cover;object-position:50% 46%;transform:scale(1.06);transition:transform 1.6s var(--ease)}
.hero-media.is-in .hero-img img{transform:scale(1)}
.hero-media figcaption,.nota-figure figcaption{font-size:13px;color:var(--muted);margin-top:12px;text-align:center}
.hero-media figcaption em{color:var(--ink-2)}

/* ---------- Secciones */
.section{padding:clamp(64px,9vw,120px) 0}
.section--tint{background:var(--cream)}
.section-head{margin-bottom:clamp(32px,4vw,56px);max-width:820px}
.section-head--split{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;max-width:none}
.section-aside{max-width:380px;color:var(--ink-2);margin:0;font-size:16px}
.sub-head{font:600 13px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:72px 0 24px;padding-top:28px;border-top:1px solid var(--line)}

/* Editorial + índice */
.editorial-band{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.editorial-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(40px,7vw,110px);align-items:start}
.ed-copy{position:sticky;top:100px}
.ed-copy .h-display{font-size:clamp(38px,5vw,64px)}
.index-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.index-list a{display:flex;gap:18px;align-items:baseline;padding:14px 0;border-bottom:1px solid var(--line);transition:padding .3s var(--ease)}
.index-list a:hover{padding-left:6px}
.idx-pg{font:500 22px/1 var(--serif);color:var(--teal);min-width:32px}
.idx-t{font:400 18px/1.3 var(--serif)}
.idx-t small{display:block;font:600 10.5px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}

/* ---------- Cards */
.grid{display:grid;gap:clamp(18px,2.4vw,28px)}
.grid--feature{grid-template-columns:repeat(3,1fr)}
.grid--compact{grid-template-columns:repeat(3,1fr)}
.grid--four{grid-template-columns:repeat(4,1fr)}
.grid--four .card-title{font-size:19px}
.grid--four .card-dek{-webkit-line-clamp:2}
.card{display:flex;flex-direction:column;background:var(--paper);border-radius:var(--r-md);overflow:hidden;box-shadow:0 0 0 1px var(--line);transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.card:hover{transform:translateY(-4px);box-shadow:0 0 0 1px var(--line-2),var(--shadow)}
.card-media{aspect-ratio:4/3;overflow:hidden;background:var(--cream)}
.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.card:hover .card-media img{transform:scale(1.04)}
.card-body{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1}
.card-title{font:500 24px/1.15 var(--serif);letter-spacing:-.015em;margin:0 0 10px}
.card-dek{font-size:15px;color:var(--ink-2);margin:0 0 18px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.card-more{margin-top:auto}
.card--wide{grid-column:1/-1;flex-direction:row}
.card--wide .card-media{flex:1.35;aspect-ratio:auto;min-height:420px}
.card--wide .card-body{flex:1;padding:clamp(28px,4vw,56px);justify-content:center}
.card--wide .card-title{font-size:clamp(32px,3.6vw,48px);line-height:1.05}
.card--wide .card-dek{font-size:17px;-webkit-line-clamp:5}
.card--compact .card-media{aspect-ratio:4/3}
.card--compact .card-title{font-size:21px}

/* ---------- Agenda */
.agenda{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 18px;scrollbar-width:thin}
.ev{scroll-snap-align:start;background:var(--paper);border-radius:var(--r-md);padding:24px;display:flex;flex-direction:column;gap:10px;min-height:230px;box-shadow:0 0 0 1px var(--line);transition:transform .35s var(--ease),box-shadow .35s}
.ev:hover{transform:translateY(-3px);box-shadow:0 0 0 1px var(--line-2),var(--shadow)}
.ev-date{display:flex;align-items:baseline;gap:8px;font:600 13px/1 var(--sans);text-transform:uppercase;letter-spacing:.12em;color:var(--teal)}
.ev-date b{font:500 46px/1 var(--serif);letter-spacing:-.03em;color:var(--ink);text-transform:none}
.ev-t{font:500 21px/1.2 var(--serif);margin-top:auto}
.ev-l{font-size:14px;color:var(--muted)}

/* ---------- Categorías (home) */
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:44px}
.cat-tile{display:flex;align-items:center;gap:18px;padding:26px 26px;border-radius:var(--r-md);background:var(--paper);box-shadow:0 0 0 1px var(--line);transition:background .25s,transform .35s var(--ease)}
.cat-tile:hover{background:#2a2724;color:#fff;transform:translateY(-2px)}
.cat-tile:hover .cat-n{color:#fff}
.cat-n{font:500 34px/1 var(--serif);color:var(--teal);min-width:42px}
.cat-t{font:500 22px/1.15 var(--serif);letter-spacing:-.01em;flex:1}
.cat-tile svg{width:20px;height:20px;opacity:.6}

/* ---------- Teléfonos */
.tel-row{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--line-2);margin-bottom:40px}
.tel-big{padding:28px 18px 24px;border-left:1px solid var(--line-2);transition:background .2s}
.tel-big:first-child{border-left:0;padding-left:0}
.tel-big:hover{background:rgba(125,107,87,.07)}
.tel-big b{display:block;font:500 clamp(44px,6vw,76px)/1 var(--serif);color:var(--teal);letter-spacing:-.03em}
.tel-big span{font:600 11px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}
.tel-groups{display:grid;grid-template-columns:repeat(5,1fr);gap:28px}
.tel-group h4{font:600 11px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--teal);margin:0 0 14px}
.tel-group ul{list-style:none;margin:0;padding:0}
.tel-group li{margin-bottom:12px;font-size:14px;color:var(--ink-2)}
.tel-group li span{display:block}
.tel-group li a{font-weight:600;color:var(--ink)}

/* ---------- Publica */
.publica{background:#2a2724;color:#fff}
.publica-inner{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}
.publica-dek{color:#bdb5aa;max-width:560px;margin:20px 0 0;font-size:18px}
.publica-actions{display:flex;flex-direction:column;gap:10px;flex-shrink:0}

/* ---------- Nota */
.nota-head{max-width:900px;padding-top:clamp(36px,6vw,72px);text-align:center}
.back{display:inline-block;font-size:14px;color:var(--muted);margin-bottom:34px}
.back:hover{color:var(--ink)}
.nota-title{font:500 clamp(40px,6vw,76px)/1.02 var(--serif);letter-spacing:-.03em;margin:0 0 22px}
.nota-dek{font:400 clamp(19px,2.1vw,23px)/1.45 var(--serif);font-style:italic;color:var(--ink-2);margin:0 auto 24px;max-width:760px}
.nota-meta{margin-bottom:8px}
.nota-figure{margin-top:clamp(28px,4vw,48px);max-width:1100px}
.nota-img{border-radius:var(--r-lg);overflow:hidden;background:var(--cream);max-height:78vh;display:flex;justify-content:center;box-shadow:var(--shadow)}
.nota-img img{width:100%;height:auto;max-height:78vh;object-fit:cover;object-position:50% 22%}
.nota-layout{display:grid;grid-template-columns:minmax(0,680px) 280px;gap:64px;justify-content:center;padding-top:clamp(40px,5vw,64px);padding-bottom:clamp(64px,8vw,110px)}
.prose{font:400 20px/1.7 var(--serif);color:#26262a}
.prose p{margin:0 0 1.15em}
.prose p.first::first-letter{float:left;font:500 4.1em/.82 var(--serif);margin:.06em .1em 0 0;color:var(--teal)}
.prose h2{font:600 15px/1.3 var(--sans);letter-spacing:.02em;color:var(--teal);margin:2.2em 0 .8em}
.prose b{font-weight:600;color:var(--ink)}
.pull{margin:2em 0;padding:0 0 0 26px;border-left:2px solid var(--teal)}
.pull p{font:400 clamp(24px,2.6vw,30px)/1.3 var(--serif);font-style:italic;color:var(--ink);margin:0 0 12px}
.pull p::before{content:"“"}.pull p::after{content:"”"}
.pull cite{font:600 11px/1.4 var(--sans);font-style:normal;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.infobox{margin:2.4em 0 0;padding:22px 24px;background:var(--cream);border-radius:var(--r-sm);font:400 15px/1.5 var(--sans);display:grid;gap:12px}
.infobox div{display:grid;grid-template-columns:150px 1fr;gap:14px}
.infobox dt{font-weight:600;color:var(--ink)}
.infobox dd{margin:0;color:var(--ink-2)}
.infobox a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}

.nota-aviso{position:sticky;top:90px;align-self:start}
.nota-aviso a{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--r-sm);background:var(--paper);box-shadow:0 0 0 1px var(--line);margin-bottom:10px;transition:box-shadow .3s}
.nota-aviso a:hover{box-shadow:0 0 0 1px var(--line-2),var(--shadow)}
.nota-aviso img{width:64px;height:64px;object-fit:cover;border-radius:10px}
.nota-aviso span{flex:1;font-size:13px;color:var(--muted);line-height:1.35}
.nota-aviso b{display:block;color:var(--ink);font-size:15px}
.nota-aviso svg{width:18px;height:18px;color:var(--teal)}

/* ---------- Directorio */
.dir-hero{padding:clamp(48px,8vw,104px) 0 clamp(24px,3vw,40px)}
.dir-tools{position:sticky;top:60px;z-index:40;background:rgba(248,247,244,.86);backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px);border-bottom:1px solid var(--line)}
.dir-tools-inner{display:flex;gap:16px;align-items:center;padding-top:12px;padding-bottom:12px}
.search{display:flex;align-items:center;gap:8px;background:#fff;border-radius:999px;padding:0 16px;height:44px;box-shadow:0 0 0 1px var(--line-2);flex:0 0 320px}
.search svg{width:18px;height:18px;color:var(--muted)}
.search input{border:0;outline:0;background:transparent;font:inherit;font-size:15px;width:100%;color:var(--ink)}
.chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px}
.chips::-webkit-scrollbar{display:none}
.chip{flex:0 0 auto;border:0;background:#fff;box-shadow:0 0 0 1px var(--line-2);border-radius:999px;padding:9px 14px;font-size:14px;cursor:pointer;transition:background .2s,color .2s;white-space:nowrap}
.chip span{color:var(--muted);margin-left:4px;font-size:12px}
.chip:hover{background:var(--cream)}
.chip.is-on{background:var(--ink);color:#fff;box-shadow:none}
.chip.is-on span{color:#bbb}
.dir-body{padding-top:24px;padding-bottom:100px}
.dir-cat{padding-top:44px;scroll-margin-top:140px}
.dir-cat-title{font:500 34px/1.1 var(--serif);letter-spacing:-.02em;margin:0 0 22px;display:flex;align-items:baseline;gap:12px}
.dir-cat-title span{font:500 15px/1 var(--sans);color:var(--muted)}
.dir-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.aviso{display:grid;grid-template-columns:230px 1fr;background:var(--paper);border-radius:var(--r-md);box-shadow:0 0 0 1px var(--line);overflow:hidden;scroll-margin-top:150px}
.aviso:target{box-shadow:0 0 0 2px var(--teal),var(--shadow)}
.aviso-media{position:relative;border:0;padding:0;margin:0;background:var(--cream);cursor:zoom-in;overflow:hidden}
.aviso-media img{width:100%;height:100%;object-fit:contain;padding:14px;transition:transform .7s var(--ease);filter:drop-shadow(0 4px 10px rgba(0,0,0,.08))}
.aviso-media:hover img{transform:scale(1.04)}
.zoom-hint{position:absolute;left:10px;bottom:10px;background:rgba(29,29,31,.72);color:#fff;font-size:12px;padding:5px 10px;border-radius:999px;opacity:0;transform:translateY(4px);transition:all .3s var(--ease)}
.aviso-media:hover .zoom-hint,.aviso-media:focus-visible .zoom-hint{opacity:1;transform:none}
.aviso-body{padding:22px 24px}
.aviso-body .eyebrow{margin-bottom:8px;font-size:11px}
.aviso h3{font:500 25px/1.1 var(--serif);letter-spacing:-.015em;margin:0 0 4px}
.aviso-rubro{font-size:14px;color:var(--muted);margin:0 0 12px}
.aviso-desc{font-size:15px;color:var(--ink-2);margin:0 0 14px}
.aviso-meta{list-style:none;padding:0;margin:0 0 16px;display:grid;gap:6px}
.aviso-meta li{display:flex;gap:8px;font-size:14px;color:var(--ink-2)}
.aviso-meta svg{width:17px;height:17px;flex:0 0 17px;color:var(--teal);margin-top:2px}
.aviso-actions{display:flex;flex-wrap:wrap;gap:8px}
.btn-c{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:var(--bg);box-shadow:0 0 0 1px var(--line-2);font-size:13.5px;font-weight:500;transition:background .2s,box-shadow .2s;max-width:100%}
.btn-c span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.btn-c svg{width:16px;height:16px;flex:0 0 16px}
.btn-c:hover{background:var(--cream)}
.btn-c--wa{background:var(--wa);color:#fff;box-shadow:none}
.btn-c--wa:hover{background:#000}
.aviso-nota{margin-top:16px;font-size:14px}
.dir-empty{text-align:center;color:var(--muted);padding:60px 0}
.dir-note{margin-top:64px;text-align:center;color:var(--muted);font-size:15px}
.dir-note a{color:var(--teal)}
.is-hidden{display:none!important}

.lightbox{position:fixed;inset:0;z-index:100;background:rgba(18,18,20,.86);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;transition:opacity .3s}
.lightbox.is-open{opacity:1}
.lightbox[hidden]{display:none}
.lightbox img{max-width:min(1000px,100%);max-height:88vh;border-radius:12px;box-shadow:0 30px 80px rgba(0,0,0,.5);background:#fff}
.lb-close{position:absolute;top:14px;right:18px;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font-size:28px;line-height:1;cursor:pointer}

/* ---------- Footer */
.site-footer{background:#151516;color:#a1a1a6;padding:72px 0 28px;font-size:14px}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr .8fr;gap:48px}
.brand--footer{color:#f5f5f7;margin-bottom:18px}
.brand--footer .logo-svg{height:22px}
.footer-brand p{margin:0 0 10px;max-width:360px}
.footer-links a,.site-footer a:hover{color:#f5f5f7}
.site-footer h4{color:#f5f5f7;font:600 12px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;margin:6px 0 18px}
.site-footer ul{list-style:none;margin:0;padding:0}
.site-footer li{margin-bottom:10px}
.footer-team span{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#6e6e73}
.footer-team a{color:#a1a1a6}
.footer-base{border-top:1px solid #2c2c2e;margin-top:48px;padding-top:22px;font-size:12px;color:#6e6e73}

/* ---------- Reveal (con red de seguridad) */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.reveal.is-in{opacity:1;transform:none}
.no-js .reveal,.reveal-all .reveal{opacity:1;transform:none}
.reveal[data-split]{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){.hero-img img{transition:none;transform:none}}

/* ---------- Responsive */
@media (max-width:1080px){
  .grid--feature,.grid--compact,.grid--four{grid-template-columns:repeat(2,1fr)}
  .tel-groups{grid-template-columns:repeat(3,1fr)}
  .nota-layout{grid-template-columns:minmax(0,680px)}
  .nota-aviso{position:static}
  .dir-grid{grid-template-columns:1fr}
}
@media (max-width:820px){
  .nav-toggle{display:block}
  .nav{position:fixed;inset:60px 0 auto 0;flex-direction:column;align-items:flex-start;gap:0;background:rgba(248,247,244,.97);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:8px var(--gutter) 24px;border-bottom:1px solid var(--line);transform:translateY(-8px);opacity:0;pointer-events:none;transition:all .3s var(--ease)}
  .nav a{font-size:22px;font-family:var(--serif);padding:12px 0;width:100%;border-bottom:1px solid var(--line);color:var(--ink)}
  .nav-cta{margin-top:16px;width:auto!important;border:0!important;font-family:var(--sans)!important;font-size:16px!important;padding:12px 20px!important}
  .nav-open .nav{transform:none;opacity:1;pointer-events:auto}
  .editorial-grid{grid-template-columns:1fr}
  .ed-copy{position:static}
  .section-head--split,.publica-inner{flex-direction:column;align-items:flex-start}
  .card--wide{flex-direction:column}
  .card--wide .card-media{min-height:0;aspect-ratio:4/3}
  .cat-grid{grid-template-columns:repeat(2,1fr)}
  .tel-row{grid-template-columns:repeat(3,1fr)}
  .tel-big:nth-child(4){border-left:0;padding-left:0}
  .tel-big{border-top:1px solid var(--line-2)}
  .tel-big:nth-child(-n+3){border-top:0}
  .footer-grid{grid-template-columns:1fr}
  .dir-tools-inner{flex-direction:column;align-items:stretch;gap:10px}
  .search{flex:auto}
  .hero-img{aspect-ratio:4/5}
}
@media (max-width:620px){
  body{font-size:16px}
  .grid--feature,.grid--compact,.grid--four{grid-template-columns:1fr}
  .cat-grid{grid-template-columns:1fr}
  .tel-groups{grid-template-columns:repeat(2,1fr)}
  .aviso{grid-template-columns:1fr}
  .aviso-media{aspect-ratio:4/3}
  .prose{font-size:18.5px}
  .infobox div{grid-template-columns:1fr;gap:2px}
  .agenda{grid-auto-columns:78%}
  .hero-text{text-align:left}
  .hero-cta{justify-content:flex-start}
  .hero-dek{margin-left:0}
}

/* ---------- Banner (estilo editorial a sangre) */
.banner{position:relative;height:min(88vh,880px);min-height:560px;overflow:hidden;background:#2a2724;color:#fff}
.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.1s var(--ease),visibility 0s 1.1s}
.slide.is-active{opacity:1;visibility:visible;transition:opacity 1.1s var(--ease)}
.slide-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 8s linear}
.slide.is-active .slide-bg{transform:scale(1)}
.slide-bg--blur{filter:blur(28px) saturate(.75) brightness(.7);transform:scale(1.2)!important}
.slide-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,18,16,0) 35%,rgba(20,18,16,.62) 100%),linear-gradient(90deg,rgba(20,18,16,.35) 0%,rgba(20,18,16,0) 55%)}
.slide-shade--cover{background:linear-gradient(90deg,rgba(32,29,26,.78) 0%,rgba(32,29,26,.45) 60%,rgba(32,29,26,.25) 100%)}
.slide-copy{position:absolute;left:0;right:0;bottom:clamp(48px,8vh,88px)}
.slide-eyebrow{font:600 12px/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:#e3d8c8;margin:0 0 14px}
.slide-title{font:500 clamp(34px,4.6vw,62px)/1.02 var(--serif);text-transform:uppercase;letter-spacing:-.01em;margin:0 0 14px;max-width:760px;text-wrap:balance}
.slide-title--xl{font-size:clamp(40px,4.4vw,64px)}
.slide-dek{font-size:clamp(16px,1.5vw,18px);line-height:1.5;color:#efe9e0;max-width:520px;margin:0 0 24px}
.btn-sq{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#1f1d1b;font:600 12.5px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;padding:15px 22px;transition:background .2s,color .2s}
.btn-sq:hover{background:#efe9e0}
.btn-sq--line{background:transparent;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}
.btn-sq--line:hover{background:rgba(255,255,255,.12)}
.slide-ctas{display:flex;gap:10px;flex-wrap:wrap}
.cover-grid{position:relative;height:100%;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:48px}
.slide-copy--cover{position:static}
.cover-mag{justify-self:center;display:block;height:min(74vh,720px);aspect-ratio:609/794;box-shadow:0 2px 4px rgba(0,0,0,.2),0 40px 80px -20px rgba(0,0,0,.6);transition:transform .6s var(--ease)}
.cover-mag img{width:100%;height:100%;object-fit:cover}
.cover-mag:hover{transform:translateY(-6px) rotate(-.6deg)}
.banner-dots{position:absolute;right:var(--gutter);bottom:28px;display:flex;gap:6px;z-index:3}
.dot{border:0;background:none;padding:10px 0;cursor:pointer}
.dot span{display:block;width:36px;height:2px;background:rgba(255,255,255,.4);position:relative;overflow:hidden}
.dot.is-on span::after{content:"";position:absolute;inset:0;background:#fff;transform-origin:left;animation:dotfill 7s linear forwards}
.banner.is-paused .dot.is-on span::after{animation-play-state:paused}
@keyframes dotfill{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* ---------- Flipbook */
.fb{background:#ece8e1;padding:clamp(36px,5vw,64px) 0 48px}
.fb-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px}
.fb-hint{color:var(--muted);font-size:14px;margin:0}
.fb-stage{position:relative;display:flex;align-items:center;justify-content:center;padding:0 64px;min-height:300px}
.fb-book{width:100%;max-width:min(1100px,calc((100vh - 310px) * 1.536));margin:0 auto}
.fb-page{background:#fff}
.fb-page img{width:100%;height:100%;object-fit:cover;display:block;user-select:none;-webkit-user-drag:none}
.fb-book:not(.is-ready){display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.fb-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:0;background:#fff;box-shadow:var(--shadow);font-size:28px;line-height:1;cursor:pointer;color:var(--ink);z-index:5}
.fb-prev{left:8px}.fb-next{right:8px}
.fb-nav:hover{background:var(--ink);color:#fff}
.fb-bar{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:22px;font-size:14px;color:var(--ink-2)}
.fb-full{border:0;background:none;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:14px;color:var(--ink-2)}
.fb-thumbs{display:flex;gap:10px;overflow-x:auto;padding:24px var(--gutter) 6px;max-width:var(--max);margin:0 auto;scrollbar-width:thin}
.fb-thumb{flex:0 0 64px;border:0;padding:0;background:none;cursor:pointer;text-align:center;opacity:.7;transition:opacity .2s}
.fb-thumb:hover,.fb-thumb.is-on{opacity:1}
.fb-thumb img{width:64px;height:83px;object-fit:cover;box-shadow:0 1px 3px rgba(0,0,0,.15)}
.fb-thumb.is-on img{outline:2px solid var(--ink);outline-offset:2px}
.fb-thumb span{display:block;font-size:11px;color:var(--muted);margin-top:4px}
.fb:fullscreen{display:flex;flex-direction:column;justify-content:center;overflow:auto}

@media (max-width:820px){
  .banner{height:auto;min-height:0}
  .slide{position:absolute}
  .slide--cover{position:relative}
  .cover-grid{grid-template-columns:1fr;gap:28px;padding-top:36px;padding-bottom:80px}
  .cover-mag{order:-1;height:auto;width:min(62vw,300px)}
  .slide--photo .slide-copy{bottom:72px}
  .fb-stage{padding:0 8px}
  .fb-nav{display:none}
  .fb-head{flex-direction:column;align-items:flex-start}
}


/* =========================================================
   Refinamiento v3 — pulido editorial premium
   ========================================================= */
html{-webkit-tap-highlight-color:transparent}
body{font-feature-settings:"ss01","cv11";}
::selection{background:#e4dacb;color:var(--ink)}

/* Botones: píldoras, tacto suave */
.btn,.btn-sq,.btn-c,.nav-cta,.chip{border-radius:999px}
.btn-sq{padding:14px 24px;font:600 14px/1 var(--sans);letter-spacing:.01em;text-transform:none;gap:8px;transition:transform .25s var(--ease),background .25s,box-shadow .25s}
.btn-sq::after{content:"";width:16px;height:16px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .25s var(--ease)}
.btn-sq:hover::after{transform:translateX(3px)}
.btn-sq--line{background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.28);-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%)}
.btn-sq--line::after{display:none}
.btn-sq:active,.btn:active,.btn-c:active,.chip:active{transform:scale(.97)}

/* Banner: titulares en caja baja, como las revistas de autor */
.slide-title{text-transform:none;font-weight:500;letter-spacing:-.025em;line-height:1.02}
.slide-title--xl{font-size:clamp(44px,5vw,78px)}
.slide-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.14);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;font-size:11px;letter-spacing:.12em;margin-bottom:18px}
.slide-shade{background:linear-gradient(180deg,rgba(18,16,14,.0) 30%,rgba(18,16,14,.35) 58%,rgba(18,16,14,.82) 100%),linear-gradient(90deg,rgba(18,16,14,.30) 0%,rgba(18,16,14,0) 60%)}
.slide-dek{color:rgba(255,255,255,.86)}
.banner-dots{gap:8px}
.dot span{width:28px;height:3px;border-radius:3px;background:rgba(255,255,255,.35)}
.dot.is-on span{width:44px}
.dot span,.dot.is-on span{transition:width .4s var(--ease)}

/* Cards más finas */
.card{border-radius:22px;box-shadow:0 0 0 1px rgba(31,29,27,.06)}
.card:hover{box-shadow:0 0 0 1px rgba(31,29,27,.08),0 18px 50px -20px rgba(40,30,20,.28)}
.card-media{margin:8px 8px 0;border-radius:16px}
.card--wide .card-media{margin:8px 0 8px 8px}
.card-body{padding:20px 22px 24px}
.eyebrow{letter-spacing:.12em}
.card-title em,.idx-t em{font-style:italic}

/* Header más limpio */
.site-header{background:rgba(248,247,244,.72)}
.nav a{position:relative}
.nav a:not(.nav-cta)::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.nav a:not(.nav-cta):hover::after,.nav a.is-active::after{transform:scaleX(1)}

/* Guía: botones */
.btn-c{background:#fff;box-shadow:0 0 0 1px var(--line-2);padding:9px 14px}
.btn-c--wa{background:#1f1d1b;color:#fff;box-shadow:none}
.aviso{border-radius:22px;box-shadow:0 0 0 1px rgba(31,29,27,.06)}
.aviso-media{margin:8px;border-radius:16px}
.search{box-shadow:0 0 0 1px var(--line-2),0 1px 2px rgba(0,0,0,.03)}
.infobox{border-radius:18px}
.nota-aviso a{border-radius:16px}

/* ---------- Móvil */
@media (max-width:820px){
  :root{--gutter:20px}
  .header-inner{height:56px}
  .logo-svg{height:17px}
  .site-header{padding-top:env(safe-area-inset-top)}
  /* menú a pantalla completa */
  .nav{inset:56px 0 0 0;height:calc(100dvh - 56px);justify-content:flex-start;padding:16px var(--gutter) 40px;background:rgba(248,247,244,.98)}
  .nav a{font:500 30px/1.15 var(--serif);letter-spacing:-.02em;padding:16px 0;border-bottom:1px solid var(--line)}
  .nav a::after{display:none}
  .nav-cta{margin-top:24px;align-self:stretch;text-align:center;justify-content:center;display:flex!important;padding:16px 20px!important;font:600 16px/1 var(--sans)!important;letter-spacing:0!important}
  .nav-open{overflow:hidden}

  /* banner */
  .banner{border-radius:0}
  .slide-copy{bottom:64px}
  .slide-title{font-size:clamp(34px,9.6vw,44px);margin-bottom:12px}
  .slide-title--xl{font-size:clamp(38px,11vw,52px)}
  .slide-dek{font-size:16px;margin-bottom:22px;max-width:34ch}
  .slide-ctas{gap:8px}
  .btn-sq{padding:14px 20px;font-size:15px}
  .banner-dots{left:0;right:0;justify-content:center;bottom:22px}
  .cover-grid{padding-top:28px;padding-bottom:76px;gap:26px}
  .cover-mag{width:min(56vw,250px);border-radius:4px;overflow:hidden}

  /* secciones */
  .section{padding:64px 0}
  .section-head{margin-bottom:28px}
  .h-section{font-size:clamp(30px,8.4vw,40px);letter-spacing:-.025em}
  .h-display{font-size:clamp(38px,10.5vw,52px)}
  .sub-head{margin:48px 0 18px}

  /* tarjeta destacada */
  .card--wide .card-media{margin:8px 8px 0;aspect-ratio:4/3}
  .card--wide .card-body{padding:22px 22px 26px}
  .card--wide .card-title{font-size:30px}

  /* "Más de la edición": lista compacta tipo app de noticias */
  .grid--four{display:flex;flex-direction:column;gap:0;background:#fff;border-radius:22px;box-shadow:0 0 0 1px rgba(31,29,27,.06);overflow:hidden}
  .grid--four .card{flex-direction:row;align-items:center;border-radius:0;box-shadow:none;border-bottom:1px solid var(--line);transform:none!important;padding:14px}
  .grid--four .card:last-child{border-bottom:0}
  .grid--four .card-media{flex:0 0 92px;width:92px;height:92px;aspect-ratio:1;margin:0;border-radius:14px}
  .grid--four .card-body{padding:0 0 0 14px}
  .grid--four .eyebrow{font-size:10px;margin-bottom:6px}
  .grid--four .card-title{font-size:17px;line-height:1.2;margin:0}
  .grid--four .card-dek,.grid--four .card-more{display:none}

  /* agenda */
  .ev{min-height:200px;border-radius:20px}

  /* categorías */
  .cat-grid{gap:10px}
  .cat-tile{padding:20px 22px;border-radius:18px}
  .cat-t{font-size:20px}

  /* teléfonos */
  .tel-big b{font-size:44px}
  .tel-groups{gap:22px}

  /* publica */
  .publica-actions{width:100%}
  .publica-actions .btn{justify-content:center}

  /* nota */
  .nota-head{text-align:left;padding-top:24px}
  .back{margin-bottom:22px}
  .nota-title{font-size:clamp(34px,9.4vw,46px)}
  .nota-dek{font-size:19px;margin-left:0}
  .nota-figure{padding:0}
  .nota-img{border-radius:0;box-shadow:none;max-height:70vh}
  .nota-figure figcaption{padding:0 var(--gutter);text-align:left}

  /* guía */
  .dir-tools{top:56px}
  .aviso-body{padding:18px 20px 22px}
  .aviso-actions .btn-c--wa{flex:1 1 100%;justify-content:center;padding:13px 16px;font-size:15px}

  /* flipbook */
  .fb-thumbs{padding-left:var(--gutter);padding-right:var(--gutter)}
}
@media (max-width:620px){
  .grid--compact:not(.grid--four){display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 calc(var(--gutter) * -1);padding:4px var(--gutter) 10px;scrollbar-width:none}
  .grid--compact:not(.grid--four)::-webkit-scrollbar{display:none}
  .grid--compact:not(.grid--four) .card{flex:0 0 82%;scroll-snap-align:start}
  .hero-text{text-align:left}
}

/* Acciones de la guía: una principal + íconos */
.aviso-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.act{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;border-radius:999px;transition:transform .2s var(--ease),background .2s,box-shadow .2s}
.act svg{width:19px;height:19px}
.act--primary{background:#1f1d1b;color:#fff;padding:0 20px;font-weight:600;font-size:15px}
.act--primary:hover{background:#000}
.act--icon{width:44px;background:#fff;box-shadow:0 0 0 1px var(--line-2);color:var(--ink)}
.act--icon:hover{background:var(--cream)}
.act:active{transform:scale(.95)}
.aviso-meta a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:3px}
.aviso-meta a:hover{text-decoration-color:var(--ink)}
.aviso-meta span{overflow-wrap:anywhere}
@media (max-width:820px){
  .banner{min-height:calc(100svh - 56px)}
  .slide--cover{min-height:calc(100svh - 56px);display:flex;align-items:center}
  .slide--cover .cover-grid{height:auto}
  .act--primary{flex:1 1 100%;height:48px}
  .dir-hero{padding-bottom:12px}
}
.aviso-meta a{white-space:nowrap}

/* ---------- Banner Instagram */
.ig-band{background:#1f1d1b;color:#fff;overflow:hidden;position:relative}
.ig-band::before{content:"";position:absolute;width:720px;height:720px;right:-160px;top:-180px;border-radius:50%;background:radial-gradient(circle,rgba(201,180,150,.22),rgba(201,180,150,0) 65%);pointer-events:none}
.ig-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;padding-top:clamp(64px,8vw,104px);padding-bottom:0;position:relative}
.ig-copy{padding-bottom:clamp(64px,8vw,104px)}
.ig-dek{color:#bdb5aa;font-size:18px;max-width:480px;margin:20px 0 30px}
.phone{justify-self:center;display:block;transform:translateY(40px);transition:transform .7s var(--ease)}
.phone:hover{transform:translateY(22px)}
.phone-frame{display:block;width:300px;height:610px;border-radius:52px;background:#0d0d0d;padding:11px;box-shadow:0 0 0 2px #3a3633,0 50px 100px -30px rgba(0,0,0,.7);position:relative}
.phone-island{position:absolute;top:22px;left:50%;transform:translateX(-50%);width:92px;height:27px;border-radius:20px;background:#000;z-index:2}
.phone-screen{display:flex;flex-direction:column;height:100%;border-radius:42px;background:#fff;color:#111;overflow:hidden;padding-top:56px;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text",var(--sans)}
.ig-top{display:flex;justify-content:space-between;align-items:center;padding:0 16px 12px;font-size:15px}
.ig-dots{letter-spacing:1px;font-size:11px}
.ig-head{display:flex;gap:12px;align-items:center;padding:0 16px}
.ig-avatar{flex:0 0 64px;width:64px;height:64px;border-radius:50%;padding:3px;background:linear-gradient(45deg,#c8a97e,#7d6b57)}
.ig-avatar img{width:100%;height:100%;border-radius:50%;border:2px solid #fff}
.ig-name{display:flex;flex-direction:column;font-size:11.5px;line-height:1.35;color:#333}
.ig-name b{font-size:13px;color:#111}
.ig-link{color:#00376b;font-weight:600}
.ig-btns{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:14px 16px}
.ig-btns span{border-radius:8px;text-align:center;font-size:12.5px;font-weight:600;padding:7px 0}
.ig-follow{background:#0095f6;color:#fff}
.ig-msg{background:#efefef}
.ig-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;flex:1}
.ig-cell{aspect-ratio:4/5;overflow:hidden;background:#eee}
.ig-cell img{width:100%;height:100%;object-fit:cover}

/* ---------- Banner Todo Paine */
.paine{background:#efece6;border-top:1px solid var(--line)}
.paine-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;padding-top:clamp(64px,8vw,104px);padding-bottom:clamp(64px,8vw,104px)}
.paine-dek{font-size:18px;color:var(--ink-2);max-width:520px;margin:20px 0 30px}
.paine-dek b{color:var(--ink);font-weight:600}
.paine-ctas{display:flex;gap:10px;flex-wrap:wrap}
.btn-sq--dark{background:#1f1d1b;color:#fff}.btn-sq--dark:hover{background:#000}
.btn-sq--soft{background:#fff;color:var(--ink);box-shadow:0 0 0 1px var(--line-2)}.btn-sq--soft::after{display:none}
.paine-map{position:relative;aspect-ratio:1;max-width:440px;width:100%;justify-self:center}
.pm-ring{position:absolute;inset:0;margin:auto;border-radius:50%;border:1px solid rgba(125,107,87,.28)}
.pm-ring--1{width:34%;height:34%}.pm-ring--2{width:66%;height:66%}.pm-ring--3{width:98%;height:98%;border-style:dashed}
.pm-pin{position:absolute;display:inline-flex;align-items:center;gap:8px;background:#fff;border-radius:999px;padding:9px 14px 9px 10px;font:500 18px/1 var(--serif);box-shadow:0 10px 30px -12px rgba(40,30,20,.35);white-space:nowrap}
.pm-pin i{width:10px;height:10px;border-radius:50%;background:#7d6b57;box-shadow:0 0 0 4px rgba(125,107,87,.18)}
.pm-pin--pirque{left:50%;top:50%;transform:translate(-50%,-50%);background:#1f1d1b;color:#fff;font-size:20px}
.pm-pin--pirque i{background:#d6c3a5}
.pm-pin--buin{left:6%;top:30%}
.pm-pin--paine{left:24%;bottom:10%}
.pm-pin--alto{right:4%;top:12%}

@media (max-width:820px){
  .ig-inner,.paine-inner{grid-template-columns:1fr;gap:20px}
  .ig-copy{padding-bottom:0}
  .phone{transform:translateY(30px)}
  .phone-frame{width:270px;height:550px}
  .paine-map{max-width:340px}
  .pm-pin{font-size:15px}
  .paine-ctas .btn-sq{flex:1 1 100%;justify-content:center}
}
.phone-screen--shot{padding-top:46px;display:block}
.phone-screen--shot img{width:100%;height:100%;object-fit:cover;object-position:top}

/* Todo Paine v2 */
.paine{overflow:hidden}
.paine-logo{color:var(--ink);margin-bottom:26px}
.paine-logo-svg{height:52px;width:auto;display:block}
.paine-facts{list-style:none;display:flex;gap:28px;padding:0;margin:0 0 30px;flex-wrap:wrap}
.paine-facts li{display:flex;flex-direction:column;gap:4px}
.paine-facts b{font:500 30px/1 var(--serif);letter-spacing:-.02em}
.paine-facts span{font-size:13px;color:var(--muted)}
.paine-visual{position:relative;height:560px;width:100%;max-width:520px;justify-self:center}
.paine-cover{position:absolute;left:0;top:30px;width:62%;transform:rotate(-4deg);box-shadow:0 2px 4px rgba(0,0,0,.12),0 40px 80px -24px rgba(40,30,20,.45)}
.phone--paine{position:absolute;right:0;top:0;transform:none}
.phone--paine:hover{transform:translateY(-8px)}
.phone--paine .phone-frame{width:250px;height:510px;border-radius:46px;padding:10px}
.phone--paine .phone-screen{border-radius:37px}
.phone--paine .phone-island{width:80px;height:24px;top:19px}
@media (max-width:820px){
  .paine-logo-svg{height:40px}
  .paine-visual{height:470px;max-width:360px;margin-top:10px}
  .paine-cover{width:64%}
  .phone--paine .phone-frame{width:200px;height:410px;border-radius:38px;padding:8px}
  .phone--paine .phone-screen{border-radius:31px;padding-top:38px}
  .phone--paine .phone-island{width:64px;height:20px;top:16px}
  .paine-facts{gap:20px}
  .paine-facts b{font-size:26px}
}
@media (max-width:820px){.paine-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.paine-facts b{font-size:22px}.paine-facts span{font-size:12px}}

/* Slides promocionales (Instagram / Todo Paine) */
.phone--slide{justify-self:center;transform:none}
.phone--slide:hover{transform:translateY(-6px)}
.phone--slide .phone-frame{width:min(36vh,300px);height:min(73vh,610px);border-radius:48px}
.slide-logo{color:#fff;margin-bottom:22px}
.slide-logo .paine-logo-svg{height:46px}
.promo-pair{position:relative;justify-self:center;width:min(100%,520px);height:min(74vh,620px)}
.promo-cover{position:absolute;left:0;top:8%;width:58%;transform:rotate(-4deg);box-shadow:0 40px 80px -20px rgba(0,0,0,.6)}
.promo-pair .phone--mini{position:absolute;right:0;top:0}
.phone--mini .phone-frame{width:min(31vh,250px);height:min(63vh,510px);border-radius:44px;padding:10px}
@media (max-width:820px){
  .slide--promo{min-height:calc(100svh - 56px)}
  .slide--promo .cover-grid{grid-template-columns:1fr;align-content:center;padding-top:28px;padding-bottom:80px;height:100%}
  .slide--promo .phone--slide,.slide--promo .promo-pair{order:-1}
  .slide--ig .phone--slide .phone-frame{width:180px;height:366px;border-radius:34px;padding:8px}
  .slide--ig .phone-screen{border-radius:27px;padding-top:34px}
  .slide--ig .phone-island{width:58px;height:18px;top:15px}
  .promo-pair{height:300px;width:300px}
  .promo-cover{width:60%}
  .phone--mini .phone-frame{width:146px;height:298px;border-radius:28px;padding:7px}
  .phone--mini .phone-screen{border-radius:22px;padding-top:28px}
  .phone--mini .phone-island{width:46px;height:14px;top:12px}
  .slide-logo .paine-logo-svg{height:34px}
}
@media (max-width:820px){
  .banner{display:grid;height:auto;min-height:0}
  .banner > .slide{position:relative!important;grid-area:1/1;min-height:calc(100svh - 56px)}
  .banner > .banner-dots{grid-area:1/1;align-self:end;position:relative;bottom:auto;padding-bottom:18px}
  .slide--promo .cover-grid,.slide--cover .cover-grid{padding-top:24px;padding-bottom:72px;gap:22px}
  .slide--ig .phone--slide .phone-frame{width:156px;height:318px;border-radius:30px;padding:7px}
  .slide--ig .phone-screen{border-radius:24px;padding-top:30px}
  .slide--ig .phone-island{width:50px;height:15px;top:13px}
  .slide--promo .slide-title--xl{font-size:clamp(34px,9.5vw,44px)}
  .promo-pair{height:260px;width:280px}
  .phone--mini .phone-frame{width:128px;height:262px}
}

/* ---------- Lector de la revista (pantalla completa) */
body.is-reader{background:#161514}
body.is-reader .site-header,body.is-reader .site-footer{display:none}
.fb{position:relative;background:radial-gradient(120% 90% at 50% 40%,#2c2926 0%,#161514 70%);color:#f2ede6;height:100vh;height:100dvh;display:flex;flex-direction:column;padding:0}
.fb-top{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;gap:16px;flex:0 0 auto}
.fb-title{display:flex;flex-direction:column;line-height:1.2}
.fb-title b{font:500 20px/1.1 var(--serif);letter-spacing:-.01em}
.fb-title span{font-size:12px;color:#a8a097}
.fb-tools{display:flex;align-items:center;gap:8px}
.fb-count{font-size:13px;color:#cfc7bc;margin-right:6px;font-variant-numeric:tabular-nums}
.fb-btn{width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.08);color:#f2ede6;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}
.fb-btn:hover{background:rgba(255,255,255,.18)}
.fb-btn svg{width:18px;height:18px}
.fb-stage{position:relative;flex:1 1 auto;min-height:0;display:flex;align-items:center;justify-content:center;padding:0 12px}
.fb-book{max-width:none;margin:0 auto}
.fb-book:not(.is-ready){display:flex;gap:0;overflow:hidden}
.fb-book:not(.is-ready) .fb-page{flex:0 0 50%}
.fb-nav{width:52px;height:52px;background:rgba(255,255,255,.1);color:#fff;box-shadow:none;display:flex;align-items:center;justify-content:center;font-size:0}
.fb-nav svg{width:22px;height:22px}
.fb-nav:hover{background:#fff;color:#161514}
.fb-prev{left:18px}.fb-next{right:18px}
.fb-tip{flex:0 0 auto;text-align:center;font-size:12.5px;color:#9a9288;margin:10px 16px 14px;transition:opacity .6s}
.fb-tip.is-hidden-soft{opacity:0}
.fb-thumbs{position:absolute;left:0;right:0;bottom:0;max-width:none;margin:0;padding:18px 20px 22px;background:rgba(22,21,20,.94);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid rgba(255,255,255,.08);z-index:6}
.fb-thumbs[hidden]{display:none}
.fb-thumb span{color:#a8a097}
.fb-thumb.is-on img{outline-color:#fff}
.fb:fullscreen .fb-tip{display:none}
.fb:-webkit-full-screen .fb-tip{display:none}
@media (max-width:820px){
  .fb-top{padding:10px 14px}
  .fb-title b{font-size:17px}
  .fb-count{display:none}
  .fb-stage{padding:0 6px}
  .fb-nav{display:none}
  .fb-head{display:none}
}

/* ---------- Logo más presente */
.header-inner{height:68px}
.logo-svg{height:25px}
.dir-tools{top:68px}
@media (max-width:820px){
  .header-inner{height:60px}
  .logo-svg{height:21px}
  .nav{inset:60px 0 0 0;height:calc(100dvh - 60px)}
  .dir-tools{top:60px}
  .banner,.banner > .slide,.slide--promo,.slide--cover{min-height:calc(100svh - 60px)}
}
.fb-wrap{margin:0 auto;max-width:100%}
.fb-book{width:100%}

/* =========================================================
   Movimiento v1 — animaciones sutiles
   ========================================================= */
@view-transition{navigation:auto}
::view-transition-old(root),::view-transition-new(root){animation-duration:.35s}

/* Huincha animada */
.ticker{background:#8d7c62;color:#f8f4ec;overflow:hidden;white-space:nowrap;font:500 12px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;position:relative;z-index:51}
.ticker-track{display:flex;width:max-content;animation:ticker 55s linear infinite}
.ticker:hover .ticker-track{animation-play-state:paused}
.ticker-group{display:flex;align-items:center;flex-shrink:0}
.ticker a{padding:12px 0;opacity:.95;transition:opacity .2s}
.ticker a:hover{opacity:1;text-decoration:underline;text-underline-offset:3px}
.tk-dot{margin:0 26px;font-size:9px;opacity:.6}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Header transparente sobre el banner (solo portada) */
body.is-home .site-header{position:sticky;background:transparent;border-bottom-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;transition:background .4s var(--ease),color .4s,border-color .4s,backdrop-filter .4s}
body.is-home .site-header:not(.is-scrolled){color:#fff}
body.is-home .site-header:not(.is-scrolled) .brand,body.is-home .site-header:not(.is-scrolled) .nav a{color:#fff}
body.is-home .site-header:not(.is-scrolled) .nav-cta{background:rgba(255,255,255,.16);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
body.is-home .site-header:not(.is-scrolled) .nav-toggle span{background:#fff}
body.is-home .site-header.is-scrolled{background:rgba(248,247,244,.78);-webkit-backdrop-filter:saturate(180%) blur(18px);backdrop-filter:saturate(180%) blur(18px);border-bottom-color:var(--line)}
body.is-home .banner{margin-top:-68px;height:min(92vh,920px)}
body.is-home .slide-shade{background:linear-gradient(180deg,rgba(18,16,14,.45) 0%,rgba(18,16,14,0) 22%,rgba(18,16,14,0) 40%,rgba(18,16,14,.35) 62%,rgba(18,16,14,.82) 100%),linear-gradient(90deg,rgba(18,16,14,.30) 0%,rgba(18,16,14,0) 60%)}
body.is-home .slide-shade--cover{background:linear-gradient(180deg,rgba(32,29,26,.5) 0%,rgba(32,29,26,0) 25%),linear-gradient(90deg,rgba(32,29,26,.78) 0%,rgba(32,29,26,.45) 60%,rgba(32,29,26,.25) 100%)}
body.is-home .cover-grid{padding-top:68px}
body.nav-open.is-home .site-header{background:rgba(248,247,244,.98);color:var(--ink)}
body.nav-open.is-home .site-header .brand,body.nav-open.is-home .site-header .nav a{color:var(--ink)}
body.nav-open.is-home .site-header .nav-toggle span{background:var(--ink)}

/* Texto del banner entra escalonado */
.slide .slide-eyebrow,.slide .slide-logo,.slide .slide-title,.slide .slide-dek,.slide .slide-ctas,.slide .btn-sq,.slide .cover-mag,.slide .phone,.slide .promo-pair{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease),transform 1.1s var(--ease)}
.slide.is-active .slide-eyebrow,.slide.is-active .slide-logo{opacity:1;transform:none;transition-delay:.25s}
.slide.is-active .slide-title{opacity:1;transform:none;transition-delay:.4s}
.slide.is-active .slide-dek{opacity:1;transform:none;transition-delay:.55s}
.slide.is-active .slide-ctas,.slide.is-active .slide-copy > .btn-sq{opacity:1;transform:none;transition-delay:.7s}
.slide.is-active .slide-ctas .btn-sq{opacity:1;transform:none}
.slide.is-active .cover-mag,.slide.is-active .phone,.slide.is-active .promo-pair{opacity:1;transform:none;transition-delay:.35s;transition-duration:1.2s,1.4s}
.slide.is-active .cover-mag:hover{transform:translateY(-6px) rotate(-.6deg)}

/* Indicador de scroll en la portada */
.scroll-cue{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);z-index:3;width:22px;height:34px;border-radius:12px;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.6);display:none}
.scroll-cue::after{content:"";position:absolute;left:50%;top:7px;width:3px;height:7px;margin-left:-1.5px;border-radius:2px;background:#fff;animation:cue 2s var(--ease) infinite}
@keyframes cue{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(10px)}}

/* Reveal escalonado en grillas */
.grid > .reveal:nth-child(2),.cat-grid > .reveal:nth-child(2),.agenda > .reveal:nth-child(2),.dir-grid > .reveal:nth-child(2){transition-delay:.08s}
.grid > .reveal:nth-child(3),.cat-grid > .reveal:nth-child(3),.agenda > .reveal:nth-child(3),.dir-grid > .reveal:nth-child(3){transition-delay:.16s}
.grid > .reveal:nth-child(4),.cat-grid > .reveal:nth-child(4),.agenda > .reveal:nth-child(4),.dir-grid > .reveal:nth-child(4){transition-delay:.24s}
.grid > .reveal:nth-child(5),.cat-grid > .reveal:nth-child(5),.agenda > .reveal:nth-child(5){transition-delay:.32s}
.grid > .reveal:nth-child(6),.cat-grid > .reveal:nth-child(6),.agenda > .reveal:nth-child(6){transition-delay:.4s}
.reveal{transform:translateY(26px);transition:opacity 1s var(--ease),transform 1.2s var(--ease)}
.card-media img,.aviso-media img{transform:scale(1.06);transition:transform 1.4s var(--ease)}
.card.is-in .card-media img,.aviso.is-in .aviso-media img{transform:scale(1)}
.card:hover .card-media img{transform:scale(1.04)}

/* Títulos de sección: la palabra en cursiva aparece con un leve barrido */
.h-section em,.h-display em{display:inline-block;transition:transform 1.2s var(--ease),opacity 1.2s;}
.reveal:not(.is-in) .h-section em,.reveal:not(.is-in).h-section em{transform:translateY(.25em);opacity:0}

/* Barra de lectura en notas */
.read-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:60;pointer-events:none}
.read-progress span{display:block;height:100%;width:100%;background:#8d7c62;transform-origin:left;transform:scaleX(0)}

/* Botones: brillo sutil al pasar */
.btn-sq,.act--primary,.btn--dark{position:relative;overflow:hidden}
.btn-sq::before,.act--primary::before,.btn--dark::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s var(--ease);pointer-events:none}
.btn-sq:hover::before,.act--primary:hover::before,.btn--dark:hover::before{transform:translateX(120%)}

@media (min-width:821px){ body.is-home .scroll-cue{display:block} }
@media (max-width:820px){
  body.is-home .banner{margin-top:-60px}
  body.is-home .cover-grid,body.is-home .slide--promo .cover-grid{padding-top:84px}
  body.is-home .slide--photo .slide-copy{bottom:64px}
  .ticker{font-size:11px}
  .tk-dot{margin:0 18px}
}
@media (prefers-reduced-motion: reduce){
  .ticker-track{animation-duration:160s}
}
@media (max-width:820px){
  body.is-home .banner{height:auto}
  body.is-home .cover-mag{width:min(48vw,210px)}
  body.is-home .slide--cover .cover-grid{padding-top:76px;padding-bottom:64px}
}

/* ---------- Ajustes v10 */
/* sin línea entre la huincha y el banner */
body.is-home .site-header{border-bottom:0}
body.is-home .site-header.is-scrolled{border-bottom:0;box-shadow:0 1px 0 var(--line)}
.ticker{margin-bottom:-1px}

/* Editorial en fondo oscuro */
.editorial-band{position:relative;background:#1f1d1b;color:#efe9e0;border:0;overflow:hidden}
.editorial-band::before{content:"";position:absolute;inset:0;background:url("assets/img/notas/primavera-flores.webp") right 30%/cover no-repeat;filter:saturate(.9) brightness(.8);opacity:1}
.editorial-band::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,26,24,.93) 0%,rgba(28,26,24,.82) 40%,rgba(28,26,24,.62) 62%,rgba(28,26,24,.8) 100%)}
.editorial-band .wrap{position:relative;z-index:1}
.editorial-band .eyebrow{color:#cdb99b}
.editorial-band .h-display{color:#fff}
.editorial-band .h-display em,.editorial-band .idx-t em{color:#d6c3a5}
.editorial-band .lead{color:#d9d2c7}
.editorial-band .byline{color:#b3aa9d}
.editorial-band .link-arrow{color:#e3d4bd}
.editorial-band .index-list{border-top-color:rgba(255,255,255,.55)}
.editorial-band .index-list a{border-bottom-color:rgba(255,255,255,.12)}
.editorial-band .idx-pg{color:#cdb99b}
.editorial-band .idx-t{color:#f2ede6}
.editorial-band .idx-t small{color:#9c9388}
.ed-cover{display:flex;gap:18px;align-items:center;margin-top:34px;padding-top:28px;border-top:1px solid rgba(255,255,255,.12)}
.ed-cover img{width:92px;box-shadow:0 18px 40px -12px rgba(0,0,0,.6);transition:transform .5s var(--ease)}
.ed-cover:hover img{transform:translateY(-4px) rotate(-1deg)}
.ed-cover span{font-size:14px;color:#b3aa9d;line-height:1.45}
.ed-cover b{display:block;color:#fff;font:500 19px/1.2 var(--serif);margin-bottom:2px}

.editorial-grid--3{grid-template-columns:.72fr 1fr .95fr;gap:clamp(32px,4.5vw,72px)}
.ed-photo{margin:0;position:sticky;top:100px;align-self:start}
.ed-photo img{width:100%;aspect-ratio:3/4.4;object-fit:cover;border-radius:18px;box-shadow:0 30px 60px -24px rgba(0,0,0,.7)}
.ed-photo figcaption{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#9c9388;margin-top:12px}
.editorial-grid--3 .ed-copy .h-display{font-size:clamp(36px,3.8vw,56px)}
@media (max-width:1080px){
  .editorial-grid--3{grid-template-columns:1fr 1fr}
  .ed-photo{display:none}
}
@media (max-width:820px){
  .editorial-grid--3{grid-template-columns:1fr}
  .ed-photo{display:block;position:static}
  .ed-photo img{aspect-ratio:4/3}
}

.ed-sign{margin:6px 0 18px}
.ed-sign img{width:230px;max-width:70%;height:auto;opacity:.92;margin-left:-6px;display:block}
.ed-sign span{display:block;font-size:13px;color:#b3aa9d;margin-top:4px;letter-spacing:.02em}
.nota-sign{margin-top:28px}.nota-sign img{width:240px;max-width:70%;display:block;margin-left:-6px}.nota-sign span{font:500 12px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}

/* ---------- Archivo / Issuu */
.archive{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.archive-inner{display:grid;grid-template-columns:auto 1fr;gap:clamp(32px,6vw,90px);align-items:center;padding-top:clamp(56px,7vw,96px);padding-bottom:clamp(56px,7vw,96px)}
.archive-inner--simple{grid-template-columns:1fr;text-align:left}
.archive-covers{position:relative;width:220px;height:286px}
.archive-covers::before,.archive-covers::after{content:"";position:absolute;inset:0;border-radius:2px;background:#d9d1c4;box-shadow:0 20px 40px -20px rgba(0,0,0,.4)}
.archive-covers::before{transform:rotate(-8deg) translate(-18px,6px);background:#cbbfae}
.archive-covers::after{transform:rotate(-3.5deg) translate(-8px,2px)}
.archive-covers img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;box-shadow:0 30px 60px -20px rgba(0,0,0,.5)}
.archive-dek{font-size:18px;color:var(--ink-2);max-width:520px;margin:18px 0 26px}
.fb-pill{display:inline-flex;align-items:center;height:40px;padding:0 16px;border-radius:999px;background:rgba(255,255,255,.08);color:#f2ede6;font-size:13px;font-weight:500;transition:background .2s}
.fb-pill:hover{background:rgba(255,255,255,.18)}

/* ---------- Quiénes somos */
.about-hero{position:relative;min-height:62vh;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:#1f1d1b}
body:not(.is-home) .about-hero{margin-top:0}
.about-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.about-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,18,16,.15) 0%,rgba(20,18,16,.75) 100%)}
.about-hero-copy{position:relative;padding-bottom:clamp(40px,6vw,80px)}
.about-hero .h-display{color:#fff;max-width:900px}
.about-hero .h-display em{color:#e3d4bd}
.about-grid{display:grid;grid-template-columns:minmax(0,680px) 320px;gap:72px;justify-content:center}
.about-side{position:sticky;top:110px;align-self:start}
.about-cover{width:100%;box-shadow:0 30px 60px -24px rgba(40,30,20,.5);margin-bottom:28px}
.stats{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.about-side .stats{grid-template-columns:1fr 1fr;gap:20px}
.stats li{border-top:1px solid var(--ink);padding-top:14px}
.stats b{display:block;font:500 clamp(30px,3.4vw,46px)/1 var(--serif);letter-spacing:-.02em;color:var(--ink)}
.stats span{display:block;font-size:13.5px;color:var(--muted);margin-top:8px;line-height:1.4}
.team{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.team li{background:var(--paper);border-radius:20px;padding:22px;box-shadow:0 0 0 1px var(--line)}
.team span{display:block;font:600 11px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--teal);margin-bottom:10px}
.team b{display:block;font:500 21px/1.2 var(--serif);margin-bottom:6px}
.team a{font-size:13.5px;color:var(--ink-2);text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:3px;overflow-wrap:anywhere}

/* ---------- Publica */
.pub-hero{padding:clamp(48px,7vw,100px) 0}
.pub-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:64px;align-items:center}
.pub-hero .hero-dek{margin-left:0}
.pub-cover{width:min(100%,360px);justify-self:center;transform:rotate(3deg);box-shadow:0 40px 80px -24px rgba(40,30,20,.5)}
.fmt-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.fmt{background:var(--paper);border-radius:22px;padding:26px 22px 24px;box-shadow:0 0 0 1px var(--line);display:flex;flex-direction:column;gap:6px;transition:transform .35s var(--ease),box-shadow .35s}
.fmt:hover{transform:translateY(-4px);box-shadow:0 0 0 1px var(--line-2),var(--shadow)}
.fmt b{font:500 26px/1.1 var(--serif);letter-spacing:-.015em;margin-top:18px}
.fmt span{font-size:14px;color:var(--muted)}
.fmt-vis{display:flex;gap:3px;height:120px;align-items:flex-end}
.pg{position:relative;display:block;height:120px;width:92px;background:var(--cream);border-radius:3px;box-shadow:inset 0 0 0 1px var(--line-2);overflow:hidden}
.pg i{position:absolute;right:6px;bottom:6px;background:#8d7c62;border-radius:2px}
.fmt--s16 .pg i{width:calc(25% - 3px);height:calc(25% - 3px)}
.fmt--s8 .pg i{width:calc(50% - 6px);height:calc(25% - 3px)}
.fmt--s4 .pg i{width:calc(50% - 6px);height:calc(50% - 6px)}
.fmt--s2 .pg i{left:6px;height:calc(50% - 6px)}
.fmt--s1 .pg i,.fmt--sd .pg i{inset:6px}
.fmt--sd .pg:first-child{border-radius:3px 0 0 3px}.fmt--sd .pg:last-child{border-radius:0 3px 3px 0}
.fmt--sd .pg:first-child i{right:0}.fmt--sd .pg:last-child i{left:0}
.fmt--sp .pg i{inset:6px;background:#1f1d1b}
.fmt--sp .pg::after{content:"★";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#e3d4bd;font-size:22px}
.benefits{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.benefits li{background:var(--paper);border-radius:22px;padding:28px 26px;box-shadow:0 0 0 1px var(--line)}
.benefits b{display:block;font:500 24px/1.15 var(--serif);margin-bottom:10px}
.benefits span{color:var(--ink-2);font-size:15.5px}

@media (max-width:1080px){
  .fmt-grid{grid-template-columns:repeat(2,1fr)}
  .team{grid-template-columns:repeat(2,1fr)}
  .about-grid{grid-template-columns:minmax(0,680px)}
  .about-side{position:static}
  .about-cover{max-width:280px}
}
@media (max-width:820px){
  .archive-inner{grid-template-columns:1fr;gap:28px}
  .archive-covers{width:170px;height:222px;margin-left:20px}
  .stats{grid-template-columns:1fr 1fr}
  .pub-hero-grid{grid-template-columns:1fr;gap:36px}
  .pub-cover{width:220px}
  .benefits{grid-template-columns:1fr}
  .fb-pill{display:none}
  .archive .slide-ctas .btn-sq{flex:1 1 100%;justify-content:center}
}
@media (max-width:520px){
  .fmt-grid{gap:12px}
  .fmt{padding:18px 16px}
  .fmt b{font-size:21px}
  .pg{width:64px;height:84px}
  .fmt-vis{height:84px}
  .team{grid-template-columns:1fr}
}

/* =========================================================
   Modo oscuro automático
   ========================================================= */
@media (prefers-color-scheme: dark){
  :root{--ink:#f1ece4;--ink-2:#cbc3b8;--muted:#978f84;--line:#2d2a27;--line-2:#3b3733;--bg:#161514;--paper:#1f1d1b;--cream:#1b1a18;--teal:#cbb595;--accent:#d2bd9c;--teal-l:#2a2622;--shadow:0 1px 2px rgba(0,0,0,.3),0 18px 50px -18px rgba(0,0,0,.7)}
  ::selection{background:#4a4036;color:#fff}
  .site-header,body.is-home .site-header.is-scrolled{background:rgba(22,21,20,.78)}
  .nav-cta,.btn--dark,.btn-sq--dark,.act--primary,.btn-c--wa,.chip.is-on{background:#f1ece4;color:#161514!important}
  .nav-cta:hover,.btn--dark:hover,.btn-sq--dark:hover,.act--primary:hover{background:#fff}
  .chip.is-on span{color:#6b645b}
  .chip,.search,.btn-c,.act--icon,.btn-sq--soft{background:#232120;color:var(--ink)}
  .search input{color:var(--ink)}
  .card,.aviso,.ev,.cat-tile,.nota-aviso a,.grid--four,.fmt,.benefits li,.team li{background:var(--paper)}
  .cat-tile:hover{background:#2c2925;color:var(--ink)}
  .cat-tile:hover .cat-n{color:var(--teal)}
  .aviso-media,.card-media{background:#262320}
  .infobox{background:#232120}
  .paine{background:#1b1a18}
  .pm-pin{background:#2a2724;color:var(--ink)}
  .pm-pin--pirque{background:#f1ece4;color:#161514}
  .tel-row{border-top-color:var(--ink)}
  .pg{background:#262320}
  .fmt--sp .pg i{background:#0e0d0c}
  .prose{color:#ddd6cb}
  .prose p.first::first-letter{color:var(--teal)}
  .nota-sign img,.about-grid .nota-sign img{filter:invert(1) brightness(.95)}
  .archive-covers::before{background:#3a342d}.archive-covers::after{background:#4a4239}
  .dir-tools{background:rgba(22,21,20,.86)}
  @media (max-width:820px){ .nav{background:rgba(22,21,20,.98)} body.nav-open.is-home .site-header{background:rgba(22,21,20,.98)} body.nav-open.is-home .site-header .brand,body.nav-open.is-home .site-header .nav a{color:var(--ink)} body.nav-open.is-home .site-header .nav-toggle span{background:var(--ink)} }
  .lightbox img{background:#fff}
}

/* ---------- WhatsApp flotante */
.wa-float{position:fixed;right:18px;bottom:18px;z-index:70;display:inline-flex;align-items:center;gap:8px;height:52px;padding:0 18px 0 15px;border-radius:999px;background:#1f1d1b;color:#fff;font-weight:600;font-size:14.5px;box-shadow:0 12px 30px -10px rgba(0,0,0,.45);transform:translateY(90px);opacity:0;transition:transform .6s var(--ease),opacity .6s,background .2s}
.wa-float.is-in{transform:none;opacity:1}
.wa-float svg{width:22px;height:22px;color:#25d366}
.wa-float:hover{background:#000}
.wa-float span{max-width:120px;overflow:hidden;white-space:nowrap;transition:max-width .4s var(--ease),opacity .3s}
.wa-float.is-compact span{max-width:0;opacity:0}
.wa-float.is-compact{padding:0 15px}
@media (prefers-color-scheme: dark){.wa-float{background:#f1ece4;color:#161514}.wa-float:hover{background:#fff}.wa-float svg{color:#1a9e4b}}

/* ---------- Compartir notas */
.share{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:22px}
.share-label{font:600 11px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-right:4px}
.share-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:7px;height:40px;min-width:40px;padding:0 12px;border-radius:999px;border:0;background:var(--paper);box-shadow:0 0 0 1px var(--line-2);color:var(--ink);font:600 13.5px/1 var(--sans);cursor:pointer;transition:background .2s,transform .2s var(--ease)}
.share-btn svg{width:18px;height:18px}
.share-btn:hover{background:var(--cream)}
.share-btn:active{transform:scale(.95)}
.share-btn--wa{background:#1f1d1b;color:#fff;box-shadow:none;padding:0 16px}
.share-btn--wa:hover{background:#000}
.copy-ok{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px);background:#1f1d1b;color:#fff;font-size:12px;padding:6px 10px;border-radius:8px;white-space:nowrap;opacity:0;pointer-events:none;transition:all .25s}
.share-copy.is-done .copy-ok{opacity:1;transform:translate(-50%,0)}
.share-end{margin-top:44px;padding:26px 24px;border-radius:20px;background:var(--cream);text-align:center;font-family:var(--sans)}
.share-end p{margin:0;font-size:15px;color:var(--ink-2)}
.share-end .share{margin-top:14px}
.share-end .share-label{display:none}
@media (prefers-color-scheme: dark){.share-btn--wa{background:#f1ece4;color:#161514}.share-end{background:#1f1d1b}}
@media (max-width:820px){.nota-head .share{justify-content:flex-start}}
@media (max-width:820px){.share .share-label{display:none}.share a[href^="mailto"]{display:none}.share{flex-wrap:nowrap}}

/* ---------- Galerías en notas */
.gal{display:grid;gap:12px;margin:2.2em 0}
.gal--1{grid-template-columns:1fr}
.gal--2{grid-template-columns:1fr 1fr}
.gal--n{grid-template-columns:1fr 1fr}
.gal--n .gal-item:first-child{grid-column:1/-1}
.gal-item,.gal-ad{margin:0}
.gal-btn{display:block;width:100%;padding:0;border:0;background:var(--cream);border-radius:14px;overflow:hidden;cursor:zoom-in}
.gal-item img{width:100%;height:100%;max-height:560px;object-fit:cover;transition:transform .8s var(--ease)}
.gal--2 .gal-item img,.gal--n .gal-item:not(:first-child) img{aspect-ratio:4/3}
.gal-btn:hover img{transform:scale(1.03)}
.gal figcaption,.gal-ad figcaption{font:400 13px/1.45 var(--sans);color:var(--muted);margin-top:8px}
.gal-ad{margin:2.4em 0 0;padding:20px;border-radius:18px;background:var(--cream);text-align:center}
.gal-ad .gal-btn{background:transparent;border-radius:6px;max-width:520px;margin:0 auto}
.gal-ad img{width:100%;height:auto;border-radius:6px;box-shadow:0 14px 40px -18px rgba(0,0,0,.35)}
.gal-ad figcaption{margin-top:12px}
@media (max-width:620px){.gal--2{grid-template-columns:1fr}.gal{margin-left:calc(var(--gutter) * -1);margin-right:calc(var(--gutter) * -1)}.gal-btn{border-radius:0}.gal figcaption{padding:0 var(--gutter)}}
@media (prefers-color-scheme: dark){.gal-ad{background:#1f1d1b}.gal-btn{background:#262320}}

/* Guía: imágenes robustas (sin filtros ni transformaciones) */
.aviso-media img{filter:none!important;transform:none!important;transition:none}
.aviso-media img{box-shadow:0 6px 18px -8px rgba(0,0,0,.25)}
.aviso.reveal{opacity:1!important;transform:none!important}
.ticker--dark{background:#1f1d1b;color:#efe9e0;font-size:13px;z-index:2}
.ticker--dark span{padding:16px 0;display:inline-block}
.ticker--dark .tk-dot{color:#cdb99b;opacity:.9}
.ticker-track--rev{animation-direction:reverse;animation-duration:40s}
@media (prefers-color-scheme: dark){.ticker--dark{background:#8d7c62;color:#fff}.ticker--dark .tk-dot{color:#fff}}
.ticker--dark{background:#efe9e0;color:#1f1d1b}
.ticker--dark .tk-dot{color:#8d7c62}
@media (prefers-color-scheme: dark){.ticker--dark{background:#8d7c62;color:#fff}.ticker--dark .tk-dot{color:#fff}}
@media (max-width:820px){.ed-photo img{aspect-ratio:1/1;object-position:50% 72%}}

/* ---------- Archivo de ediciones */
.edc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.edc{background:var(--paper);border-radius:22px;box-shadow:0 0 0 1px var(--line);overflow:hidden;display:flex;flex-direction:column}
.edc-cover{position:relative;display:block;background:var(--cream);padding:28px 28px 0}
.edc-cover img{width:100%;aspect-ratio:609/794;object-fit:cover;box-shadow:0 24px 50px -24px rgba(0,0,0,.5);transition:transform .6s var(--ease)}
.edc-cover:hover img{transform:translateY(-6px)}
.edc-badge{position:absolute;top:14px;left:14px;background:#1f1d1b;color:#fff;font:600 11px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;padding:8px 12px;border-radius:999px}
.edc-body{padding:22px 24px 24px}
.edc-title{font:500 30px/1.1 var(--serif);letter-spacing:-.015em;margin:0 0 16px}
.edc-notas{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}
.edc-notas summary{cursor:pointer;font-size:14px;font-weight:500;color:var(--ink-2)}
.edc-notas ul{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:8px}
.edc-notas a{font:400 16px/1.3 var(--serif);color:var(--ink)}
.edc-notas a:hover{color:var(--accent)}
.edc-issuu{margin-top:48px;padding:26px;border-radius:20px;background:var(--cream);display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.edc-issuu p{margin:0;color:var(--ink-2)}
@media (max-width:1080px){.edc-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.edc-grid{grid-template-columns:1fr}}
@media (prefers-color-scheme: dark){.edc-badge{background:#f1ece4;color:#161514}}

/* ---------- Fix menú móvil (v16) */
@media (max-width:820px){
  .site-header .nav{position:absolute;top:100%;left:0;right:0;inset:auto;top:100%;height:100vh;height:100dvh}
  body.nav-open .site-header{background:rgba(248,247,244,.98)!important;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
  body.nav-open .site-header .brand{color:var(--ink)!important}
  body.nav-open .site-header .nav-toggle span{background:var(--ink)!important}
  body.nav-open .nav a{color:var(--ink)!important}
  body.nav-open .nav .nav-cta{background:#1f1d1b!important;color:#fff!important;-webkit-backdrop-filter:none;backdrop-filter:none}
}
@media (max-width:820px) and (prefers-color-scheme: dark){
  body.nav-open .site-header{background:rgba(22,21,20,.98)!important}
  body.nav-open .nav .nav-cta{background:#f1ece4!important;color:#161514!important}
}
@media (max-width:820px){
  .site-header .nav{inset:auto;top:100%;left:0;right:0;width:100%}
  body.nav-open .wa-float{opacity:0;pointer-events:none}
}
