:root { --ink:#202522; --muted:#66716b; --line:#dce2dc; --paper:#f8faf7; --surface:#fff; --acid:#d8ff4f; --forest:#174d3c; --coral:#ff7d5c; --warm:#f3eadf; --mono:"DM Mono",monospace; --sans:"Manrope",sans-serif; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; color:var(--ink); background:var(--paper); font-family:var(--sans); } button,a { font:inherit; } button { cursor:pointer; } a { color:inherit; }
.shell { width:min(1200px,calc(100% - 40px)); margin:0 auto 80px; }.hero { padding:52px 0 28px; border-bottom:1px solid var(--line); }.eyebrow,.kicker,.event-lane,.alignment,.event-detail-grid span,.score-block span,.hustle-date,.hustle-access { font:500 11px/1.2 var(--mono); letter-spacing:.07em; text-transform:uppercase; }.eyebrow { color:var(--forest); }.hero-grid { display:grid; grid-template-columns:1.5fr .68fr; gap:70px; align-items:end; margin:21px 0 26px; }h1,h2,h3,p { margin-top:0; }h1 { max-width:760px; margin-bottom:18px; font-size:clamp(40px,6vw,77px); line-height:.99; letter-spacing:-.07em; }.lede { max-width:645px; margin:0; color:var(--muted); font-size:18px; line-height:1.6; }.brief-card { padding:22px; background:var(--forest); color:white; border-radius:12px; position:relative; }.brief-card strong { display:block; font-size:14px; margin-bottom:5px; }.brief-card > p { color:#cae0d7; font-size:13px; line-height:1.45; }.status-dot { position:absolute; right:20px; top:24px; width:9px; height:9px; border-radius:100%; background:var(--acid); box-shadow:0 0 0 5px rgba(216,255,79,.15); }dl { margin:20px 0 0; border-top:1px solid rgba(255,255,255,.24); }dl div { display:flex; justify-content:space-between; gap:12px; padding-top:10px; font-size:11px; }dt { color:#b6cec4; }dd { margin:0; text-align:right; }.thesis { display:flex; align-items:center; gap:15px; padding:12px 14px; background:var(--acid); font-size:13px; font-weight:700; }.thesis span { padding-right:15px; border-right:1px solid rgba(32,37,34,.24); font:500 10px/1.2 var(--mono); letter-spacing:.08em; text-transform:uppercase; }
.command-bar { position:sticky; top:0; z-index:3; display:flex; gap:16px; align-items:center; padding:15px 0; background:color-mix(in srgb,var(--paper) 94%,transparent); border-bottom:1px solid var(--line); backdrop-filter:blur(12px); }.filter-group { display:flex; gap:7px; flex-wrap:wrap; }.access-filters { margin-left:auto; }.filter-button,.plan-button,.save-button { border:1px solid var(--line); background:var(--surface); border-radius:99px; padding:8px 11px; font-size:12px; font-weight:700; }.filter-button.is-active { border-color:var(--forest); background:var(--forest); color:white; }.filter-button.access.is-active { border-color:var(--coral); background:var(--coral); }.plan-button { border-color:var(--ink); color:var(--ink); white-space:nowrap; }.plan-button span { display:inline-grid; place-items:center; min-width:18px; height:18px; margin-left:5px; background:var(--acid); border-radius:100%; font:500 11px var(--mono); }
.metrics { display:grid; grid-template-columns:repeat(4,1fr); padding:22px 0 40px; border-bottom:1px solid var(--line); }.metrics div { display:grid; gap:3px; padding:0 20px; border-left:1px solid var(--line); }.metrics div:first-child { padding-left:0; border-left:0; }.metrics strong { font-size:22px; letter-spacing:-.05em; }.metrics span { color:var(--muted); font-size:11px; }
.section-heading { display:grid; grid-template-columns:1fr .72fr; gap:70px; padding:56px 0 19px; align-items:end; }.section-heading h2,.field-notes h2,dialog h2 { margin:0; font-size:clamp(25px,3.2vw,40px); line-height:1.05; letter-spacing:-.05em; }.kicker { color:var(--forest); margin-bottom:10px; }.section-heading > p { margin:0; color:var(--muted); font-size:13px; line-height:1.6; }
.itinerary { border-top:1px solid var(--line); }.event-card { display:grid; grid-template-columns:142px minmax(0,1fr) 104px; gap:25px; padding:24px 0; border-bottom:1px solid var(--line); }.event-date { font:500 12px/1.5 var(--mono); color:var(--forest); white-space:pre-line; }.card-topline { display:flex; align-items:center; gap:10px; margin-bottom:9px; }.event-lane { color:var(--forest); }.alignment { padding:4px 7px; color:var(--forest); background:#e4f0e9; border-radius:99px; }.event-main h3,.hustle-card h3 { margin-bottom:7px; font-size:22px; line-height:1.13; letter-spacing:-.045em; }.event-meta { margin-bottom:13px; color:var(--muted); font:11px/1.45 var(--mono); }.event-relation { max-width:680px; margin-bottom:16px; font-size:13px; line-height:1.58; }.event-detail-grid { display:grid; grid-template-columns:minmax(0,1.55fr) 1fr; gap:20px; margin-bottom:18px; }.event-detail-grid span,.score-block span { color:var(--muted); }.event-detail-grid p { margin:5px 0 0; font-size:12px; line-height:1.45; }.event-actions { display:flex; align-items:center; gap:14px; }.rsvp-link { font-size:12px; font-weight:800; text-decoration-thickness:1px; text-underline-offset:3px; }.save-button { border-color:var(--ink); padding:7px 12px; }.save-button.is-saved { background:var(--acid); border-color:var(--acid); }.score-block { display:flex; flex-direction:column; align-items:end; text-align:right; }.score-block strong { margin-top:4px; font-size:31px; letter-spacing:-.08em; }.score-block small { color:var(--muted); font-size:10px; }.empty-state { padding:50px 0; color:var(--muted); font-size:14px; }
.hustle-heading { padding-top:78px; }.hustle-grid { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); border-right:0; border-bottom:0; }.hustle-card { min-height:240px; display:flex; flex-direction:column; padding:20px; background:var(--surface); border-right:1px solid var(--line); border-bottom:1px solid var(--line); }.hustle-top,.hustle-bottom { display:flex; align-items:center; justify-content:space-between; gap:10px; }.hustle-access { padding:4px 7px; border:1px solid var(--line); border-radius:99px; color:var(--forest); }.hustle-card h3 { margin:23px 0 8px; font-size:19px; }.hustle-host { margin-bottom:12px; color:var(--forest); font:11px/1.4 var(--mono); }.hustle-why { margin-bottom:auto; color:var(--muted); font-size:12px; line-height:1.55; }.hustle-bottom { padding-top:17px; font:500 11px var(--mono); }.hustle-bottom a { font-weight:700; }
.field-notes { display:grid; grid-template-columns:.95fr 1.05fr; gap:70px; margin-top:72px; padding:34px; background:var(--warm); }.field-notes ol { list-style:none; margin:0; padding:0; }.field-notes li { display:grid; grid-template-columns:44px 1fr; padding:0 0 18px; margin-bottom:18px; border-bottom:1px solid #d7ccbd; }.field-notes li:last-child { padding-bottom:0; margin-bottom:0; border:0; }.field-notes li > span { color:var(--forest); font:500 11px var(--mono); }.field-notes p { margin:0; font-size:13px; line-height:1.55; }
dialog { width:min(570px,calc(100% - 30px)); max-height:80vh; border:0; border-radius:14px; padding:26px; color:var(--ink); box-shadow:0 24px 90px rgba(16,31,21,.25); }dialog::backdrop { background:rgba(20,30,24,.46); backdrop-filter:blur(4px); }.dialog-head { display:flex; justify-content:space-between; }.icon-button { width:35px; height:35px; border:1px solid var(--line); background:var(--surface); border-radius:100%; font-size:24px; line-height:1; }.dialog-copy { margin:14px 0 20px; color:var(--muted); font-size:13px; line-height:1.5; }.saved-event { display:flex; justify-content:space-between; gap:15px; padding:15px 0; border-top:1px solid var(--line); }.saved-event p { margin:0 0 4px; font:11px var(--mono); color:var(--forest); }.saved-event strong { font-size:14px; }.saved-event a { align-self:center; font-size:12px; font-weight:800; }.no-saved { padding:28px 0; border-top:1px solid var(--line); color:var(--muted); font-size:13px; }
@media (max-width:790px) { .shell { width:min(100% - 26px,1200px); }.hero { padding-top:32px; }.hero-grid,.section-heading,.field-notes { grid-template-columns:1fr; gap:25px; }.command-bar { align-items:flex-start; flex-direction:column; }.access-filters { margin-left:0; }.metrics { grid-template-columns:repeat(2,1fr); gap:18px 0; }.metrics div:nth-child(3) { padding-left:0; border-left:0; }.event-card { grid-template-columns:1fr; gap:13px; position:relative; padding-right:88px; }.score-block { position:absolute; right:0; top:0; padding-top:22px; }.score-block small { display:none; }.event-detail-grid { grid-template-columns:1fr; gap:12px; }.hustle-grid { grid-template-columns:1fr; }.field-notes { padding:24px; }.thesis { align-items:flex-start; flex-direction:column; gap:8px; }.thesis span { padding:0; border:0; } }@media (max-width:430px) { h1 { font-size:43px; }.filter-group { gap:5px; }.filter-button { padding:7px 9px; font-size:11px; }.event-card { padding-right:0; }.score-block { position:static; flex-direction:row; justify-content:start; gap:9px; padding:0; }.score-block strong { margin:0; }.event-actions { align-items:flex-start; flex-direction:column; gap:10px; } }
