@font-face { font-family: 'Inter'; font-style: normal; font-weight: 400 900; font-display: swap; src: url(fonts/inter-normal-400-900-latin-ext.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; } @font-face { font-family: 'Inter'; font-style: normal; font-weight: 400 900; font-display: swap; src: url(fonts/inter-normal-400-900-latin.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } @font-face { font-family: 'Playfair Display'; font-style: italic; font-weight: 700; font-display: swap; src: url(fonts/playfairdisplay-italic-700-latin-ext.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; } @font-face { font-family: 'Playfair Display'; font-style: italic; font-weight: 700; font-display: swap; src: url(fonts/playfairdisplay-italic-700-latin.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } @font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/playfairdisplay-normal-700-latin-ext.woff2) format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; } @font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/playfairdisplay-normal-700-latin.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
:root{--wine:#16090b;--red:#8f1319;--gold:#d8b66d;--paper:#fff8ef;--text:#3a2422;--muted:#725f59;--line:#eadbcb;--soft:#f3e6da;--font:Inter,"Segoe UI",Arial,sans-serif;--display:"Playfair Display",Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:var(--font);line-height:1.72}a{color:inherit}.wrap{width:min(980px,92vw);margin:auto}.wide{width:min(1120px,92vw)}
.top{background:rgba(18,7,8,.96);color:#fff;padding:.9rem 0;position:sticky;top:0;z-index:5}.top .wrap,.top .wide{display:flex;justify-content:space-between;gap:1rem;align-items:center}.logo{display:flex;gap:.65rem;align-items:center;text-decoration:none;font-weight:900}.logo img{width:34px;height:34px;border-radius:8px}.navlinks{display:flex;gap:1rem;align-items:center}.navlinks a{color:rgba(255,248,239,.82);text-decoration:none;font-weight:850;font-size:.92rem}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.85rem 1.2rem;text-decoration:none;font-weight:900;background:linear-gradient(135deg,var(--gold),#a66b28);color:#fff;border:0;cursor:pointer}.btn.dark{background:var(--wine)}
header.hero{background:radial-gradient(circle at 78% 20%,rgba(216,182,109,.22),transparent 26rem),linear-gradient(135deg,#16090b,#7f1115);color:#fff;padding:clamp(4rem,8vw,7rem) 0}h1{font-size:clamp(2.45rem,7vw,5.35rem);line-height:1.02;margin:0 0 1rem;max-width:12ch;color:#fff}h2{font-size:clamp(1.75rem,4vw,3rem);line-height:1.08;margin:0 0 1rem;color:var(--wine)}h3{font-size:1.3rem;line-height:1.16;margin:.4rem 0;color:var(--wine)}
.eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:900;font-size:.72rem;margin:0 0 1rem}.lead{font-size:1.12rem;max-width:64ch;color:rgba(255,248,239,.82)}main{padding:clamp(3rem,7vw,5rem) 0}.block{padding:2rem 0;border-bottom:1px solid var(--line)}.block p,.block li{color:var(--muted);font-size:1.04rem}.block ul{display:grid;gap:.75rem;padding-left:1.2rem}
.grid{display:grid;gap:1rem}.cards{grid-template-columns:repeat(3,1fr);margin-top:2rem}.card{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:20px;padding:1.25rem;color:inherit;box-shadow:0 12px 34px rgba(22,9,11,.07)}.card span{font-size:.7rem;text-transform:uppercase;letter-spacing:.17em;color:var(--red);font-weight:900}.card p{color:var(--muted);margin:.5rem 0 0}
.tools{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.6rem}.search{flex:1;min-width:220px;border:1px solid var(--line);border-radius:999px;padding:.85rem 1rem;font:inherit}.filter{border:1px solid var(--line);background:#fff;border-radius:999px;padding:.75rem 1rem;font-weight:900;color:var(--wine);cursor:pointer}.filter.active{background:var(--wine);color:#fff}.hidden{display:none!important}
.note,.cta{border-radius:24px;padding:1.5rem;margin-top:1.5rem}.note{background:#fff;border:1px solid var(--line);box-shadow:0 12px 34px rgba(22,9,11,.06)}.note strong{color:var(--wine)}.cta{background:var(--wine);color:#fff}.cta h2,.cta h3{color:#fff}.cta p{color:rgba(255,248,239,.78)}
.toc{position:sticky;top:88px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:1rem;box-shadow:0 12px 34px rgba(22,9,11,.06)}.toc a{display:block;text-decoration:none;color:var(--muted);font-weight:800;font-size:.9rem;padding:.35rem 0}.layout{display:grid;grid-template-columns:230px 1fr;gap:2rem;align-items:start}
.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem;margin-top:1rem}.fact{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1rem}.fact strong{display:block;color:var(--wine)}
details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1rem;margin:.7rem 0}summary{font-weight:900;cursor:pointer;color:var(--wine)}footer{background:#120708;color:rgba(255,248,239,.72);padding:2rem 0;font-size:.9rem}.links{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem}.links a{color:rgba(255,248,239,.82)}
@media(max-width:900px){.layout{grid-template-columns:1fr}.toc{display:none}.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.navlinks a:not(.btn){display:none}.cards,.facts{grid-template-columns:1fr}.btn{width:100%}.tools{display:grid}.filter,.search{width:100%}}
