.museum-hero{background:var(--gray)}
.museum-hero>.container{padding-top:24px;padding-bottom:clamp(40px,5vw,64px)}
.museum-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px;color:var(--muted);font-size:14px}
.museum-breadcrumb>span:last-child{color:var(--ink)}
.museum-hero-layout{display:flex;flex-wrap:wrap;gap:32px;align-items:center}
.museum-hero-copy{flex:1 1 520px;min-width:0}
.museum-hero-copy .eyebrow{margin-bottom:14px;color:var(--blue)}
.museum-hero h1{font-size:clamp(40px,5.8vw,76px);line-height:1;letter-spacing:-.03em}
.museum-lede{margin-top:18px;max-width:580px;font-size:18px;line-height:1.55;color:#3d424a}
.museum-hero-photo{flex:1 1 360px;min-width:0;margin:0}
.museum-hero-photo img{aspect-ratio:10/7;border-radius:16px;object-fit:cover}
.museum-hero-photo figcaption{margin-top:8px;font-size:10px;color:var(--muted)}
.museum-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:36px 0 0;background:#d5d8de;border:1px solid #d5d8de;border-radius:12px;overflow:hidden}
.museum-facts>div{min-width:0;display:flex;flex-direction:column;gap:6px;padding:18px 20px;background:white}
.museum-facts dt{font:600 12px/1.5 var(--mono);letter-spacing:.08em;color:var(--muted);text-transform:uppercase}
.museum-facts dd{margin:0;font-size:18px;font-weight:600;line-height:1.4}
.museum-facts span{font-size:12px;line-height:1.5;color:var(--muted)}
.museum-checked{margin-top:16px;color:var(--muted);font-size:12px}
.museum-route-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:start;padding-block:clamp(40px,5vw,64px)}
.museum-section{min-width:0;scroll-margin-top:24px}
.museum-section h2{font-size:clamp(28px,2.8vw,34px);margin-bottom:16px}
.route-controls{display:inline-flex;max-width:100%;gap:4px;padding:4px;background:var(--gray);border-radius:12px;margin-bottom:16px;overflow:auto}
.route-controls button{min-height:44px;padding:0 18px;border-radius:9px;background:transparent;font:600 15px/1.5 var(--mono);white-space:nowrap}
.route-controls button[aria-pressed="true"]{background:var(--ink);color:white}
.route-panel h3{font-size:18px;margin:0 0 8px}
.route-intro{margin-bottom:24px;font-size:15px;line-height:1.55;color:var(--muted)}
.route-stops{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.route-stops>li{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:8px 20px;align-items:start;padding:20px 0;border-bottom:1px solid var(--line)}
.route-number{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--ink);color:white;font:600 15px/1.5 var(--mono)}
.route-meta{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;margin-bottom:6px;color:var(--muted);font-size:13px}
.route-time{font:600 13px/1.5 var(--mono)}
.wing{padding:3px 8px;border-radius:5px;background:var(--gray);color:#3d424a;font-size:12px;font-weight:600}
.wing-denon{background:#e8ecfb;color:#1a33a8}.wing-sully{background:#fff3c4;color:#5c4600}.wing-richelieu{background:#e4f3ec;color:#0b5c45}
.route-stop h4{margin:0;font:600 20px/1.25 var(--display);letter-spacing:-.02em}
.route-stop p{margin-top:6px;font-size:14px;line-height:1.5;color:#3d424a}
.route-duration{padding:6px 10px;border:1px solid #d5d8de;border-radius:6px;font:600 13px/1.5 var(--mono);white-space:nowrap}
.museum-sidebar{display:flex;flex-direction:column;gap:16px;position:sticky;top:24px}
.museum-advice{display:flex;flex-direction:column;gap:10px;padding:22px;border:1px solid var(--line);border-radius:16px;font-size:15px;line-height:1.5}
.museum-advice h2{margin:0;font-size:12px;letter-spacing:.08em}
.museum-advice p{margin:0}
.museum-advice a{font-size:14px}
.advice-dark{background:var(--ink);color:white;border-color:var(--ink)}
.advice-dark h2{font:600 22px/1.2 var(--display);letter-spacing:-.02em}
.advice-dark .eyebrow{color:var(--yellow);font-size:12px}
.advice-dark p:not(.eyebrow){font-size:14px;color:#c9cdd4;line-height:1.55}
.museum-quicklinks{display:flex;flex-direction:column;font-size:14px}
.museum-quicklinks a{display:block;padding:12px 0;color:var(--muted)}
.museum-comparison{background:var(--gray)}
.museum-section-lede{margin:-4px 0 24px;color:var(--muted);font-size:15px;line-height:1.55}
.museum-section-lede a{color:var(--blue)}
.museum-ticket-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.museum-ticket{display:flex;flex-direction:column;gap:8px;padding:18px;border-radius:14px;background:white;min-width:0}
.museum-ticket h3{font:600 17px/1.4 Inter,system-ui,sans-serif;letter-spacing:0}
.museum-ticket>strong{font:600 18px/1.45 var(--mono)}
.museum-ticket p{font-size:14px;line-height:1.5;color:var(--muted)}
.museum-ticket>a{display:flex;align-items:center;min-height:44px;margin-top:auto;font-size:14px;font-weight:600;padding-top:8px}
.museum-ticket.is-pick{background:var(--ink);color:white}
.is-pick p{color:#c9cdd4}
.ticket-pick{align-self:start;padding:4px 8px;border-radius:5px;background:var(--yellow);color:var(--ink);font-size:12px;font-weight:600}
.museum-affiliate,.museum-photo-note{margin-top:16px;font-size:12px;color:var(--muted)}
.museum-pair-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.museum-pair{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none}
.museum-pair>img{aspect-ratio:10/7;object-fit:cover}
.pair-1>img{object-position:70% center}.pair-2>img{object-position:20% center}
.pair-copy{padding:18px;display:flex;flex-direction:column;gap:6px}
.pair-copy>span:first-child{font:600 13px/1.5 var(--mono);color:var(--blue);text-transform:uppercase}
.pair-copy>strong{font:600 20px/1.25 var(--display)}
.pair-copy>span:last-child{font-size:14px;color:var(--muted)}
.museum-pair:hover strong{color:var(--blue)}
.museum-editor{padding-bottom:48px}
.museum-place-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.museum-place-list li{display:flex;flex-direction:column;gap:6px;padding:16px;background:var(--gray);border-radius:10px;font-size:14px;min-width:0}
.museum-place-list a{color:var(--blue);min-height:44px;display:flex;align-items:center}
.museum-guide .venue-map{width:100%;height:440px;min-height:300px;background:var(--gray);border:1px solid var(--line);border-radius:14px;z-index:0;font-family:Inter,system-ui,sans-serif}
.museum-guide .venue-map img{max-width:none;width:auto}
.museum-guide .venue-map .va-marker{display:flex;align-items:center;justify-content:center;border-radius:50%;background:white;box-shadow:0 2px 8px #14161a30;font-size:18px}
.museum-guide .venue-map .va-marker-entrance{z-index:500!important}
.museum-guide .venue-map .leaflet-popup-content strong{display:block;margin-bottom:6px}
.museum-guide .venue-map .va-desc{display:block;font-size:13px;line-height:1.5}
.museum-guide .venue-map .va-link{display:block;margin-top:8px}
.museum-guide .venue-map-legend{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 20px}
.museum-guide .va-pill{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:6px 12px;border:1px solid var(--line);border-radius:24px;background:white;font-size:13px}
.museum-guide .va-pill[aria-pressed="false"]{opacity:.45}
.museum-guide .va-swatch{display:inline-block;width:8px;height:8px;border-radius:50%}
.museum-guide .va-count{color:var(--muted)}
@media(max-width:1099px){.museum-ticket-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.museum-route-layout{gap:32px;grid-template-columns:minmax(0,1fr) 280px}}
@media(max-width:979px){.museum-hero-copy,.museum-hero-photo{flex-basis:100%}.museum-hero-photo img{max-height:420px}.museum-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.museum-route-layout{grid-template-columns:minmax(0,1fr)}.museum-sidebar{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.museum-quicklinks{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:20px}.museum-ticket-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:599px){.museum-facts,.museum-sidebar,.museum-ticket-grid,.museum-pair-grid,.museum-place-list{grid-template-columns:1fr}.museum-hero h1{font-size:40px}.museum-route-layout{gap:32px}.route-stops>li{grid-template-columns:32px minmax(0,1fr);gap:8px 12px}.route-number{width:32px;height:32px;font-size:13px}.route-duration{grid-column:2;justify-self:start}.route-stop h4{font-size:19px}.route-controls button{font-size:14px;padding-inline:14px}.museum-quicklinks{flex-direction:column;gap:0}.museum-guide .venue-map{height:360px}}
@media print{.site-header,.site-footer,.museum-sidebar,.route-controls,.museum-map-section,.guide-newsletter,dialog{display:none!important}.museum-hero{background:white}.museum-hero-photo{display:none}.museum-route-layout{display:block}.route-stops>li,.museum-ticket{break-inside:avoid}.museum-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
