/* Loaded only on /CatBootsPark. Existing projects and the library theme are kept. */
.catbootspark-cozy .cbp-site-header + .container { max-width: 1180px; padding-top: 30px; }
.catbootspark-cozy .cbp-site-header + .container > h1 { padding: 0; margin: 0 0 16px; background: none; color: #203e36; border-radius: 0; font-size: clamp(1.6rem, 3vw, 2.2rem); text-align: left; }
#cbp-home-directory, #cbp-home-directory * { box-sizing: border-box; }
#cbp-home-directory { color: #203e36; text-align: left; }
#cbp-home-directory h2, #cbp-home-directory h3, #cbp-home-directory p { margin: 0; }
#cbp-home-directory a { color: #285443; text-underline-offset: 4px; }
#cbp-home-directory a:focus-visible { outline: 3px solid #97520e; outline-offset: 5px; }
#cbp-home-directory .park-intro { max-width: 800px; margin-bottom: 23px; }
#cbp-home-directory .park-intro h2 { font-size: 1.35rem; line-height: 1.7; margin-bottom: 9px; }
#cbp-home-directory .park-intro p { color: #4b6056; font-size: 1rem; line-height: 1.9; }
#cbp-home-directory .park-index { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 35px; }
#cbp-home-directory .park-index a { position: relative; display: flex; flex-direction: column; justify-content: center; min-height: 88px; padding: 15px 38px 15px 19px; border: 1px solid #9dad91; border-radius: 7px; background: #e1ead6; text-decoration: none; }
#cbp-home-directory .park-index a:hover { border-color: #285443; background: #d5e2c7; }
#cbp-home-directory .park-index span { font-size: 1.08rem; font-weight: 700; }
#cbp-home-directory .park-index small { display: block; margin-top: 4px; font-size: .82rem; color: #4b6056; line-height: 1.7; }
#cbp-home-directory .park-index b { position: absolute; right: 17px; font-size: 20px; font-weight: 400; }
#cbp-home-directory .park-section { margin: 0 0 35px; scroll-margin-top: 20px; }
#cbp-home-directory .park-section-heading { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 20px; padding-bottom: 11px; margin-bottom: 17px; border-bottom: 2px solid #9dad91; }
#cbp-home-directory .park-section-heading h2 { font-size: 1.5rem; line-height: 1.6; }
#cbp-home-directory .park-section-heading p { font-size: .9rem; color: #4b6056; line-height: 1.8; }
#cbp-home-directory .park-tools { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
#cbp-home-directory .park-works { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
#cbp-home-directory .park-item { display: flex; flex-direction: column; min-width: 0; background: #fcfcf5; border: 1px solid #bdcbb9; border-radius: 9px; overflow: hidden; }
#cbp-home-directory .park-item:hover { border-color: #6b856a; }
#cbp-home-directory .park-entry { display: flex; flex-direction: column; flex: 1; min-width: 0; color: inherit; text-decoration: none; }
#cbp-home-directory .park-entry:hover h3 { text-decoration: underline; text-underline-offset: 5px; }
#cbp-home-directory .park-entry-body { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; flex: 1; padding: 17px 19px 18px; min-width: 0; }
#cbp-home-directory .park-entry h3 { color: #203e36; font-size: 1.25rem; line-height: 1.65; overflow-wrap: anywhere; }
#cbp-home-directory .park-entry p { font-size: .91rem; color: #4b6056; line-height: 1.95; }
#cbp-home-directory .park-entry .park-entry-meta { font-size: .79rem; color: #536158; }
#cbp-home-directory .park-action { display: inline-flex; align-items: baseline; justify-content: space-between; gap: 10px; width: 100%; min-height: 36px; margin-top: auto; padding-top: 10px; font-size: .91rem; font-weight: 700; color: #285443; text-decoration: underline; text-underline-offset: 4px; }
#cbp-home-directory .park-action span { font-size: 19px; text-decoration: none; }
#cbp-home-directory .park-tool { flex-direction: row; }
#cbp-home-directory .park-tool-visual { display: flex; align-items: center; justify-content: center; width: 38%; min-height: 210px; background: #e8eddf; flex-shrink: 0; padding: 13px; border-right: 1px solid #d2dccb; }
#cbp-home-directory .park-tool-visual img { width: 100%; height: auto; max-width: 100%; object-fit: contain; border: 1px solid #d1cbbf; border-radius: 4px; }
#cbp-home-directory .park-reading-sample { flex-direction: column; gap: 14px; background: #f1eddf; }
#cbp-home-directory .park-reading-sample > span { color: #203e36; font-size: 2.4rem; font-weight: 700; white-space: nowrap; }
#cbp-home-directory .park-reading-sample rt { font-size: .75rem; font-weight: 400; }
#cbp-home-directory .park-reading-sample small { font-size: .78rem; text-align: center; line-height: 1.9; color: #4b6056; }
#cbp-home-directory .park-work-visual { display: flex; align-items: center; justify-content: center; aspect-ratio: 1200 / 680; background: #e6ecdf; overflow: hidden; border-bottom: 1px solid #d2dccb; }
#cbp-home-directory .park-work-visual img { display: block; width: 100%; height: 100%; object-fit: contain; }
#cbp-home-directory .park-walk-visual { flex-direction: column; gap: 6px; background: #e9eddd; }
#cbp-home-directory .park-walk-visual > span { font-size: 3.3rem; line-height: 1.25; }
#cbp-home-directory .park-walk-visual small { font-size: .85rem; color: #4b6056; }
#cbp-home-directory .park-secondary { display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 48px; padding: 10px 19px; font-size: .84rem; border-top: 1px solid #d2dccb; background: #eef1e5; }
#cbp-home-directory .park-health-item { display: flex; align-items: center; justify-content: space-between; gap: 30px; border: 1px solid #d1bfa3; background: #fff8e9; border-radius: 9px; padding: 23px 28px; }
#cbp-home-directory .park-health-body { flex: 1; min-width: 0; }
#cbp-home-directory .park-health-item h3 { font-size: 1.45rem; margin-bottom: 9px; }
#cbp-home-directory .park-health-item h3 a { color: #69462f; }
#cbp-home-directory .park-health-item p { font-size: .96rem; color: #5d5448; line-height: 1.95; }
#cbp-home-directory .park-health-item .park-health-note { font-size: .82rem; margin-top: 10px; }
#cbp-home-directory .park-health-action { display: inline-flex; align-items: center; justify-content: space-between; gap: 30px; min-height: 47px; padding: 9px 18px; margin-top: 17px; border: 1px solid #69462f; border-radius: 5px; color: #fffaf0; background: #69462f; font-size: .95rem; font-weight: 700; text-decoration: none; }
#cbp-home-directory .park-health-action:hover { background: #503421; }
#cbp-home-directory .park-health-art { display: flex; align-items: flex-end; gap: 6px; flex-shrink: 0; }
#cbp-home-directory .park-health-art img { width: 90px; height: auto; object-fit: contain; }
#cbp-home-directory .park-health-art img:last-child { width: 110px; height: auto; }
#cbp-home-directory .park-contact { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 13px 24px; border-top: 1px dashed #aebba7; border-bottom: 1px dashed #aebba7; padding: 21px 0; margin: 0 0 35px; }
#cbp-home-directory .park-contact h2 { font-size: 1.12rem; margin-bottom: 4px; }
#cbp-home-directory .park-contact p { font-size: .88rem; color: #4b6056; }
#cbp-home-directory .park-contact a { display: inline-flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 44px; font-size: .92rem; font-weight: 700; }
#cbp-home-directory .park-gallery-heading { scroll-margin-top: 20px; border-bottom: 1px solid #bdcbb9; padding-bottom: 14px; }
#cbp-home-directory .park-gallery-heading h2 { font-size: 1.4rem; margin-bottom: 7px; }
#cbp-home-directory .park-gallery-heading p { font-size: .9rem; color: #4b6056; }
.catbootspark-cozy .cbp-site-header + .container .ccm-image-slider-container { max-width: 720px; margin: 23px auto 15px; }
.catbootspark-cozy .cbp-site-header + .container .park-gallery-caption { margin: 0; font-size: .85rem; line-height: 1.9; color: #4b6056; text-align: center; }

@media (max-width: 950px) {
  #cbp-home-directory .park-tools { gap: 16px; }
  #cbp-home-directory .park-tool { flex-direction: column; }
  #cbp-home-directory .park-tool-visual { width: 100%; min-height: 0; height: 144px; border-right: 0; border-bottom: 1px solid #d2dccb; }
  #cbp-home-directory .park-tool-visual img { height: 118px; width: auto; max-width: 100%; }
  #cbp-home-directory .park-reading-sample { flex-direction: row; gap: 20px; }
  #cbp-home-directory .park-reading-sample small { max-width: 140px; }
  #cbp-home-directory .park-works { gap: 16px; }
  #cbp-home-directory .park-entry-body { padding: 15px; }
  #cbp-home-directory .park-entry h3 { font-size: 1.15rem; }
  #cbp-home-directory .park-secondary { padding-inline: 15px; }
  #cbp-home-directory .park-health-item { padding: 22px; gap: 22px; }
}
@media (max-width: 750px) {
  #cbp-home-directory .park-index { gap: 9px; }
  #cbp-home-directory .park-index a { padding: 13px 27px 13px 12px; }
  #cbp-home-directory .park-index span { font-size: 1rem; }
  #cbp-home-directory .park-index small { font-size: .76rem; }
  #cbp-home-directory .park-index b { right: 11px; }
  #cbp-home-directory .park-works { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #cbp-home-directory .park-health-art { gap: 0; }
  #cbp-home-directory .park-health-art img { width: 65px; height: auto; }
  #cbp-home-directory .park-health-art img:last-child { width: 80px; height: auto; }
}
@media (max-width: 600px) {
  .catbootspark-cozy .cbp-site-header + .container { padding: 24px 18px 35px; }
  .catbootspark-cozy .cbp-site-header + .container > h1 { font-size: 1.45rem; margin-bottom: 13px; }
  #cbp-home-directory .park-intro { margin-bottom: 20px; }
  #cbp-home-directory .park-intro h2 { font-size: 1.15rem; }
  #cbp-home-directory .park-intro p { font-size: .92rem; }
  #cbp-home-directory .park-intro br { display: none; }
  #cbp-home-directory .park-index { grid-template-columns: minmax(0, 1fr); gap: 8px; margin-bottom: 28px; }
  #cbp-home-directory .park-index a { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; min-height: 66px; padding: 10px 38px 10px 15px; }
  #cbp-home-directory .park-index span { font-size: 1rem; }
  #cbp-home-directory .park-index small { margin: 0; font-size: .8rem; }
  #cbp-home-directory .park-index b { right: 15px; }
  #cbp-home-directory .park-section { margin-bottom: 28px; }
  #cbp-home-directory .park-section-heading { gap: 5px; flex-direction: column; margin-bottom: 14px; }
  #cbp-home-directory .park-section-heading h2 { font-size: 1.35rem; }
  #cbp-home-directory .park-section-heading p { font-size: .87rem; }
  #cbp-home-directory .park-tools, #cbp-home-directory .park-works { grid-template-columns: minmax(0, 1fr); gap: 15px; }
  #cbp-home-directory .park-tool { flex-direction: row; }
  #cbp-home-directory .park-tool-visual { width: 31%; height: auto; min-height: 180px; border-right: 1px solid #d2dccb; border-bottom: 0; padding: 9px; }
  #cbp-home-directory .park-tool-visual img { width: 100%; height: auto; }
  #cbp-home-directory .park-reading-sample { flex-direction: column; gap: 12px; }
  #cbp-home-directory .park-reading-sample > span { font-size: 2rem; }
  #cbp-home-directory .park-reading-sample small { font-size: .73rem; }
  #cbp-home-directory .park-entry h3 { font-size: 1.16rem; }
  #cbp-home-directory .park-entry p { font-size: .9rem; }
  #cbp-home-directory .park-action { font-size: .88rem; gap: 7px; }
  #cbp-home-directory .park-work-visual { aspect-ratio: 1200 / 630; }
  #cbp-home-directory .park-walk-visual { min-height: 120px; aspect-ratio: auto; }
  #cbp-home-directory .park-health-item { position: relative; display: block; padding: 19px; }
  #cbp-home-directory .park-health-item h3 { font-size: 1.35rem; }
  #cbp-home-directory .park-health-item p { font-size: .92rem; }
  #cbp-home-directory .park-health-action { display: flex; width: 100%; gap: 12px; }
  #cbp-home-directory .park-health-art { justify-content: flex-end; margin-top: 8px; }
  #cbp-home-directory .park-health-art img { width: 50px; height: auto; }
  #cbp-home-directory .park-health-art img:last-child { width: 64px; height: auto; }
  #cbp-home-directory .park-contact { margin-bottom: 28px; padding: 19px 0; }
  #cbp-home-directory .park-gallery-heading h2 { font-size: 1.25rem; }
  #cbp-home-directory .park-gallery-heading p { font-size: .86rem; }
}
@media (max-width: 359px) {
  #cbp-home-directory .park-index a { display: flex; align-items: flex-start; gap: 2px; }
  #cbp-home-directory .park-tool-visual { width: 27%; padding: 7px; }
  #cbp-home-directory .park-entry-body { padding: 13px; }
  #cbp-home-directory .park-reading-sample > span { font-size: 1.6rem; }
}
@media (forced-colors: active) { #cbp-home-directory .park-health-action { border-color: ButtonText; } }
@media print {
  #cbp-home-directory .park-index, #cbp-home-directory .park-contact { display: none; }
  #cbp-home-directory .park-section, #cbp-home-directory .park-item, #cbp-home-directory .park-health-item { break-inside: avoid; }
  #cbp-home-directory a { color: black; }
}
