:root{--bg:#fffaf3;--fg:#2c1d3a;--muted:#6b5a78;--accent:#b4476b;--line:rgba(44,29,58,.18);--panel:#fff;--nav-bg:rgba(255,255,255,.9);
 --body:'Cormorant Garamond',Georgia,serif;--ui:'Inter',system-ui,sans-serif;--brand:italic 700 22px/1 'Libre Caslon Text',serif;
 --h2:italic 600 clamp(38px,5.4vw,70px)/1 'Cormorant Garamond',serif;--h3:600 clamp(26px,3vw,40px)/1.1 'Cormorant Garamond',serif;--foot-bg:#2c1d3a;--foot-fg:#e8dff0;
 --c-poesia:#f7b6c8;--c-ensayo:#f9d29b;--c-cuento:#a9d3ee;--c-resena:#cdbbef;--c-entrevista:#f6a99a;--c-teatro:#b4e1cc;--c-separata:#f4e39b}
body{font-size:20px}
/* cabecera editorial */
.mast{position:fixed;inset:0 0 auto 0;z-index:60;background:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;border-bottom:1px solid var(--line);transition:box-shadow .3s}
.mast__top{display:flex;justify-content:space-between;gap:16px;padding:8px clamp(16px,4vw,40px);font:600 10.5px/1.3 var(--ui);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line)}
.mast__logo{display:block;text-decoration:none;color:var(--fg);padding:8px 0 4px}
.mast .wm{font-size:clamp(34px,5vw,58px);line-height:1;color:var(--fg);transition:font-size .3s}
.mast__nav{display:flex;justify-content:center;flex-wrap:wrap;gap:4px clamp(14px,2.6vw,34px);padding:6px 16px 12px;font:600 12px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase}
.mast__nav>a,.dd>button{color:var(--fg);text-decoration:none;background:none;border:0;padding:6px 0;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;position:relative}
.mast__nav>a::after,.dd>button::after{content:'';position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--accent);transition:right .3s}
.mast__nav>a:hover::after,.dd:hover>button::after,.dd:focus-within>button::after{right:0}
.dd{position:relative}
.dd__p{position:absolute;left:50%;top:100%;transform:translateX(-50%) translateY(6px);min-width:230px;background:#fff;padding:10px;border:1px solid var(--line);box-shadow:0 18px 40px rgba(44,29,58,.2);opacity:0;visibility:hidden;transition:.25s;text-align:left}
.dd:hover .dd__p,.dd:focus-within .dd__p{opacity:1;visibility:visible;transform:translateX(-50%)}
.dd__p a{display:flex;align-items:center;gap:12px;padding:9px 10px;text-decoration:none;color:var(--fg);font:600 12px/1 var(--ui);letter-spacing:.12em;text-transform:uppercase}
.dd__p a:hover{background:#f6f0f8}.dd__p i{width:16px;height:16px;border-radius:50%;background:var(--c)}
.mast.compact .mast__top{display:none}.mast.compact .wm{font-size:30px}.mast.compact{box-shadow:0 6px 24px rgba(44,29,58,.12)}
/* portada: carrusel de Nueva York y la revista al centro */
.hero{position:relative;min-height:100svh;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:200px 16px 90px;background:#f6c9c0}
.bgs{position:absolute;inset:0}
.bg{position:absolute;inset:-2%;background:center/cover;background-position:var(--pos,50% 60%);opacity:0;transition:opacity 1.8s ease;filter:var(--f,none);transform:scale(var(--s0)) scaleX(var(--fx,1))}
.bg.on{opacity:1;animation:kb 9.5s ease-out forwards}
@keyframes kb{from{transform:scale(var(--s0)) scaleX(var(--fx,1))}to{transform:scale(var(--s1)) scaleX(var(--fx,1))}}
.hero::after{content:'';position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.28),rgba(255,255,255,0) 30%,rgba(255,255,255,0) 70%,rgba(255,240,230,.45));pointer-events:none}
.hero__c{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;gap:22px}
.cover{--rx:0deg;--ry:0deg;perspective:1200px;animation:flt 6s ease-in-out infinite}
@keyframes flt{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.cover img{height:clamp(250px,calc(100svh - 470px),470px);width:auto;display:block;transform:rotateX(var(--rx)) rotateY(var(--ry));transition:transform .2s;box-shadow:0 30px 70px rgba(70,30,60,.4),0 0 0 6px rgba(255,255,255,.85)}
.hero__cap{font:600 11px/1 var(--ui);letter-spacing:.24em;text-transform:uppercase;color:var(--fg);background:rgba(255,255,255,.82);padding:8px 14px}
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:760px}
.chips a{display:block;padding:10px 16px;border-radius:99px;background:var(--c);color:var(--fg);text-decoration:none;font:700 11.5px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase;box-shadow:0 6px 16px rgba(70,30,60,.18);transition:transform .2s}
.chips a:hover{transform:translateY(-3px) scale(1.04)}
.bgdots{position:absolute;z-index:3;bottom:22px;left:0;right:0;display:flex;justify-content:center;gap:10px}
.bgdots button{width:34px;height:4px;border:0;padding:0;background:rgba(255,255,255,.7);cursor:pointer}
.bgdots button.on{background:var(--accent)}
/* frase del editorial sobre Nueva York */
.quote{position:relative;padding:clamp(80px,12vw,150px) 16px;text-align:center;background:linear-gradient(rgba(255,250,243,.82),rgba(255,250,243,.82)),url(../assets/img/nyc.jpg) center 70%/cover fixed}
.quote blockquote{margin:0 auto;max-width:24ch;font:italic 500 clamp(30px,4.6vw,58px)/1.2 var(--body);color:var(--fg)}
.quote cite{display:block;margin-top:22px;font:600 12px/1 var(--ui);letter-spacing:.2em;text-transform:uppercase;font-style:normal;color:var(--accent)}
.quote p{max-width:56ch;margin:26px auto 0;font-size:21px}
.facts{display:flex;justify-content:center;flex-wrap:wrap;gap:30px 50px;list-style:none;padding:0;margin:34px 0 0;font:600 12px/1.2 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.facts strong{display:block;font:600 52px/1 var(--body);color:var(--accent);letter-spacing:0}
/* secciones, cada una con su color */
.sechead{padding:70px 16px 40px;text-align:center;background:var(--bg)}
.sechead h2{margin:0}
#pieces .piece{margin:0;border:0;padding:clamp(48px,7vw,92px) max(16px,calc((100vw - 1120px)/2));background:var(--c);color:var(--fg);grid-template-columns:170px 1fr minmax(200px,320px);gap:clamp(24px,4vw,56px)}
#s-poesia{--c:var(--c-poesia)}#s-ensayo{--c:var(--c-ensayo)}#s-cuento{--c:var(--c-cuento)}#s-resena{--c:var(--c-resena)}#s-entrevista{--c:var(--c-entrevista)}#s-teatro{--c:var(--c-teatro)}#s-separata{--c:var(--c-separata)}
#pieces .piece__kind{font:800 15px/1 var(--ui);letter-spacing:.26em;color:var(--fg);margin:8px 0 0;padding-top:14px;border-top:3px solid var(--fg)}
#pieces h3{font:italic 600 clamp(32px,4vw,56px)/1.05 var(--body);margin:0 0 8px}
#pieces .piece__by{color:rgba(44,29,58,.75)}
#pieces blockquote{font-size:clamp(20px,2vw,24px);max-width:none}
#pieces blockquote::first-letter{font-size:2.3em;float:left;line-height:.8;padding:.06em .08em 0 0;font-weight:600}
#pieces blockquote.verse::first-letter{all:unset}#pieces blockquote.verse{border-left-color:var(--fg)}
#pieces .piece__fig img{border:6px solid #fff;box-shadow:0 18px 40px rgba(60,30,70,.25);max-height:420px}
.t-faces{background:#fff6ea}.t-art{background:#e7f1fa}.t-toc{background:#e9e0f6}.t-arch{background:#fdeaf0}.t-contact{background:#fff3d6}
.t-faces .eyebrow,.t-art .eyebrow,.t-toc .eyebrow,.t-arch .eyebrow,.t-contact .eyebrow,.sechead .eyebrow{color:var(--accent)}
.sec h2{color:var(--fg)}.lead{color:var(--muted)}
.toc__cols{columns:3 280px;column-gap:48px}.toc li{border-color:var(--line)}.toc__group h3{color:var(--accent)}
.contact__box{background:#fff;border-top-color:var(--accent)}
.foot .wm{color:#fff}.foot a{color:#ffd6e0}
@media(max-width:900px){#pieces .piece{grid-template-columns:1fr}.mast__top{justify-content:center}.hero{padding-top:176px}.mast__nav a:nth-of-type(n+4){display:none}.quote{background-attachment:scroll}}
@media(max-width:900px){.mast__top{display:none}.hero{padding-top:150px}.hero__cap{font-size:10px;letter-spacing:.14em;text-align:center}}

.bgcap{position:absolute;z-index:3;left:clamp(16px,3vw,40px);bottom:20px;margin:0;font:600 11px/1 var(--ui);letter-spacing:.18em;text-transform:uppercase;color:#fff;text-shadow:0 1px 8px rgba(60,30,70,.7)}
@media(max-width:900px){.bgcap{display:none}}

.covers__h{margin-top:70px}.covers__h h3{font:italic 600 clamp(28px,3.4vw,44px)/1.1 var(--body);margin:0 0 6px}
.covers{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:16px}
.cv{padding:0;border:0;background:none;cursor:zoom-in;transition:transform .25s}
.cv:hover{transform:translateY(-4px) rotate(-1deg)}
.cv img{width:100%;aspect-ratio:101/138;object-fit:cover;border:3px solid #fff;box-shadow:0 10px 22px rgba(120,40,80,.25);background:#fff}

button.card{padding:0;border:0;background:none;cursor:zoom-in;text-align:left;font:inherit}
.card--old img{background:#fff}

/* texto de presentación bajo el nombre */
.mast__about{max-width:780px;margin:2px auto 6px;padding:0 16px;font:italic 400 clamp(14px,1.35vw,17px)/1.45 var(--body);color:var(--muted)}
.mast.compact .mast__about{display:none}
.hero{padding-top:270px}
@media(max-width:900px){.mast__about{font-size:13.5px;line-height:1.4;margin-bottom:4px}.hero{padding-top:260px}}
.mast__about{color:#2c1d3a;font-style:normal;font-weight:500;font-size:clamp(15px,1.4vw,18px)}
.mast__about{max-width:880px}

/* banner: la definición de la revista sobre el carrusel de Nueva York */
.hero{min-height:82svh;padding:190px 16px 100px}
.about{max-width:860px;text-align:center;background:rgba(255,255,255,.86);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:clamp(26px,4vw,44px) clamp(22px,4vw,52px);border-radius:16px;box-shadow:0 24px 60px rgba(70,30,60,.22);animation:aboutIn 1s .2s both}
@keyframes aboutIn{from{opacity:0;transform:translateY(18px)}}
.about__k{margin:0 0 14px;font:700 11.5px/1 var(--ui);letter-spacing:.24em;text-transform:uppercase;color:var(--accent)}
.about__t{margin:0;font:500 clamp(19px,2.1vw,26px)/1.5 var(--body);color:#2c1d3a}
.about__go{display:inline-block;margin-top:20px;padding:12px 22px;border-radius:99px;background:#2c1d3a;color:#fff;text-decoration:none;font:700 11.5px/1 var(--ui);letter-spacing:.16em;text-transform:uppercase;transition:transform .2s}
.about__go:hover{transform:translateY(-2px)}
/* número 20 debajo del banner */
.n20{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center;padding:clamp(60px,8vw,100px) 16px;background:linear-gradient(#fff6ef,#fbeef6)}
.n20 .eyebrow{margin:0;color:var(--accent)}
.n20__t{margin:0;font:italic 600 clamp(36px,5vw,62px)/1 var(--body);color:#2c1d3a}
.n20 .cover img{height:clamp(320px,62vh,560px)}
.n20 .hero__cap{background:#fff}
.n20__k{margin:8px 0 0;font:700 11.5px/1 var(--ui);letter-spacing:.22em;text-transform:uppercase;color:#2c1d3a}
@media(max-width:900px){.hero{min-height:72svh;padding:150px 16px 80px}.n20 .cover img{height:auto;width:min(78vw,360px)}}

.n20{display:block}
.n20__g{display:grid;grid-template-columns:auto minmax(0,520px);gap:clamp(30px,6vw,80px);align-items:center;justify-content:center;max-width:1120px;margin:0 auto}
.n20__txt{text-align:left}
.n20__txt .eyebrow{margin:0 0 10px}
.n20__d{margin:16px 0 22px;font:500 clamp(18px,1.6vw,21px)/1.55 var(--body);color:#2c1d3a}
.n20 .chips{justify-content:flex-start;margin:12px 0 26px}
.n20 .cover img{height:clamp(320px,64vh,540px)}
@media(max-width:900px){.n20__g{grid-template-columns:1fr;justify-items:center}.n20__txt{text-align:center}.n20 .chips{justify-content:center}}
/* tarjeta del banner más transparente, letra negra */
.about{background:rgba(255,255,255,.38);-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);box-shadow:0 18px 50px rgba(70,30,60,.14);border:1px solid rgba(255,255,255,.55)}
.about__t{color:#000;font-weight:600;text-shadow:0 0 14px rgba(255,255,255,.9),0 0 3px rgba(255,255,255,.8)}
.about__k{color:#000;text-shadow:0 0 10px rgba(255,255,255,.9)}
.about{background:rgba(255,255,255,.12);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;border:1px solid rgba(255,255,255,.35)}
.about__t{text-shadow:0 0 18px rgba(255,255,255,.95),0 0 6px rgba(255,255,255,.9),0 0 2px rgba(255,255,255,1)}

.mast__ny{margin:0 0 4px;font:700 11px/1 var(--ui);letter-spacing:.26em;text-transform:uppercase;color:var(--accent)}
.mast.compact .mast__ny{display:none}
@media(max-width:900px){.mast__ny{font-size:9.5px;letter-spacing:.18em}}

.n20__btns{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px}
.about__go.buy{background:#b4476b;font-size:12.5px;padding:14px 26px}
.n20__more{font:700 11.5px/1 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:#2c1d3a;text-decoration:none;border-bottom:2px solid #2c1d3a;padding-bottom:3px}
@media(max-width:900px){.n20__btns{justify-content:center}}
/* texto arriba del banner, a todo el ancho, sobre el cielo de la acuarela */
.hero{align-items:flex-start;padding-top:150px;min-height:88svh}
.hero__c{width:100%}
.hero::after{background:linear-gradient(rgba(255,250,246,.82) 0%,rgba(255,250,246,.55) 26%,rgba(255,250,246,0) 52%)}
.about{max-width:1180px;width:100%;margin:0 auto;padding:clamp(18px,3vw,34px) clamp(16px,4vw,48px) 0;background:none;border:0;border-radius:0;box-shadow:none;text-align:center}
.about__t{font:500 clamp(20px,2.25vw,30px)/1.45 var(--body);color:#1a1020;text-shadow:0 0 22px rgba(255,250,246,.9),0 0 6px rgba(255,250,246,.8);letter-spacing:.005em}
.about__t::before,.about__t::after{content:'';display:block;width:60px;height:2px;margin:0 auto 18px;background:#b4476b}
.about__t::after{margin:20px auto 0}
.about__go{margin-top:22px}
@media(max-width:900px){.hero{padding-top:130px;min-height:80svh}.about__t{font-size:18px}}
.hero::after{background:linear-gradient(rgba(255,250,246,.86) 0%,rgba(255,250,246,.74) 34%,rgba(255,250,246,.35) 48%,rgba(255,250,246,0) 62%)}

/* franja neutra con la definición, y debajo el banner de imágenes */
.intro{padding:clamp(150px,13vw,175px) clamp(16px,4vw,56px) clamp(36px,4vw,52px);background:#f6f1ea;text-align:center;border-bottom:1px solid rgba(44,29,58,.1)}
.intro__t{max-width:1500px;margin:0 auto;font:500 clamp(19px,1.9vw,27px)/1.5 var(--body);color:#1a1020}
.intro .about__go{margin-top:22px}
.hero{min-height:72svh;padding:0;align-items:stretch}
.hero::after{background:none}
@media(max-width:900px){.intro{padding-top:140px}.intro__t{font-size:18px}.hero{min-height:52svh}}
.intro{padding-top:200px}@media(max-width:900px){.intro{padding-top:150px}}

.intro__w{font:italic 700 1.75em/1 'Libre Caslon Text','Times New Roman',serif;text-transform:uppercase;letter-spacing:.01em;color:#2c1d3a;vertical-align:-.06em;margin-right:.08em}
