:root{--paper:hsl(45 20% 96%);--card:hsl(45 15% 98%);--ink:hsl(220 15% 10%);--blue:hsl(215 50% 23%);--accent:hsl(18 90% 55%);--line:hsl(220 15% 85%);--muted:#58616d;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.6}*{box-sizing:border-box}body{margin:0}a{color:var(--blue);text-underline-offset:4px}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.demo{background:#e9edf2;color:var(--blue);padding:7px 20px;text-align:center;font-size:12px;letter-spacing:.03em}header{max-width:1200px;margin:auto;padding:26px 36px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.brand{text-decoration:none;font-weight:700;font-size:20px;display:flex;align-items:center;gap:10px}.mark{display:grid;place-items:center;background:var(--blue);color:white;width:34px;height:34px;border-radius:6px}.brand-note{font-size:12px;font-weight:400;color:var(--muted);margin-left:12px}nav{display:flex;gap:8px}nav a{text-decoration:none;padding:9px 17px;font-size:14px}nav a[aria-current]{background:var(--blue);color:white;border-radius:6px}main{max-width:1200px;padding:48px 36px 20px;margin:auto}h1{font-size:clamp(32px,4vw,48px);line-height:1.15;letter-spacing:-.035em;margin:10px 0 16px;font-weight:600}h2{font-size:24px;line-height:1.3;letter-spacing:-.02em;margin:10px 0 18px;font-weight:600}.intro{color:var(--muted);margin:0 0 36px;max-width:650px}.eyebrow{font-size:11px;letter-spacing:.13em;font-weight:700}.home-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:22px}.hero{background:var(--blue);color:white;padding:36px;border-radius:10px;position:relative}.hero .eyebrow{color:#c6d3e3}.hero h2{font-size:32px;margin-top:26px}.hero p{max-width:470px}.hero-date{font-weight:600}.button{display:inline-flex;gap:30px;align-items:center;text-decoration:none;background:var(--paper);padding:13px 18px;border-radius:6px;margin-top:18px;font-weight:600;font-size:14px}.card{border:1px solid var(--line);background:var(--card);border-radius:10px;padding:32px}.prep{border-top:4px solid var(--accent)}.prep h2{margin-top:26px}.quiet{font-size:14px;border-top:1px solid var(--line);padding-top:18px;margin-top:26px;color:var(--muted)}.route{margin-top:46px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:16px}.section-title>span,.muted{font-size:14px;color:var(--muted)}.event-list{padding:0;list-style:none;margin:18px 0}.event-row{display:grid;grid-template-columns:120px 1fr auto;gap:20px;align-items:center;padding:21px 0;border-top:1px solid var(--line)}.event-row a{font-weight:600;text-decoration:none}.event-row a:hover{text-decoration:underline}.event-row small{display:block;color:var(--muted);font-size:13px;margin-top:3px}.date{font-size:14px}.status{font-size:12px;color:var(--muted)}footer{max-width:1200px;margin:20px auto 0;padding:26px 36px 40px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}footer span{font-size:12px}.calendar-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:22px;align-items:start}.calendar{padding:24px}.month-nav{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px}.month-nav h2{font-size:21px;margin:0;text-transform:capitalize}.month-nav button{border:1px solid var(--line);background:transparent;border-radius:6px;width:44px;height:44px}.month-nav button:disabled{opacity:.3;cursor:default}.week,.days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.week span{text-align:center;font-size:12px;color:var(--muted);padding:8px 0}.day{min-height:65px;border:1px solid transparent;border-radius:5px;padding:8px;text-align:left;font-size:14px;min-width:0}.event{background:#e4eaf1;color:var(--blue)}.event[aria-pressed=true]{background:var(--blue);color:white}.today{border:2px solid var(--accent)}.day-label{display:block;font-size:9px;line-height:1.2;margin-top:5px;overflow-wrap:anywhere}.legend{font-size:11px;display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:22px 0 0;color:var(--muted)}.dot,.outline-dot{width:10px;height:10px;border-radius:3px;background:var(--blue)}.outline-dot{background:none;border:2px solid var(--accent);margin-left:10px}.pill{font-size:12px;border:1px solid var(--line);border-radius:30px;padding:5px 10px}.detail{border-top:4px solid var(--accent)}.detail h2{margin-top:22px}.skip{position:absolute;left:10px;top:-80px;background:white;padding:12px;z-index:2}.skip:focus{top:10px}@media(max-width:800px){.brand-note{display:none}.home-grid,.calendar-layout{grid-template-columns:1fr}.detail{min-height:0}}@media(max-width:480px){header{padding:18px;flex-wrap:wrap}nav{width:100%}main{padding:30px 18px 12px}h1{font-size:34px}.hero,.card{padding:23px}.calendar{padding:14px}.day{padding:5px;min-height:58px}.day-label{font-size:8px}.event-row{grid-template-columns:76px 1fr;gap:10px}.status{grid-column:2}.section-title{align-items:start}.section-title>span{max-width:110px;text-align:right}.hero h2{font-size:28px}footer{padding:24px 18px}.demo{font-size:11px}}
@media(max-width:480px){.day-label{font-size:0}.day-label::after{content:'•';font-size:14px}.day{min-height:48px}}
