:root{
  --bg:#0b0c0f; --panel:#10141a; --panel2:#121623; --fg:#eef1f5;
  --muted:#b3bdcc; --gold:#f2c14e; --gold2:#d4af37; --line:#24293a;
}
*{box-sizing:border-box}
html,body{margin:0;max-width:100%;overflow-x:hidden;background:var(--bg);color:var(--fg);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.6}
a{color:var(--gold)}
img{max-width:100%}
.wil-hdr{background:#0f1114;color:#fff;box-shadow:0 1px 3px rgba(0,0,0,.4)}
.wil-hdr__wrap{max-width:1200px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;
  justify-content:space-between;gap:20px}
.wil-hdr__brand img{height:clamp(40px,9vw,60px);width:auto;border-radius:8px;display:block}
.wil-hdr__nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.wil-hdr__nav a{color:#cbd5e1;text-decoration:none;font-weight:650;padding:9px 10px;border-radius:10px}
.wil-hdr__nav a:hover,.wil-hdr__nav a.is-active{color:#fff;background:#161a20}
.wil-hdr__quote,.cta,.btn{display:inline-block;background:linear-gradient(180deg,#f5d66e,#d4af37);
  color:#111!important;font-weight:850;text-decoration:none;padding:11px 16px;border-radius:10px}
.main{min-height:55vh}
.hero{max-width:1100px;margin:0 auto;padding:44px 20px 24px}
.hero h1{color:var(--gold);line-height:1.12;margin:0 0 8px;font-size:clamp(2rem,5vw,3.4rem)}
.lede{max-width:850px;color:#d8dee8;font-size:1.08rem}
.byline{color:var(--muted);margin:.3rem 0 1rem}
.wrap{max-width:1100px;margin:0 auto;padding:12px 20px 40px;display:grid;
  grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:28px}
.sidebar{align-self:start;position:sticky;top:18px;background:var(--panel2);border:1px solid var(--line);
  border-radius:14px;padding:14px}
.sidebar h3{margin:0 0 8px;color:#fff}
.sidebar a{display:block;color:#d3d8e0;text-decoration:none;padding:5px 0}
.article{min-width:0}
.article h2{color:var(--gold);margin-top:30px}
.article h3{color:#e8b94c}
.article p,.article li{color:#e6e9ef}
.article details{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin:9px 0;background:#10141a}
.article summary{cursor:pointer;font-weight:750;color:#fff}
.figure{margin:0 0 24px}
.figure img{display:block;width:100%;height:auto;border-radius:14px;border:1px solid var(--line)}
.figure figcaption{color:var(--muted);font-size:.92rem;margin-top:7px}
.note,blockquote{background:#10141a;border:1px solid var(--line);border-left:4px solid var(--gold2);
  border-radius:10px;padding:12px 14px;color:#d7dce5}
.cards,.venue-grid,.winery-grid,.pay-grid,.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.card,.venue,.winery,.pay-card{background:#10141a;border:1px solid var(--line);border-radius:14px;padding:16px}
.thumb img{border-radius:10px;width:100%;height:auto}
.links a{display:inline-block;margin-right:10px}
.pay-legal{font-size:.9rem;color:var(--muted);margin-top:12px}
.wil-ftr{background:#111;color:#f1f1f1;padding:30px 20px;margin-top:35px}
.ftr-wrap{max-width:1200px;margin:auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px}
.wil-ftr .col{flex:1 1 240px;min-width:220px}
.wil-ftr a{color:#d4af37;text-decoration:none}
.social,.copy{max-width:1200px;margin:14px auto 0;color:#cbd5e1}
.grid{max-width:1100px;margin:0 auto;padding:10px 20px 44px}
.grid .card h3{margin-top:0;color:var(--gold)}
@media(max-width:820px){
  .wil-hdr__wrap{padding:10px 14px;gap:10px;flex-wrap:wrap}
  .wil-hdr__brand{width:100%}
  .wil-hdr__nav{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;
    border-top:1px solid rgba(255,255,255,.08);padding-top:9px}
  .wrap{grid-template-columns:1fr}
  .sidebar{position:static}
  .cards,.venue-grid,.winery-grid,.pay-grid,.grid{grid-template-columns:1fr}
}
