:root{
--bg:#f6f0e4; --surface:#fffaf0; --text:#2b2118; --muted:#6b5a48;
--accent:#7a1f2b; --gold:#a8812c; --line:#d9c9a8; --hero:#3a1218; --hero-text:#f6e9c8;
color-scheme: light;
}
@media (prefers-color-scheme: dark){
:root:not([data-theme="light"]){
--bg:#1b1512; --surface:#262019; --text:#efe5d2; --muted:#b8a78d;
--accent:#d98a94; --gold:#d4ac55; --line:#4a3d2e; --hero:#2a0d12; --hero-text:#f6e9c8;
color-scheme: dark;
}
}
:root[data-theme="dark"]{
--bg:#1b1512; --surface:#262019; --text:#efe5d2; --muted:#b8a78d;
--accent:#d98a94; --gold:#d4ac55; --line:#4a3d2e; --hero:#2a0d12; --hero-text:#f6e9c8;
color-scheme: dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:"EB Garamond",Georgia,"Times New Roman",serif;font-size:1.15rem;line-height:1.7}
h1,h2,h3{font-family:"Cinzel",Georgia,serif;font-weight:700;line-height:1.2;margin:0 0 .6em}
a{color:var(--accent)}
img{max-width:100%;height:auto}
.wrap{max-width:1000px;margin:0 auto;padding:0 1.25rem}
.article{max-width:820px;padding-bottom:3rem}
header.hero{background:linear-gradient(160deg,var(--hero),#5a1b24);color:var(--hero-text);text-align:center;padding:3.5rem 1.25rem 4rem;border-bottom:4px solid var(--gold)}
header.hero.small{padding:2.6rem 1.25rem 3rem}
.hero h1{font-size:clamp(1.6rem,5vw,2.6rem);letter-spacing:.04em;color:var(--hero-text);max-width:820px;margin:0 auto .5em}
.hero p{max-width:36rem;margin:0 auto;font-style:italic;opacity:.92}
.hero .kicker{font:600 .8rem/1.4 system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase;font-style:normal;color:var(--gold);margin-bottom:.8rem}
.btn{display:inline-block;background:var(--gold);color:#2b1a08;padding:.7rem 1.4rem;border-radius:2px;text-decoration:none;font-family:"Cinzel",Georgia,serif;font-weight:700;letter-spacing:.04em;font-size:.9rem;margin:.25rem .25rem .25rem 0}
.btn.ghost{background:transparent;color:var(--accent);border:1px solid var(--gold)}
nav[aria-label="Menu principal"]{position:sticky;top:0;z-index:5;background:var(--surface);border-bottom:1px solid var(--line);display:flex;justify-content:center;gap:1.1rem;flex-wrap:wrap;padding:.7rem 1rem;font-family:"Cinzel",Georgia,serif;font-size:.85rem}
nav[aria-label="Menu principal"] a{text-decoration:none;color:var(--text)}
nav a[aria-current]{color:var(--accent);border-bottom:2px solid var(--gold)}
.crumbs{font:.85rem/1.4 system-ui,sans-serif;color:var(--muted);margin:1.4rem 0}
.crumbs a{color:var(--muted)}
.article h2{font-size:1.4rem;color:var(--accent);margin-top:2.2rem}
.article h2::after{content:"";display:block;width:50px;height:3px;background:var(--gold);margin-top:.45rem}
section{padding:3rem 0;border-bottom:1px solid var(--line)}
section h2{font-size:1.6rem;color:var(--accent)}
section h2::after{content:"";display:block;width:60px;height:3px;background:var(--gold);margin-top:.5rem}
.sub{color:var(--muted);font-style:italic;margin-top:-.3em}
figure{margin:0}
.hero-img{margin:0 0 1.5rem;border:1px solid var(--line);background:var(--surface)}
.hero-img img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.1rem;margin-top:1.4rem}
.card{background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--gold);padding:1.1rem;display:flex;flex-direction:column}
.card.link{text-decoration:none;color:var(--text);transition:transform .2s,box-shadow .2s}
.card.link:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.12)}
.card .thumb{margin:-1.1rem -1.1rem .9rem}
.card .thumb img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.card h3{font-size:1.05rem;color:var(--accent);margin:.2rem 0 .4rem}
.card p{margin:0 0 .6rem;font-size:1rem}
.card .more{margin-top:auto;font:600 .85rem/1 system-ui,sans-serif;color:var(--accent)}
.tag{font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.article ul{padding-left:1.2rem}
.src{font-size:1rem;color:var(--muted);font-style:italic}
.stay{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--gold);padding:1.3rem 1.4rem;margin:2.4rem 0}
.stay h2{margin-top:0}
details{border-top:1px solid var(--line);padding:.7rem 0}
summary{cursor:pointer;font-weight:500;color:var(--accent)}
details p{margin:.5rem 0 0}
.videos{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.2rem}
.video p{margin:.4rem 0 0;font-size:1rem;color:var(--muted)}
.yt{position:relative;display:block;aspect-ratio:16/9;background:#000;overflow:hidden}
.yt img{width:100%;height:100%;object-fit:cover;display:block}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.play{position:absolute;inset:0;margin:auto;width:60px;height:60px;border-radius:50%;background:rgba(122,31,43,.88);border:2px solid var(--gold)}
.play::after{content:"";position:absolute;left:24px;top:18px;border-style:solid;border-width:11px 0 11px 18px;border-color:transparent transparent transparent #f6e9c8}
.dur{position:absolute;right:.5rem;bottom:.5rem;background:rgba(0,0,0,.75);color:#fff;font:600 .8rem/1 system-ui,sans-serif;padding:.25rem .4rem;border-radius:3px}
.video.big{background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--gold)}
.video.big .tag,.video.big h3{display:block;padding:0 1rem}
.video.big .tag{margin-top:.8rem}
.video.big h3{font-size:1rem;color:var(--accent);margin:.2rem 0 1rem}
.center{text-align:center;margin-top:2rem}
footer{text-align:center;padding:2rem 1.25rem;color:var(--muted);font-size:.95rem;border-top:1px solid var(--line)}
