.resources { --resource-rule:rgba(12,42,42,.15); }
.resources section { box-sizing:border-box; }
.resources-intro { padding:42px 20px 36px; }
.resources-eyebrow { font-size:12px; text-transform:uppercase; letter-spacing:.13em; color:var(--teal); font-weight:600; margin:0 0 12px; }
.resources h1 { font-size:clamp(32px,4vw,48px); letter-spacing:-.025em; line-height:1.1; margin:0 0 20px; }
.resources .lead { font-size:21px; line-height:1.6; max-width:760px; }
.resources-context,.resources-note { color:#52665e; font-size:16px; line-height:1.65; max-width:850px; }
.resources-jumps { display:flex; flex-wrap:wrap; gap:10px; margin:24px 0; }
.resources-jumps a { border:1px solid var(--teal); border-radius:999px; padding:10px 16px; font-size:15px; }
.resources a:hover { opacity:1; text-decoration:underline; text-underline-offset:4px; }
.resources a:focus-visible,.resources button:focus-visible,.resources input:focus-visible,.resources select:focus-visible,.resources summary:focus-visible { outline:2px solid var(--teal); outline-offset:4px; }
.resources h2 { font-size:30px; line-height:1.2; letter-spacing:-.02em; margin:0 0 16px; scroll-margin-top:110px; }
.resources-directory { padding:32px 20px 48px; border-top:1px solid var(--resource-rule); }
.resources-section-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.resources-text-link { font-size:15px; text-decoration:underline; text-underline-offset:4px; }
.venue-tools { display:grid; grid-template-columns:1.5fr 1fr auto; gap:16px; align-items:end; margin:28px 0 12px; }
.venue-tools label { display:block; font-size:14px; font-weight:600; margin:0 0 8px; }
.venue-tools input,.venue-tools select { font:inherit; font-size:16px; width:100%; padding:12px; min-height:46px; box-sizing:border-box; border:1px solid #9baaa3; background:#fff; border-radius:4px; }
.venue-tools button { font:inherit; font-size:15px; color:var(--teal); background:none; border:0; text-decoration:underline; padding:12px 0; cursor:pointer; }
.venue-count { font-size:14px; color:var(--muted); margin:0 0 20px; }
.venue-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.venue { display:flex; flex-direction:column; background:rgba(255,255,255,.65); padding:24px; border:1px solid var(--resource-rule); border-radius:4px; scroll-margin-top:100px; }
.venue[hidden] { display:none; }
.venue-area { font-size:12px; color:var(--teal); text-transform:uppercase; letter-spacing:.06em; margin:0 0 10px; }
.venue h3 { font-size:21px; line-height:1.3; margin:0 0 12px; }
.venue-description { font-size:16px; line-height:1.65; margin:0 0 20px; }
.venue-link { font-size:15px; font-weight:600; margin-top:auto; padding-top:12px; border-top:1px solid var(--resource-rule); }
.venue-empty { padding:20px; background:white; }
.resources-guide-band { background:#e6ebe1; padding:48px 0; }
.resources-checklist { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; margin-top:28px; }
.resources-checklist article>span { font-size:14px; color:var(--teal); }
.resources-checklist h3 { font-size:20px; margin:10px 0; }
.resources-checklist p { font-size:16px; line-height:1.65; }
.resources-source { font-size:14px; margin-top:24px; }
.resources-source a { text-decoration:underline; }
.resources-links-section,.resources-questions { padding:48px 20px; }
.resources-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.resources-links a { padding:20px 0; border-top:1px solid var(--resource-rule); }
.resources-links h3 { font-size:21px; margin:0 0 12px; }
.resources-links p { font-size:16px; color:#52665e; line-height:1.6; }
.resources-questions { max-width:850px; }
.resources-questions details { background:transparent; border:0; border-top:1px solid var(--resource-rule); border-radius:0; padding:18px 0; }
.resources-questions details p { font-size:16px; line-height:1.65; }
.resources-studio { display:flex; align-items:center; gap:40px; justify-content:space-between; border-top:1px solid var(--resource-rule); padding:40px 20px; }
.resources-studio p { max-width:650px; font-size:17px; line-height:1.6; }
.resources-studio .btn { flex-shrink:0; border-radius:4px; font-size:16px; }
@media(max-width:900px) { .venue-grid,.resources-checklist { grid-template-columns:repeat(2,minmax(0,1fr)); } .venue-tools { grid-template-columns:1fr 1fr; } .venue-tools button { justify-self:start; } .resources-section-heading,.resources-studio { align-items:start; flex-direction:column; } }
@media(max-width:560px) { .resources-intro { padding-top:28px; } .resources .lead { font-size:18px; } .venue-grid,.resources-checklist,.resources-links,.venue-tools { grid-template-columns:1fr; } .resources h2 { font-size:26px; } .resources-guide-band { padding:32px 0; } .venue { padding:20px; } }
