/* BUTACAS · Nueva propuesta visual independiente */
:root{--paper:#f7f0e9;--ink:#f7f0e9;--red:#ef9b85;--line:#ffffff30;--muted:#d0c3bf;--bg:#10090c;--card:#201418;--text:#f7f0e9;--card-border:#ffffff26;--accent:#ef9b85;--accent2:#f5baa8;--gold:#e1c194;--sans:Arial,Helvetica,sans-serif;--serif:Arial,Helvetica,sans-serif}
html{background:#10090c;min-height:100%}
body{margin:0;isolation:isolate;min-height:100vh;background:#10090c;color:var(--text);font-family:var(--sans);line-height:1.6}
body:before{content:"";position:fixed;inset:0;z-index:-2;background:linear-gradient(180deg,#0b070bc4 0%,#0e080d70 28%,#0e080d63 52%,#10090de8 100%),url('/assets/butacas-cine.png') center 53% / cover no-repeat;pointer-events:none}
body:after{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(90deg,#0c080b55,transparent 48%,#0c080b40);pointer-events:none}
a,button{transition:color .18s,background .18s}::selection{background:#ad4c48;color:#fff}
.wrap,.cartelera-page main,.cartelera-page .controls,.cartelera-page .banner{width:min(1240px,calc(100% - 88px))}
.site-header{position:relative;background:none}.topline{padding-top:24px;border-bottom:1px solid #ffffff25;font-size:9px;letter-spacing:1.4px;color:#d8c9c5}.topline span:last-child{color:#d8c9c5}.masthead{padding:27px 0 29px;background:none}.masthead .brand{color:#fff7ee}.brand{font:800 clamp(40px,5.2vw,70px)/.9 Arial,sans-serif;letter-spacing:-4px;gap:12px}.brand .star{color:#e9917b}.brand-note{color:#d1bfba;border-color:#ffffff35;font-size:12px}
.nav{border-top:0;border-bottom:1px solid #ffffff30;gap:30px;padding:0 0 15px}.site-header .nav button,.site-header .nav a{color:#e8ddd8;font-size:12px;font-weight:500}.site-header .nav button.active,.site-header .nav a.active{color:#ffb6a1;border-color:#ffb6a1}.nav .archive{font:12px Arial,sans-serif;color:#cdb9b4!important}.nav a:hover{color:#ffb6a1!important}
.page-intro{display:flex;align-items:flex-end;gap:60px;padding:52px 0 45px;margin-top:0;margin-bottom:0}.page-intro .category{font:700 10px/1.5 Arial,sans-serif;letter-spacing:2.8px;color:#e8a18d}.page-intro h1{font:700 clamp(48px,6.5vw,92px)/1.04 Arial,sans-serif;letter-spacing:-3.7px;margin:19px 0 0;color:#fff5ec;text-shadow:0 3px 30px #0006}.page-intro h1 em{font-style:normal;font-weight:400;color:#ddc9c2}.page-intro p{font:14px/1.85 Arial,sans-serif;color:#e2d2ca;max-width:275px;margin:0 0 6px;text-shadow:0 1px 9px #000}
.cartelera-page .banner{margin-top:0;margin-bottom:22px}.banner-inner{border-left:1px solid #d98d77;background:none;border-radius:0;padding:0 0 0 13px;font-size:10px;color:#c6b1aa}.banner-inner b{color:#e3cbc1}
.cartelera-page .controls{background:#1a1115b8;backdrop-filter:blur(14px);border:1px solid #ffffff27;border-radius:12px;padding:18px 20px 14px;box-shadow:0 18px 40px #0003;top:12px;z-index:20}
.days{gap:7px;scrollbar-color:#b48b7e transparent;padding-bottom:16px}.day-btn{border-radius:5px;border:1px solid transparent;color:#d5c4bd;padding:9px 13px;font:11px/1.5 Arial,sans-serif;white-space:nowrap}.day-btn:hover{background:#ffffff15;border-color:#ffffff30}.day-btn.active{background:#f0b39c;color:#251518;border-color:#f0b39c}
.filters-row{gap:7px;padding-bottom:12px}.chip{border:1px solid #ffffff26;border-radius:5px;color:#d4c1bb;background:#ffffff04;font-size:11px;padding:8px 11px}.chip:hover{background:#ffffff14;color:white;border-color:#ffffff60}.chip.active,.chip[data-type].active,.chip[data-venue].active,.chip.chain-toggle.active{background:#f1e4db;color:#291a1c;border-color:#f1e4db}.search-box input{background:#0d090c80;color:#f7eee8;border:1px solid #ffffff30;border-radius:5px;font-size:12px;padding:10px 13px}.search-box input::placeholder{color:#bda9a2}.venues-toggle{color:#eeb29c;font-size:11px}.chain-menu{background:#24181e;border:1px solid #735751;border-radius:7px;box-shadow:0 15px 35px #0008}.chain-option{color:#f5e9df}.chain-option:hover{background:#4b2b30;color:white}.chain-option.active{background:#f0b39c;color:#251518}
.cartelera-page main{padding-top:14px}.count-line{color:#bda9a0;font:11px/1.7 Arial,sans-serif;letter-spacing:.2px;margin:13px 0 23px}.grid{gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}.film-card{border:1px solid #ffffff1a;border-radius:9px;background:linear-gradient(135deg,#24171ab3,#110c10d4);backdrop-filter:blur(7px);padding:24px;gap:20px;box-shadow:0 8px 24px #0002}.film-poster{width:88px;height:132px;border-radius:3px;box-shadow:0 8px 20px #0008;background:#36252b;color:#d7b6a4}.film-poster.placeholder{background:#36252b;color:#d7b6a4}.film-title{font:600 25px/1.13 Arial,sans-serif;color:#fff0e7;letter-spacing:-.7px}.film-meta{color:#cbb6ad}.film-synopsis{color:#c5b3ab;font-size:12px;line-height:1.75}.film-year{color:#eca68c}.badge.count{color:#c4a99b}.venue-row{border-color:#ffffff20}.venue-tag{color:#f2ddd2}.venue-tag small{color:#ad9790}.vose-tag{color:#ffb69e}.fmt-tag{background:#794e3d66;color:#f2cd9e}.time-pill{border-radius:3px;border-color:#ffffff30;color:#f4e3d8;background:#ffffff07}.time-pill:hover{color:#231417;background:#edb39c;border-color:#edb39c}.cycle-line,.fecha-row{color:#edb39c}
.fest-card{border-color:#ffffff30;background:#1d131999;padding:24px;border-radius:9px}.fest-name{font-family:Arial,sans-serif;color:#f7e9de}.fest-desc,.fest-dates{color:#cfb7ab}.fest-link{color:#efb39b;border-color:#efb39b}.empty{color:#e7c9b8}.closing{border-color:#ffffff35}.closing .mini-brand{color:#f4e6db}.closing p,.footer-links a,.attribution{color:#b59e94}.archive-section{border-color:#ffffff35}.archive-section h2{font-family:Arial,sans-serif}.archive-entry{border-color:#ffffff25}.archive-entry h3{font-family:Arial,sans-serif;color:#f0dfd3}
/* El blog y los artículos también se leen sobre las butacas. */
.feature h1,.story h3,.article-heading h1,.section-title h2{font-family:Arial,sans-serif;color:#fff1e5}.feature p,.story p,.article-deck{color:#d4bfb3}.feature-meta strong{color:#f4e3d5}.feature-meta{color:#c5ac9e}.feature-image,.article-hero .image{border:1px solid #ffffff25;border-radius:5px;box-shadow:0 15px 45px #0008}.section-label,.section-label .right{color:#d4bbaa}.date-stamp{background:#f0d5bd;color:#251719}.image-credit{color:#fff}.agenda{background:#21151be6;border:1px solid #ffffff25;border-radius:8px}.agenda-heading,.agenda-item .date{color:#eeb69c}.story,.section-title{border-color:#ffffff35}.story.rizoma{background:#33202bd9}.reading-grid{background:#130e12dc;border:1px solid #ffffff1f;padding:32px;border-radius:9px}.reading-body,.reading-body>p:first-child{font:18px/1.85 Arial,sans-serif;color:#e7d8ce}.reading-body h2{font-family:Arial,sans-serif;color:#fff0e4}.reading-aside{color:#c9afa0}.reading-aside strong{color:#ffe5d2}.article-hero figcaption{color:#d1b6a5;border-color:#ffffff35}.reading-body .sources,.reading-body .note{color:#bea99b}.reading-body .cta{background:#ecc2a5;color:#24151a}.reading-body .verdict-box{background:#3b282d;color:#edddd0}.legal-page main{color:#ecdbce}.legal-page main .box,.legal-page main .note{background:#271a20}
@media(max-width:1000px){.wrap,.cartelera-page main,.cartelera-page .banner,.cartelera-page .controls{width:calc(100% - 56px)}.page-intro{display:block;padding:44px 0 30px}.page-intro h1{font-size:70px;letter-spacing:-3px}.page-intro p{max-width:460px;margin-top:25px;font-size:14px}.brand-note{display:none}.film-card{padding:20px;gap:16px}.film-poster{width:70px;height:105px}.film-title{font-size:23px}.search-box{width:100%;margin:0}.search-box input{width:100%}}
@media(max-width:680px){.wrap,.cartelera-page main,.cartelera-page .banner,.cartelera-page .controls{width:calc(100% - 36px)}body:before{background-position:46% center}.topline{font-size:8px;letter-spacing:.5px;padding-top:17px}.topline .edition{display:none}.masthead{padding:26px 0}.brand{font-size:45px;letter-spacing:-3px;gap:9px}.nav{gap:19px;flex-wrap:wrap;padding-bottom:10px}.site-header .nav .archive{display:none}.site-header .nav button,.site-header .nav a{font-size:11px}.page-intro{padding-top:32px}.page-intro h1{font-size:48px;line-height:1.08;letter-spacing:-2px}.page-intro p{font-size:13px;line-height:1.8;margin-top:20px}.page-intro .category{font-size:9px}.cartelera-page .controls{position:relative;top:0;padding:15px 13px;background:#170f14cf;backdrop-filter:blur(8px)}.grid{grid-template-columns:1fr;gap:14px}.film-card{padding:20px 16px}.film-title{font-size:24px}.film-poster{width:72px;height:108px}.chip{font-size:10px;padding:8px 9px}.film-synopsis{font-size:12px}.reading-grid{padding:20px 17px}.reading-body,.reading-body>p:first-child{font-size:17px}.feature h1{font-size:48px}}
/* Tipografía: carteles de estreno y marquesinas de los años cincuenta. */
@font-face{font-family:'Bebas Cinema';src:url('/assets/fonts/BebasNeue-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'DM Cinema';src:url('/assets/fonts/DMSerifDisplay-Italic.ttf') format('truetype');font-style:italic;font-weight:400;font-display:swap}
.brand{font-family:'Bebas Cinema','Arial Narrow',sans-serif;font-weight:400;font-size:84px;letter-spacing:1px;gap:12px;line-height:.84}.brand .brand-small{font-size:.38em;letter-spacing:1.1px;line-height:.94}.brand .star{font-family:Georgia,serif;font-size:.53em;margin-left:11px}.brand-note{font:italic 15px/1.4 'DM Cinema',Georgia,serif;max-width:190px}
.site-header .nav button,.site-header .nav a{font-family:'Bebas Cinema','Arial Narrow',sans-serif;font-size:19px;font-weight:400;letter-spacing:1.7px;text-transform:uppercase}.site-header .nav .archive{font:italic 16px/1.5 'DM Cinema',Georgia,serif;letter-spacing:0;text-transform:none}
.page-intro{padding-top:39px;padding-bottom:38px}.page-intro .category{font:400 14px/1.5 'Bebas Cinema',sans-serif;letter-spacing:4px}.page-intro h1{font:400 clamp(72px,9.5vw,132px)/.94 'Bebas Cinema','Arial Narrow',sans-serif;text-transform:uppercase;letter-spacing:1.1px;text-shadow:2px 2px 0 #5f292a,0 5px 25px #0007;margin-top:20px}.page-intro h1 em{display:inline-block;font:italic 400 .58em/1.12 'DM Cinema',Georgia,serif;text-transform:none;letter-spacing:-1px;color:#efcfb5;text-shadow:0 3px 20px #0008;margin-top:13px}.page-intro p{font:16px/1.75 Georgia,'Times New Roman',serif;color:#e4d4c9;max-width:310px}
.film-title{font:400 31px/1.04 'Bebas Cinema','Arial Narrow',sans-serif;letter-spacing:.7px}.film-year{font-family:Georgia,serif;font-style:italic}.badge.count{font:400 12px/1.5 'Bebas Cinema',sans-serif;letter-spacing:1px}.fest-name,.archive-section h2,.archive-entry h3{font-family:'Bebas Cinema','Arial Narrow',sans-serif;font-weight:400;letter-spacing:1px}.closing .mini-brand{font:400 28px/1 'Bebas Cinema',sans-serif;letter-spacing:1px}
.feature h1,.article-heading h1{font:400 clamp(52px,7vw,90px)/.97 'Bebas Cinema','Arial Narrow',sans-serif;text-transform:uppercase;letter-spacing:1px}.feature h1 em,.article-heading h1 em{font-family:'DM Cinema',Georgia,serif;text-transform:none;font-weight:400;letter-spacing:-1px}.story h3,.section-title h2{font-family:'Bebas Cinema','Arial Narrow',sans-serif;font-weight:400;letter-spacing:.8px}.agenda-heading{font-family:'DM Cinema',Georgia,serif;font-style:italic}.reading-body,.reading-body>p:first-child{font-family:Georgia,'Times New Roman',serif}.reading-body h2{font-family:'Bebas Cinema','Arial Narrow',sans-serif;letter-spacing:.7px;font-weight:400}
@media(max-width:1000px){.brand{font-size:72px;letter-spacing:1px}.page-intro h1{font-size:100px;letter-spacing:1px}.page-intro h1 em{font-size:.6em}.page-intro p{max-width:480px;font-size:15px}.film-title{font-size:29px}}
@media(max-width:680px){.brand{font-size:60px;letter-spacing:.5px;gap:10px}.brand .brand-small{letter-spacing:.7px}.site-header .nav button,.site-header .nav a{font-size:17px;letter-spacing:1px}.site-header .nav{gap:20px}.page-intro{padding-top:30px}.page-intro h1{font-size:clamp(58px,12vw,80px);letter-spacing:.5px;line-height:1}.page-intro h1 em{font-size:.62em;letter-spacing:-.7px;margin-top:12px}.page-intro p{font-size:15px}.page-intro .category{font-size:13px;letter-spacing:3px}.film-title{font-size:29px}.feature h1,.article-heading h1{font-size:61px}}
/* Dirección afinada con las referencias de publicidad impresa de los 50. */
@font-face{font-family:'Lobster Cinema';src:url('/assets/fonts/Lobster-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Bowlby Cinema';src:url('/assets/fonts/BowlbyOneSC-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--red:#eda68f;--accent:#eda68f;--gold:#e1c194}
.brand{font:400 76px/.95 'Lobster Cinema',Georgia,serif;letter-spacing:-1px;gap:17px;transform:rotate(-2deg);transform-origin:left center}.brand .brand-small{font:400 .22em/1.35 'Bowlby Cinema',sans-serif;letter-spacing:.6px;transform:rotate(2deg);color:#9bc5ba}.brand .star{font:36px/1 Georgia,serif;color:#d85f47}.brand-note{font:italic 15px/1.5 Georgia,serif}
.site-header .nav button,.site-header .nav a{font:400 13px/1.7 'Bowlby Cinema',sans-serif;letter-spacing:.3px}.site-header .nav .archive{font:400 18px/1.4 'Lobster Cinema',Georgia,serif;color:#ecd3b6!important}.nav{border-bottom-color:#e4d2b65c}
.page-intro{padding-top:40px;padding-bottom:32px}.page-intro .category{font:700 11px/1.6 Arial,sans-serif;letter-spacing:2.6px;color:#a4c9bd}.page-intro h1{font:400 clamp(62px,7.6vw,106px)/1.1 'Lobster Cinema',Georgia,serif;letter-spacing:-1px;text-transform:none;text-shadow:1px 2px 0 #6b2828;margin-top:21px;max-width:910px}.headline-script{display:inline-block;position:relative;isolation:isolate;padding:4px 22px 13px 15px;transform:rotate(-2deg);color:#fff1d7}.headline-script:before{content:"";position:absolute;inset:2px -10px 0 -15px;background:#ab352f;z-index:-1;transform:skewX(-9deg);box-shadow:5px 5px 0 #efcf9a66;border-top:1px solid #db826455}.headline-script:after{content:"";position:absolute;bottom:10px;left:15px;right:20px;height:1px;background:#fbe1b442;z-index:-1}.page-intro h1 em{font:400 .43em/1.35 'Bowlby Cinema',Arial,sans-serif;text-transform:uppercase;letter-spacing:.3px;color:#f5e6cb;text-shadow:2px 2px 0 #58332c;margin-top:22px;max-width:900px}.page-intro p{font:16px/1.7 Georgia,serif;color:#e5d1b6}
.page-intro h1 em:after{content:"";display:block;height:4px;width:190px;background:#72a69c;margin-top:12px;transform:rotate(-2deg);border-radius:50%}
.cartelera-page .controls{border-radius:2px;border:1px solid #e4d1b77a;background:#18181be0;box-shadow:5px 5px 0 #0b080b88;backdrop-filter:blur(8px)}.day-btn,.chip,.search-box input{border-radius:1px}.day-btn.active{background:#e8d7b9;border-color:#e8d7b9;color:#321c1c}.chip.active,.chip[data-type].active,.chip[data-venue].active,.chip.chain-toggle.active{background:#426d66;border-color:#8bada1;color:#fff3da}.time-pill{border-radius:1px}.film-card{border-radius:2px;border-color:#e2d0b344;background:#171316db;box-shadow:3px 3px 0 #05040555}.film-title{font:400 22px/1.25 'Bowlby Cinema',Arial,sans-serif;letter-spacing:0;color:#f2e3c7}.film-meta,.film-synopsis{color:#cfbdac}.film-year{color:#e6ae89}.vose-tag{color:#9ec4b8}.fmt-tag{color:#efd4a6}.film-poster{border-radius:0}.badge.count{font:700 9px/1.5 Arial,sans-serif;letter-spacing:.5px}.closing .mini-brand{font:400 30px/1.2 'Lobster Cinema',Georgia,serif;letter-spacing:0}
.feature h1,.article-heading h1{font-family:'Lobster Cinema',Georgia,serif;text-transform:none;letter-spacing:-1px}.feature h1 em,.article-heading h1 em{font-family:'Lobster Cinema',Georgia,serif;font-style:normal;color:#dfb991}.story h3,.section-title h2,.reading-body h2,.fest-name,.archive-entry h3,.archive-section h2{font-family:'Bowlby Cinema',Arial,sans-serif;letter-spacing:0;font-weight:400}.story h3{font-size:25px}.section-title h2{font-size:32px}.reading-body h2{font-size:27px}.agenda-heading{font-family:'Lobster Cinema',Georgia,serif;font-style:normal;color:#efccaa}
@media(max-width:1000px){.brand{font-size:69px}.page-intro h1{font-size:82px}.page-intro h1 em{font-size:.46em}.page-intro p{font-size:15px}.film-title{font-size:20px}.site-header .nav button,.site-header .nav a{font-size:12px}.site-header .nav .archive{font-size:17px}}
@media(max-width:680px){.brand{font-size:54px;gap:12px}.brand .star{font-size:29px;margin-left:0}.brand .brand-small{font-size:.21em}.site-header .nav{gap:17px}.site-header .nav button,.site-header .nav a{font-size:10px;letter-spacing:0}.page-intro{padding-top:28px}.page-intro h1{font-size:clamp(43px,10.6vw,66px);letter-spacing:-1px;line-height:1.1}.headline-script{padding:4px 10px 10px 5px}.headline-script:before{left:-8px;right:-4px;box-shadow:3px 3px 0 #efcf9a66}.page-intro h1 em{font-size:.48em;line-height:1.45;margin-top:22px;letter-spacing:0}.page-intro .category{font-size:9px;letter-spacing:2px}.page-intro p{font-size:15px}.film-title{font-size:21px}.story h3{font-size:23px}}
/* Logo aprobado, con transparencia sobre la fotografía de las butacas. */
.masthead .brand{display:block;width:clamp(245px,30vw,395px);max-width:100%;font-size:initial;line-height:1;letter-spacing:0;transform:none;padding:0;flex:none}
.brand-logo{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 3px 7px #0005)}
.masthead{padding-top:22px;padding-bottom:25px}
@media(max-width:680px){.masthead .brand{width:min(290px,87%)}.masthead{padding-top:22px;padding-bottom:24px}}
/* Prueba aprobable: botones con extremos redondeados. */
button,[role="button"],input[type="button"],input[type="submit"],.day-btn,.chip,.time-pill,.venues-toggle,.chain-option{border-radius:999px}
.search-box input{border-radius:999px}

/* Las imágenes de las tarjetas deben ocupar su altura antes del texto. */
.stories{align-items:start}
.story{min-width:0}
.story .story-image{display:block;min-width:0}
.story .story-image img{display:block}
