.growth-nav { margin:22px 0; font-weight:750; }
#hd.guide-header .wrap { min-height:140px; padding-block:42px 18px; flex-direction:row; align-items:center; justify-content:space-between; gap:24px; }
#hd.guide-header .site-title { font-size:var(--font-brand-compact); }
.weekend-nav { display:flex; flex-wrap:wrap; gap:8px 24px; }
.weekend-nav a { display:inline-flex; align-items:center; min-height:44px; font-weight:700; }
main.weekend-page { max-width:1120px; padding-top:60px; }
.weekend-page h1 { font:900 clamp(2.5rem,5.5vw,5rem)/1.04 var(--body); letter-spacing:-.03em; max-width:19ch; text-wrap:balance; overflow-wrap:anywhere; margin:0 0 24px; }
.guide-lead { padding-bottom:36px; border-bottom:4px solid var(--ink); }
.guide-dates { color:var(--blue-dark); font-weight:800; margin:20px 0; }
.weekend-intro { font-size:clamp(1.125rem,2vw,1.375rem); line-height:1.55; max-width:64ch; margin:24px 0; }
.guide-byline { color:var(--muted); font-size:var(--font-meta); }
.guide-layout { display:grid; grid-template-columns:minmax(0,720px) minmax(200px,260px); gap:64px; align-items:start; }
.guide-day { margin:40px 0 52px; }
.guide-day > h2 { font:800 1.1rem var(--body); color:var(--red); border-bottom:2px solid var(--ink); padding-bottom:12px; margin:0 0 28px; }
.guide-pick { margin:0 0 42px; scroll-margin-top:24px; }
.guide-pick h3 { font:850 clamp(1.5rem,2.5vw,2rem)/1.16 var(--body); letter-spacing:-.015em; margin:0 0 12px; max-width:32ch; text-wrap:balance; }
.guide-facts { font-size:var(--font-meta); font-weight:750; margin:10px 0 18px; }
.guide-copy { font-size:1.125rem; line-height:1.75; margin:0 0 18px; max-width:68ch; }
.guide-event-name { font-size:var(--font-meta); color:var(--muted); margin:14px 0 4px; }
.weekend-actions { display:flex; flex-wrap:wrap; column-gap:24px; }
.weekend-actions a { display:inline-flex; align-items:center; min-height:44px; font-size:var(--font-meta); font-weight:700; }
.weekend-status { color:var(--error-ink); font-weight:750; }
.guide-sidebar { position:sticky; top:28px; padding-top:40px; }
.guide-sidebar h2 { font:800 1.1rem var(--body); margin:0 0 20px; }
.guide-sidebar nav { display:grid; gap:16px; border-bottom:2px solid var(--ink); padding-bottom:24px; }
.guide-sidebar a { display:inline-block; font-size:var(--font-meta); line-height:1.5; padding-block:6px; }
.guide-method { padding:24px 0; border-top:2px solid var(--ink); color:var(--muted); font-size:var(--font-meta); }
.guide-method summary { cursor:pointer; min-height:44px; font-weight:700; }
.guide-method p { max-width:65ch; }
.weekend-subscribe { border-block:4px solid var(--ink); margin:32px 0 60px; padding:32px 0; }
.weekend-subscribe h2 { font:850 clamp(1.6rem,3vw,2.25rem)/1.1 var(--body); margin:0 0 12px; }
.weekend-subscribe a,.weekend-subscribe button { display:inline-flex; align-items:center; min-height:44px; margin:8px 24px 8px 0; font-weight:750; }
.weekend-subscribe button { background:var(--blue); color:var(--white); border:2px solid var(--ink); padding:10px 16px; cursor:pointer; }
.weekend-subscribe button:hover { background:var(--blue-dark); }
.weekend-subscribe button:focus-visible { outline:3px solid var(--blue-dark); outline-offset:4px; }
.weekend-archive { list-style:none; margin:40px 0; padding:0; }
.weekend-archive li { border-top:3px solid var(--ink); padding:28px 0; max-width:760px; }
.weekend-archive h2 { font:850 clamp(1.5rem,3vw,2.5rem)/1.15 var(--body); letter-spacing:-.02em; margin:16px 0; }
.weekend-archive p { max-width:65ch; line-height:1.65; }
.weekend-archive time { font-weight:750; color:var(--red); }
.weekend-footer { display:flex; flex-wrap:wrap; gap:12px 24px; padding:24px 0; }
.weekend-footer a { min-height:44px; display:inline-flex; align-items:center; }
@media(max-width:800px) { .guide-layout { grid-template-columns:1fr; gap:0; } .guide-sidebar { display:none; } }
@media(max-width:600px) { #hd.guide-header .wrap { flex-direction:column; align-items:flex-start; gap:12px; padding-block:42px 12px; } #hd.guide-header .site-title { font-size:var(--font-brand-compact); } main.weekend-page { padding-top:32px; } .weekend-nav { gap:4px 18px; } .guide-lead { padding-bottom:24px; } .guide-day { margin-top:28px; } }
.guide-image { margin:32px 0 8px; }
.guide-image img { display:block; width:100%; height:auto; background:var(--blue); }
.guide-image figcaption { color:var(--muted); font-size:var(--font-meta); line-height:1.5; padding:12px 0; }

#hd.guide-header .site-title { order:0; }
#hd.guide-header .weekend-nav { order:1; }
