.bike-storage-page { max-width: 1040px; padding-bottom: var(--s9); }.bike-storage-crumb { display:flex; gap:var(--s2); padding:var(--s5) 0 var(--s4); color:var(--ink-3); font-size:var(--fs-small); }.bike-storage-crumb a { color:var(--ink-2); font-weight:700; }.bike-storage-hero { max-width:820px; padding:var(--s4) 0 var(--s6); }.bike-storage-kicker { margin-bottom:var(--s2); color:var(--blue); font-size:var(--fs-small); font-weight:800; letter-spacing:.04em; }.bike-storage-hero h1 { margin-bottom:var(--s3); font-size:clamp(32px,5vw,52px); line-height:1.12; letter-spacing:-.04em; }.bike-storage-hero > p:not(.bike-storage-kicker) { max-width:720px; color:var(--ink-2); font-size:18px; line-height:1.75; }.bike-storage-stats { display:flex; gap:var(--s3); margin-top:var(--s5); }.bike-storage-stats div { min-width:112px; padding:var(--s3) var(--s4); border:1px solid var(--line); border-radius:var(--r-m); background:var(--surface); box-shadow:var(--sh-1); }.bike-storage-stats dt { color:var(--ink-3); font-size:12px; font-weight:700; }.bike-storage-stats dd { margin-top:3px; color:var(--navy); font-size:22px; font-weight:850; }
.bike-storage-finder { position:sticky; z-index:8; top:12px; margin-bottom:var(--s5); padding:var(--s4) var(--s5); border:1px solid var(--line); border-radius:var(--r-l); background:rgba(255,255,255,.94); box-shadow:var(--sh-2); backdrop-filter:blur(12px); }.bike-storage-finder-head { display:flex; align-items:flex-start; justify-content:space-between; gap:var(--s4); }.bike-storage-finder h2 { font-size:var(--fs-h3); }.bike-storage-finder-head p { margin-top:3px; color:var(--ink-3); font-size:var(--fs-small); }.bike-storage-finder-head strong { flex:none; padding:7px 11px; border-radius:var(--r-pill); background:#edf5ff; color:var(--blue); font-size:var(--fs-small); }.bike-storage-filters { display:grid; grid-template-columns:minmax(220px,1.5fr) minmax(150px,.8fr) auto; gap:var(--s3); align-items:end; margin-top:var(--s4); }.bike-storage-filters label span { display:block; margin-bottom:var(--s2); color:var(--ink-2); font-size:12px; font-weight:750; }.bike-storage-filters input,.bike-storage-filters select { width:100%; height:44px; padding:0 13px; border:1px solid var(--line-strong); border-radius:var(--r-s); background:var(--surface); color:var(--ink); font:inherit; }.bike-storage-filters input:focus,.bike-storage-filters select:focus { border-color:var(--blue); outline:3px solid rgba(0,82,164,.12); }.bike-storage-filters button { height:44px; padding:0 15px; border:1px solid var(--line-strong); border-radius:var(--r-s); background:var(--surface-2); color:var(--ink-2); font:inherit; font-size:var(--fs-small); font-weight:750; cursor:pointer; }.bike-storage-query-note { margin:calc(-1 * var(--s2)) 0 var(--s5); padding:var(--s3) var(--s4); border-radius:var(--r-s); background:#fff6d9; color:var(--ink-2); font-size:var(--fs-small); }
.bike-storage-place-list { display:grid; gap:var(--s4); }.bike-storage-place-card { scroll-margin-top:180px; overflow:hidden; border:1px solid var(--line); border-radius:var(--r-l); background:var(--surface); box-shadow:var(--sh-1); }.bike-storage-place-card[hidden] { display:none; }.bike-storage-place-head { display:flex; align-items:center; justify-content:space-between; gap:var(--s4); padding:var(--s4) var(--s5); background:linear-gradient(135deg,#f8fbff,var(--surface)); }.bike-storage-place-head h2 { margin-top:5px; font-size:24px; letter-spacing:-.025em; }.bike-storage-line-pills { display:flex; flex-wrap:wrap; gap:5px; }.bike-storage-line-pills span { padding:3px 8px; border-radius:var(--r-pill); background:var(--navy); color:#fff; font-size:11px; font-weight:800; }.bike-storage-count-badge { flex:none; padding:6px 10px; border-radius:var(--r-pill); background:#e8f1fb; color:var(--blue); font-size:12px; font-weight:800; }.bike-storage-place-link,.bike-storage-article-link { display:flex; align-items:center; justify-content:space-between; gap:var(--s4); padding:var(--s3) var(--s5); border-top:1px solid var(--line); color:var(--ink-2); font-size:var(--fs-small); }.bike-storage-place-link:hover,.bike-storage-article-link:hover { background:var(--surface-2); }.bike-storage-place-link strong,.bike-storage-article-link { color:var(--blue); font-weight:800; }.bike-storage-record-list { border-top:1px solid var(--line); }.bike-storage-record { padding:var(--s4) var(--s5); }.bike-storage-record + .bike-storage-record { border-top:1px solid var(--line); }.bike-storage-record > header { display:flex; align-items:baseline; gap:var(--s3); margin-bottom:var(--s3); }.bike-storage-record > header span { flex:none; padding:4px 8px; border-radius:var(--r-pill); background:#e8f1fb; color:var(--blue); font-size:11px; font-weight:800; }.bike-storage-record h3 { color:var(--navy); font-size:17px; }.bike-storage-info-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; overflow:hidden; border:1px solid var(--line); border-radius:var(--r-m); background:var(--line); }.bike-storage-info-grid > div { min-width:0; padding:var(--s3) var(--s4); background:var(--surface); }.bike-storage-info-grid dt { color:var(--ink-3); font-size:11px; font-weight:750; }.bike-storage-info-grid dd { margin-top:4px; overflow-wrap:anywhere; font-size:14px; line-height:1.5; }.bike-storage-info-wide { grid-column:1 / -1; }.bike-storage-empty { padding:var(--s8) var(--s4); border:1px dashed var(--line-strong); border-radius:var(--r-l); color:var(--ink-2); text-align:center; }.bike-storage-source-note { margin-top:var(--s6); padding:var(--s4) var(--s5); border-radius:var(--r-m); background:#edf5ff; color:var(--ink-2); }.bike-storage-source-note h2 { color:var(--navy); font-size:17px; }.bike-storage-source-note p { margin-top:var(--s2); font-size:var(--fs-small); line-height:1.7; }.bike-storage-source-note a { color:var(--blue); font-weight:800; }.bike-storage-ad { min-height:90px; margin-top:var(--s5); padding:var(--s3); border:1px solid var(--line); border-radius:var(--r-m); background:var(--surface); }
@media (max-width:820px) { .bike-storage-finder { position:static; }.bike-storage-filters { grid-template-columns:1fr 1fr; }.bike-storage-filters label:first-child { grid-column:1 / -1; } } @media (max-width:560px) { .bike-storage-hero { padding-top:var(--s2); }.bike-storage-hero > p:not(.bike-storage-kicker) { font-size:16px; }.bike-storage-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:var(--s2); }.bike-storage-stats div { min-width:0; padding:var(--s3); }.bike-storage-stats dd { font-size:18px; }.bike-storage-finder { padding:var(--s4); }.bike-storage-finder-head p { display:none; }.bike-storage-filters { grid-template-columns:1fr; }.bike-storage-filters label:first-child { grid-column:auto; }.bike-storage-place-head,.bike-storage-record { padding:var(--s4); }.bike-storage-place-head h2 { font-size:21px; }.bike-storage-place-link,.bike-storage-article-link { align-items:flex-start; padding:var(--s3) var(--s4); }.bike-storage-info-grid { grid-template-columns:1fr; }.bike-storage-info-wide { grid-column:auto; } }
