/* PHN Open Days: the Case Studies page's look. Identity v2.2: all type PHN Black (#333132),
   gray only for hairline rules, no filled boxes, no reversed type. */
.phn-od { color: #333132; max-width: 72rem; }
.phn-od h2 { scroll-margin-top: 140px; margin: 1.6em 0 0.5em; }
.phn-od h3 { scroll-margin-top: 140px; margin: 1.5em 0 0.6em; font-size: 1.5em; }
/* The theme sets h4 in its monospace face; here h4 is a project or state name, in the body face. */
.phn-od h4 { font-family: "Public Sans", Arial, Helvetica, sans-serif; font-weight: 700; letter-spacing: normal; text-transform: none; }
.phn-od .phn-od-note { font-size: 1.05em; }
.phn-od .phn-od-host { border-top: 1px solid #a6a6a6; border-bottom: 1px solid #a6a6a6; padding: 0.4em 0 0.6em; margin: 1em 0 1.5em; max-width: 42rem; }
.phn-od .phn-od-host h3 { margin: 0.5em 0 0.3em; font-size: 1.1em; }
.phn-od .phn-od-jump { font-size: 0.95em; border-top: 1px solid #a6a6a6; border-bottom: 1px solid #a6a6a6; padding: 0.6em 0; }
.phn-od .phn-od-small { font-size: 0.9em; }
.phn-od .phn-od-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem 1.75rem; margin: 0 0 1em; }
.phn-od .phn-od-card { display: flex; flex-direction: column; }
.phn-od .phn-od-card img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; margin: 0 0 0.6em; }
.phn-od .phn-od-card h4 { margin: 0 0 0.1em; font-size: 1.15em; }
.phn-od .phn-od-card p { margin: 0 0 0.5em; }
.phn-od .phn-od-card p.phn-od-place { margin: 0 0 0.3em; font-size: 0.9em; }
.phn-od .phn-od-card p.phn-od-when { font-weight: 700; }
.phn-od .phn-od-card p.phn-od-get { margin-top: auto; padding-top: 0.3em; }
.phn-od .phn-od-btn { display: inline-block; border: 1px solid #333132; padding: 0.35em 0.8em; margin: 0 0.4em 0.4em 0; font-size: 0.9em; text-decoration: none; color: #333132; }
.phn-od .phn-od-btn:hover,
.phn-od .phn-od-btn:focus { text-decoration: underline; text-underline-offset: 0.2em; }
.phn-od details.phn-od-past { border-top: 1px solid #a6a6a6; padding: 0.5em 0; scroll-margin-top: 140px; }
.phn-od details.phn-od-past:last-of-type { border-bottom: 1px solid #a6a6a6; }
.phn-od details.phn-od-past summary { cursor: pointer; font-weight: 700; }
.phn-od details.phn-od-past h4 { margin: 1em 0 0.3em; font-size: 1em; }
.phn-od details.phn-od-past ul { margin: 0 0 0.5em 1.25em; }
@media (max-width: 900px) { .phn-od .phn-od-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .phn-od .phn-od-grid { grid-template-columns: 1fr; } }
