/* alcobas.es — revista blanca, serif editorial, etiquetas en sans */
@font-face{font-family:"Newsreader";src:url("/assets/fonts/newsreader-latin-400-normal.e66067814f.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Newsreader";src:url("/assets/fonts/newsreader-latin-400-italic.fa9b900403.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Newsreader";src:url("/assets/fonts/newsreader-latin-500-normal.5613e2fc83.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Newsreader";src:url("/assets/fonts/newsreader-latin-500-italic.3d184d574e.woff2") format("woff2");font-weight:500;font-style:italic;font-display:swap}
@font-face{font-family:"Work Sans";src:url("/assets/fonts/work-sans-latin-400-normal.418b069367.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Work Sans";src:url("/assets/fonts/work-sans-latin-500-normal.943a4b2d8b.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Work Sans";src:url("/assets/fonts/work-sans-latin-600-normal.c536b548fd.woff2") format("woff2");font-weight:600;font-display:swap}

:root{
  --paper:#FFFFFF; --ink:#111111; --ink-2:#2A2A2A; --muted:#6B6B6B; --line:#E4E4E4;
  --butter:#FBF0C9; --band:#111111; --band-ink:#FFFFFF;
  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --sans:"Work Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --gut:max(16px,env(safe-area-inset-left,0px));
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 18px/1.55 var(--serif)}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px 12px;z-index:9}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.center{text-align:center}
.wrap{max-width:1240px;margin:0 auto;padding-left:var(--gut);padding-right:max(16px,env(safe-area-inset-right,0px))}
.col{max-width:760px;margin:0 auto;padding:40px max(16px,env(safe-area-inset-right,0px)) 24px var(--gut)}

/* etiquetas */
.kicker{font:600 13px/1.3 var(--sans);letter-spacing:.02em;margin:0 0 10px}
.kicker a{text-decoration:none}
.date{font:400 13px/1.4 var(--sans);color:var(--muted);margin:10px 0 0}
.pill{display:inline-block;font:500 14px/1 var(--sans);border:1px solid var(--ink);border-radius:999px;padding:10px 18px;text-decoration:none}
.pill:hover{background:var(--ink);color:#fff;text-decoration:none}

/* cabecera */
.top{border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--paper);z-index:5}
.top__row{max-width:1240px;margin:0 auto;padding:14px max(16px,env(safe-area-inset-right,0px)) 12px var(--gut);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px}
.nav{display:flex;gap:18px;flex-wrap:wrap;font:400 16px/1.2 var(--serif)}
.brand{display:flex;flex-direction:column;align-items:center;text-decoration:none}
.brand:hover{text-decoration:none}
.brand__name{font:500 38px/1 var(--serif);letter-spacing:.16em;text-transform:uppercase;padding-left:.16em}
.brand__sub{font:500 9.5px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;margin-top:6px;color:var(--ink-2)}
.top__scope{justify-self:end;margin:0;font:400 13px/1.3 var(--sans);color:var(--muted)}

/* portada */
.home{max-width:1240px;margin:0 auto;padding:28px max(16px,env(safe-area-inset-right,0px)) 40px var(--gut);display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:40px}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pair img{width:100%;aspect-ratio:4/5;object-fit:cover}
.pair--one{grid-template-columns:1fr}
.pair--one img{aspect-ratio:3/2}
.feature .pair img{aspect-ratio:4/5}
.feature .pair--one img{aspect-ratio:16/10}
.feature__band{background:var(--band);color:var(--band-ink);text-align:center;padding:30px 28px 28px}
.feature__band .date{color:#BDBDBD}
.feature__title{font:500 clamp(30px,3.6vw,46px)/1.1 var(--serif);margin:0 0 12px;text-wrap:balance}
.feature__text{max-width:56ch;margin:0 auto;font-size:17px}
.intro{text-align:center;padding:60px 20px;border:1px solid var(--line)}
.row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:center;padding:34px 0;border-bottom:1px solid var(--line)}
.row--flip .pair{order:2}
.row__body{text-align:center;padding:0 8px}
.row__title{font:500 clamp(24px,2.4vw,32px)/1.15 var(--serif);margin:0 0 10px;text-wrap:balance}
.row__text{margin:0 auto;max-width:42ch;font-size:16.5px}
.home__side{display:grid;gap:34px;align-content:start}
.side-box{border-top:1px solid var(--ink);padding-top:14px}
.side-box--butter{background:var(--butter);border-top:0;padding:26px 22px;text-align:center}
.side-box__text{margin:0 0 16px;font-size:17px}
.side-title{font:400 22px/1.2 var(--serif);margin:0 0 12px}
.cal,.zones{list-style:none;margin:0;padding:0}
.cal li{display:grid;grid-template-columns:120px 1fr;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:16px}
.cal time{font:500 13px/1.6 var(--sans)}
.zones li{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--line);font-size:17px}
.zones span{font:400 13px/1.8 var(--sans);color:var(--muted)}

/* listas */
.list-head{text-align:center;padding:40px 0 10px}
.list-title{font:500 clamp(32px,4vw,48px)/1.1 var(--serif);margin:0 0 20px;text-align:center}
.list-title--small{font-size:32px}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px;padding-bottom:50px}
.card__body{text-align:center;padding:16px 6px 0}
.card__title{font:500 24px/1.18 var(--serif);margin:0 0 8px;text-wrap:balance}
.card__text{margin:0;font-size:16px}
.more{border-top:1px solid var(--line);padding-top:36px;margin-top:20px}

/* artículo */
.art__head{text-align:center;margin-bottom:28px}
.art__title{font:500 clamp(34px,5vw,50px)/1.08 var(--serif);margin:0 0 14px;text-wrap:balance;text-align:center}
.art__dek{font:italic 400 20px/1.45 var(--serif);margin:0 auto 14px;max-width:52ch;color:var(--ink-2)}
.art__by{font:500 15px/1.4 var(--sans);margin:0}
.art__by a{text-decoration:underline;text-underline-offset:3px}
.art__hero{margin:0 0 30px}
.art__hero img,.prose figure img{width:100%}
figcaption{font:400 12.5px/1.4 var(--sans);color:var(--muted);margin-top:8px}
.prose{font-size:19px;line-height:1.62}
.prose p{margin:0 0 1.1em}
.prose a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.prose h2{font:500 21px/1.3 var(--serif);letter-spacing:.08em;text-transform:uppercase;margin:2em 0 .7em}
.prose h3{font:italic 500 23px/1.3 var(--serif);margin:1.6em 0 .5em}
.prose figure{margin:1.8em 0}
.prose ul,.prose ol{padding-left:1.2em;margin:0 0 1.1em}
.prose li{margin:.3em 0}
.prose blockquote{margin:1.6em 0;padding:0 0 0 18px;border-left:2px solid var(--ink);font-style:italic}
.prose table{display:block;overflow-x:auto;border-collapse:collapse;font:400 15px/1.45 var(--sans);margin:0 0 1.4em;max-width:100%}
.prose th,.prose td{border-bottom:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
.prose th{font-weight:600}
.box-title{font:400 24px/1.2 var(--serif);margin:0 0 12px}
.verdict{background:var(--band);color:var(--band-ink);text-align:center;padding:28px 26px;margin:36px 0 22px}
.verdict .kicker{margin-bottom:10px;letter-spacing:.14em;text-transform:uppercase;font-size:12px}
.verdict p{margin:0;font:400 22px/1.4 var(--serif)}
.butter{background:var(--butter);padding:24px 26px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;margin:22px 0}
.butter p{margin:0;font-size:17px}
dl{margin:0}
dl>div{padding:8px 0;border-bottom:1px solid rgba(0,0,0,.12)}
dt{font:600 13px/1.4 var(--sans);margin-bottom:2px}
dd{margin:0;font-size:17px}
.practical{border-top:1px solid var(--ink);padding-top:16px;margin:30px 0}
.faq{border-top:1px solid var(--ink);padding-top:16px;margin:30px 0}
.faq details{border-bottom:1px solid var(--line);padding:12px 0}
.faq summary{cursor:pointer;font:500 18px/1.35 var(--serif);list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";float:right;font-family:var(--sans)}
.faq details[open] summary::after{content:"–"}
.faq p{margin:10px 0 0;font-size:17px}
.sources{font:400 13px/1.6 var(--sans);color:var(--muted);border-top:1px solid var(--line);padding-top:14px}
.sources a{text-decoration:underline;text-underline-offset:2px}

/* contacto */
.form{display:grid;gap:14px;margin:1em 0}
.form label{font:600 13px/1.4 var(--sans);display:grid;gap:6px}
.form input,.form textarea{font:400 17px/1.4 var(--serif);padding:10px 12px;border:1px solid #BDBDBD;border-radius:0;background:#fff;color:var(--ink);width:100%}
.form textarea{min-height:180px}
.form button{justify-self:start;font:500 15px/1 var(--sans);background:var(--ink);color:#fff;border:0;border-radius:999px;padding:13px 24px;cursor:pointer}
.hp{position:absolute;left:-5000px}

/* pie */
.foot{border-top:1px solid var(--ink);margin-top:30px}
.foot__in{max-width:1240px;margin:0 auto;padding:34px max(16px,env(safe-area-inset-right,0px)) 40px var(--gut);display:grid;grid-template-columns:auto 1fr 1fr;gap:28px;align-items:start}
.brand--foot{align-items:flex-start}
.brand--foot .brand__name{font-size:28px}
.foot nav{display:flex;flex-direction:column;gap:8px;font-size:16px}
.foot__small{grid-column:1/-1;font:400 12.5px/1.4 var(--sans);color:var(--muted);margin:10px 0 0}

@media (max-width:980px){
  .home{grid-template-columns:1fr}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .top__row{grid-template-columns:1fr;justify-items:center;gap:10px}
  .brand{order:-1}
  .brand__name{font-size:30px}
  .nav{justify-content:center;gap:6px 16px;font-size:16px}
  .top__scope{display:none}
  .top{position:static}
  .row,.row--flip{grid-template-columns:1fr;gap:16px}
  .row--flip .pair{order:0}
  .grid{grid-template-columns:1fr}
  .foot__in{grid-template-columns:1fr}
  .col{padding-top:26px}
  .prose{font-size:18px}
}
