.directory-page main{max-width:1248px;padding:0 24px 70px}
.directory-intro{margin:30px 0 42px;max-width:760px}.directory-intro .eyebrow{color:var(--page-muted)}.directory-intro h1{font-size:clamp(42px,6vw,76px);line-height:1.08;margin:12px 0 20px;letter-spacing:-.05em}.directory-intro>p:not(.eyebrow){font-size:17px;line-height:1.6}.directory-intro .directory-count{font-size:13px!important;margin-top:28px;color:var(--page-muted)}
.trip-directory{display:flex;flex-direction:column;gap:28px}.trip-directory-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);background:var(--surface);border:1px solid var(--line);color:var(--ink);text-decoration:none;overflow:hidden;box-shadow:var(--shadow);min-height:300px}
body .trip-directory-card:has(img){border-radius:18px!important}.directory-image{min-height:300px;overflow:hidden}.directory-image img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:16/10;transition:transform .3s}.directory-card-content{display:flex;align-items:flex-start;flex-direction:column;padding:36px}.directory-card-content .eyebrow{margin:0;color:var(--muted)}.directory-card-content h2{font-size:38px;line-height:1.15;margin:12px 0 16px;color:var(--ink)}.directory-dates{font-size:14px;display:flex;align-items:center;gap:8px;color:var(--muted);margin:0 0 18px}.directory-description{font-size:16px;line-height:1.7;margin:0 0 26px;color:var(--ink);white-space:pre-wrap}.directory-open{display:flex;gap:14px;align-items:center;margin-top:auto;padding:11px 16px;min-height:44px;background:var(--accent);color:var(--accent-ink);font-size:14px}
.directory-placeholder{display:flex;flex-direction:column;gap:24px;align-items:center;justify-content:center;padding:32px;min-height:280px;background:var(--surface-alt);color:var(--muted);text-align:center;font-size:15px;line-height:1.7}.directory-placeholder>.fa-icon{width:54px;height:54px;color:var(--accent)}
.trip-directory-card:hover{outline:3px solid var(--accent);outline-offset:0}.trip-directory-card:hover .directory-open{background:var(--hover);color:var(--hover-ink)}.trip-directory-card:hover .directory-image img{transform:scale(1.025)}
.web-app-install{max-width:1152px;margin:40px auto 0;padding:18px 22px;background:var(--surface);border:1px solid var(--line);color:var(--ink)}.web-app-install summary{cursor:pointer;color:var(--link);font-size:14px;line-height:1.6;min-height:30px;list-style:none}.web-app-install summary::-webkit-details-marker{display:none}.web-app-install summary>.fa-icon{margin-right:8px}.web-app-install p{font-size:13px;line-height:1.7;color:var(--muted)}.web-app-install summary:hover{background:var(--hover);color:var(--hover-ink)}
@media(max-width:760px){.directory-page main{padding:0 16px 40px}.directory-intro{margin:22px 0 30px}.directory-intro>p:not(.eyebrow){font-size:15px}.trip-directory{gap:22px}.trip-directory-card{grid-template-columns:1fr}.directory-image{min-height:0}.directory-image img{aspect-ratio:16/9;max-height:300px}.directory-card-content{padding:24px}.directory-card-content h2{font-size:30px}.directory-description{font-size:15px}.directory-dates{font-size:12px}.directory-placeholder{min-height:200px}.web-app-install{margin:30px 16px 0;padding:18px}}
@media(display-mode:standalone){.web-app-install{display:none}.masthead{padding-top:max(20px,env(safe-area-inset-top));padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}.save-bar{bottom:max(16px,env(safe-area-inset-bottom))}footer{padding-bottom:max(28px,env(safe-area-inset-bottom))}.lightbox-bottom{padding-bottom:max(18px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.directory-image img{transition:none}}
