:root{--bg:#0b1220;--bg2:#111a2e;--card:#15203a;--line:#26334f;--ink:#e9edf5;--mute:#9aa7c0;--gold:#d9b25f;--sea:#2fc4c4;--red:#e0584a}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 "Inter",system-ui,sans-serif;overflow-x:hidden}
h1,h2,h3,.serif{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;letter-spacing:.2px}
a{color:var(--sea)}img{max-width:100%;height:auto;display:block}
header.top{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:rgba(11,18,32,.88);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.brand{font-family:"Cormorant Garamond",serif;font-size:26px;color:#fff;text-decoration:none}.brand span{color:var(--gold)}
.lang a{color:var(--mute);text-decoration:none;font-size:13px;padding:4px 7px;border-radius:4px}.lang a.on{background:var(--gold);color:#111}
nav.tabs{display:flex;gap:6px;overflow-x:auto;padding:10px 20px;background:var(--bg2);border-bottom:1px solid var(--line);scrollbar-width:none}
nav.tabs a{white-space:nowrap;color:var(--mute);text-decoration:none;padding:8px 14px;border-radius:999px;border:1px solid transparent;font-size:15px}
nav.tabs a.on{color:#111;background:var(--gold)}nav.tabs a:hover{border-color:var(--gold);color:var(--ink)}
.hero{position:relative;min-height:78vh;display:flex;align-items:flex-end;overflow:hidden}
.hero .bg{position:absolute;inset:0}.hero .bg img{width:100%;height:100%;object-fit:cover;transform:scale(1.04);animation:slow 30s ease-in-out infinite alternate}
@keyframes slow{to{transform:scale(1.12)}}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,18,32,.25),rgba(11,18,32,.55) 55%,var(--bg))}
.hero .in{position:relative;z-index:2;max-width:1040px;margin:0 auto;padding:0 20px 56px;width:100%}
.kicker{color:var(--gold);letter-spacing:3px;text-transform:uppercase;font-size:13px}
.hero h1{font-size:clamp(38px,7vw,80px);line-height:1.04;margin:10px 0 14px}
.hero p.lead{font-size:clamp(18px,2.2vw,23px);max-width:700px;color:#d7deec;margin:0}
.crumbs{font-size:14px;color:var(--mute);margin-bottom:14px}.crumbs a{color:var(--mute)}
.tag{display:inline-block;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;padding:4px 10px;border-radius:999px;border:1px solid var(--gold);color:var(--gold);margin:0 6px 8px 0}
.tag.film{border-color:var(--red);color:#ff9d92}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}
.page{padding-top:26px}.lead2{font-size:19px;color:#d7deec;max-width:760px}
section.blk{padding:44px 0 6px}
h2{font-size:clamp(28px,4vw,42px);margin:0 0 14px;line-height:1.15}
h1.serif{font-size:clamp(34px,5vw,56px);margin:6px 0 10px}
.counter{display:flex;gap:28px;flex-wrap:wrap;margin:24px 0 0}.counter b{display:block;font:600 44px "Cormorant Garamond",serif;color:var(--gold);line-height:1}.counter span{font-size:13px;color:var(--mute);text-transform:uppercase;letter-spacing:1.5px}
.map{height:440px;border-radius:14px;border:1px solid var(--line);margin:18px 0 8px;background:var(--bg2)}
.dark-tiles{filter:invert(1) hue-rotate(200deg) brightness(.85) contrast(.9) saturate(.6)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;margin:20px 0}
.card{display:block;border-radius:14px;overflow:hidden;background:var(--card);border:1px solid var(--line);color:var(--ink);text-decoration:none;transition:transform .25s,border-color .25s}
.card:hover{transform:translateY(-5px);border-color:var(--gold)}
.card .im{overflow:hidden;aspect-ratio:4/3;background:var(--bg2)}.card .im img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.card:hover .im img{transform:scale(1.07)}
.card .tx{padding:14px 16px 18px}.card h3{margin:2px 0 4px;font-size:26px}.card p{margin:0;color:var(--mute);font-size:15px}.card .dist{margin-top:6px;color:var(--gold);font-size:13px}
.temas{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.tema{display:flex;flex-direction:column;gap:2px;padding:16px;background:var(--card);border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--ink);transition:border-color .2s}
.tema:hover{border-color:var(--gold)}.tema b{font-size:26px}.tema span{font-size:23px}.tema small{color:var(--mute)}
.hook{font:italic 500 clamp(24px,3.2vw,34px)/1.3 "Cormorant Garamond",serif;color:var(--gold);border-left:3px solid var(--gold);padding:4px 0 4px 18px;margin:8px 0 26px}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:20px 0}.facts div{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px 14px}.facts small{color:var(--mute);display:block;text-transform:uppercase;letter-spacing:1px;font-size:11px}
.curios{padding-left:20px}.curios li{margin:8px 0}
.film-box{background:linear-gradient(135deg,#2a1620,#15203a);border:1px solid #5a2a35;border-radius:14px;padding:22px 24px}
.film-box h2{margin:6px 0 8px;color:#ffb3aa;font-size:clamp(26px,3.4vw,36px)}.films{padding-left:20px}.films li{margin:6px 0}.films span{color:var(--mute)}
.sub{color:var(--mute);margin:0 0 14px}
.tour-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.tour{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;background:var(--card);overflow:hidden;text-decoration:none;color:var(--ink);transition:border-color .2s}.tour:hover{border-color:var(--gold)}
.tour img{width:100%;aspect-ratio:3/2;object-fit:cover}.tour .tx{padding:12px 14px;display:flex;flex-direction:column;flex:1}.tour .tt{font-weight:600;margin:0 0 6px;line-height:1.35}.tour .meta{color:var(--mute);font-size:14px;margin:0 0 10px}
.btn{display:inline-block;background:var(--gold);color:#111;font-weight:600;padding:8px 14px;border-radius:8px;font-size:14px;margin-top:auto;align-self:flex-start}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}.gal figure{margin:0}.gal img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:10px}.gal figcaption,.small{font-size:13px;color:var(--mute)}
details{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px 16px;margin:10px 0}summary{cursor:pointer;font-weight:600}details p{margin:10px 0 0}
.lista-todos{columns:3 200px;padding-left:18px;font-size:15px}.lista-todos li{margin:3px 0}
.creditos-home{margin:10px 0 18px}.creditos-home summary{font-weight:400;color:var(--mute);font-size:14px}
footer.site{margin-top:60px;padding:30px 20px 100px;border-top:1px solid var(--line);color:var(--mute);font-size:14px;max-width:1040px;margin-left:auto;margin-right:auto}
.bnav{display:none}
@media(max-width:700px){.bnav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60;background:rgba(11,18,32,.96);border-top:1px solid var(--line)}.bnav a{flex:1;text-align:center;padding:9px 2px 11px;color:var(--mute);text-decoration:none;font-size:11px}.bnav a b{display:block;font-size:20px}.bnav a.on{color:var(--gold)}.hero{min-height:70vh}}
@media(prefers-reduced-motion:reduce){.hero .bg img{animation:none}}

.toc{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 0}
.toc a{font-size:14px;color:var(--mute);text-decoration:none;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:var(--bg2)}
.toc a:hover{color:var(--ink);border-color:var(--gold)}
a.mas{display:inline-block;margin-top:4px;color:var(--gold);text-decoration:none;font-weight:600}

.credlist{padding-left:20px;margin:8px 0}.credlist li{margin:4px 0}.leaflet-control-attribution{font-size:10px}
