/* Focused local visual refinement; no homepage structure changes. */
.simple-place h3{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Approved official system: covers retain full lettering within existing image boxes. */
.simple-place>img{object-fit:contain!important;background:#faf7ef}
.tg-place h3{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.idea-tile:has(.painted-accent){position:relative}
.idea-tile .painted-accent{position:absolute;right:18px;top:18px;width:74px;height:74px;object-fit:contain;pointer-events:none}
.idea-tile:has(.painted-accent) h3{padding-right:76px;min-height:60px}
@media(max-width:700px){.idea-tile .painted-accent{right:14px;top:14px;width:64px;height:64px}.idea-tile:has(.painted-accent) h3{padding-right:68px}}
/* Keep the existing small-screen grid; let text use the full narrow card width. */
@media(max-width:1000px){.idea-tile .painted-accent{position:static;width:44px;height:44px;align-self:flex-start}.idea-tile:has(.painted-accent) h3{padding-right:0;min-height:0}}
/* Full browsing pages use the same approved tablet header wrapping as the homepage. */
@media(min-width:761px) and (max-width:1000px){.events-page header,.places-page header{flex-wrap:wrap;gap:14px}.events-page header #navigation,.places-page header #navigation{flex-basis:100%;width:100%;justify-content:center;flex-wrap:wrap;gap:20px}}
