.access-points { display:grid; gap:10px; margin-top:22px; }
.access-points h3 { margin:0 0 3px; font-family:Outfit,sans-serif; }
.access-points article { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:15px 17px; border:1px solid color-mix(in srgb,var(--book-primary) 16%,#e7e1d7); border-radius:16px; background:rgba(255,255,255,.78); backdrop-filter:blur(10px); }
.access-points article p { margin:4px 0 0; color:#657068; font-size:.84rem; }
.access-points .reveal-secret { flex:0 0 auto; border-color:color-mix(in srgb,var(--book-primary) 20%,transparent); background:color-mix(in srgb,var(--book-primary) 8%,#fff); color:var(--book-primary); }
.equipment-photo { width:100%; max-height:210px; object-fit:cover; border-radius:17px 17px 0 0; }
.equipment-video { display:inline-flex; margin:0 17px 17px; color:var(--book-primary); font-size:.8rem; font-weight:800; }
.places-toolbar { display:flex; align-items:flex-start; justify-content:space-between; gap:15px; margin:0 0 18px; }
.place-filters { display:flex; flex-wrap:wrap; gap:7px; }
.place-filters button,.places-view-switch button { border:1px solid #d9e3dc; border-radius:99px; background:rgba(255,255,255,.82); color:#405048; font:750 .74rem Manrope,sans-serif; cursor:pointer; }
.place-filters button { padding:8px 11px; }
.place-filters button span { margin-left:4px; color:#7b877f; }
.place-filters button.is-active,.places-view-switch button.is-active { border-color:var(--book-primary); background:var(--book-primary); color:#fff; }
.place-filters button.is-active span { color:inherit; }
.places-view-switch { display:flex; flex:0 0 auto; padding:3px; border:1px solid #d9e3dc; border-radius:99px; background:#fff; }
.places-view-switch button { padding:7px 10px; border:0; }
.favorite-place { align-self:flex-start; margin:0 0 9px; padding:5px 8px; border-radius:99px; background:color-mix(in srgb,var(--book-accent) 28%,#fff); color:#70520d; font-size:.66rem; font-style:normal; font-weight:850; text-transform:uppercase; letter-spacing:.06em; }
.place-links { display:flex; flex-wrap:wrap; gap:7px; margin-top:12px; }
.places-grid .place-links a { margin-top:0; }
[data-place-card][hidden],[data-places-panel][hidden] { display:none!important; }
.event-grid,.service-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.event-grid article,.service-grid article { display:flex; gap:16px; padding:18px; border:1px solid color-mix(in srgb,var(--book-primary) 14%,#e5ded2); border-radius:18px; background:rgba(255,255,255,.82); backdrop-filter:blur(10px); }
.event-grid time { display:grid; flex:0 0 56px; height:62px; place-content:center; border-radius:14px; background:color-mix(in srgb,var(--book-accent) 24%,#fff); text-align:center; }
.event-grid time b { font-size:1.35rem; line-height:1; }.event-grid time span { font-size:.62rem; font-weight:850; }
.event-grid h3,.service-grid h3 { margin:2px 0 6px; font-family:Outfit,sans-serif; }.event-grid p,.service-grid p { margin:0; color:#657068; font-size:.84rem; }
.event-grid small { color:var(--book-primary); font-weight:800; }.event-grid a { display:inline-flex; margin-top:10px; color:var(--book-primary); font-size:.75rem; font-weight:850; }
.service-grid article { align-items:center; justify-content:space-between; }.service-grid strong { flex:0 0 auto; padding:7px 10px; border-radius:99px; background:var(--book-primary); color:#fff; font-size:.78rem; }.service-offer{display:grid;flex:0 0 auto;justify-items:end;gap:8px}.service-order-button{border:0;border-radius:12px;padding:10px 13px;background:var(--book-accent);color:var(--book-primary);font:800 .73rem/1 Outfit,sans-serif;cursor:pointer}.service-order-button:hover{filter:brightness(.96);transform:translateY(-1px)}

@media(max-width:620px){
  .access-points article{align-items:flex-start;flex-direction:column;gap:10px}
  .places-toolbar{align-items:stretch;flex-direction:column}
  .places-view-switch{align-self:flex-end}
  .event-grid,.service-grid{grid-template-columns:1fr}
}
