/* Photographic coverage for existing opted-in public page content only. */
body[data-townline-photo-page] .tl-public-lead-photo{display:block!important;position:relative!important;inset:auto!important;z-index:auto!important;width:100%!important;max-width:100%!important;height:clamp(220px,29vw,400px)!important;min-height:0!important;object-fit:cover!important;object-position:center!important;border:0!important;border-radius:8px!important;margin:0 0 26px!important;filter:none!important;opacity:1!important;transform:none!important;box-shadow:none!important}
body[data-townline-photo-page] .tl-public-card-photo{display:block!important;position:relative!important;inset:auto!important;z-index:auto!important;width:100%!important;max-width:100%!important;height:180px!important;min-height:0!important;object-fit:cover!important;object-position:center!important;border:0!important;border-radius:6px!important;margin:0 0 16px!important;filter:none!important;opacity:1!important;transform:none!important;box-shadow:none!important}
body[data-townline-photo-page] :is(.hero-grid,.grid,.cards)>.card{min-width:0}
@media(max-width:700px){body[data-townline-photo-page] .tl-public-lead-photo{height:230px!important;margin-bottom:22px!important}body[data-townline-photo-page] .tl-public-card-photo{height:190px!important}}
/* Existing road-report controls must fit their phone card, including long options. */
body[data-townline-photo-page="shady-radar"] :is(.grid,.card,form,input,select,textarea){box-sizing:border-box;min-width:0;max-width:100%}
body[data-townline-photo-page="shady-radar"] .ey{color:#e6c46e}
body[data-townline-photo-page] .tl-public-section-photo{display:block!important;position:relative!important;inset:auto!important;width:100%!important;max-width:100%!important;height:260px!important;object-fit:cover!important;border-radius:8px!important;margin:0 0 24px!important;filter:none!important;opacity:1!important}
body[data-townline-photo-page="pricing"] .compactOffer :is(.sumprice,.sumtag),body[data-townline-photo-page="pricing"] .compactOffer summary:after{color:#f0d292!important}
body[data-townline-photo-page="pricing"] .compactOffer .offerBody{color:#e5edf0}
body[data-townline-photo-page="pricing"] #townline-live-checkout{background:#edf4f4!important;color:#123746!important;padding:42px 4vw!important}
body[data-townline-photo-page="pricing"] #townline-live-checkout a{background:#fff!important;color:#123746!important;border-color:#bfd1d7!important;border-radius:8px}
body[data-townline-photo-page="international-yoga"] :is(.grid,.card,form,input,select,textarea){min-width:0;max-width:100%}
body[data-townline-photo-page="international-yoga"] .grid{grid-template-columns:repeat(auto-fit,minmax(min(275px,100%),1fr))}
body[data-townline-photo-page="international-yoga"] :is(a,.source){overflow-wrap:anywhere}
@media(max-width:700px){body[data-townline-photo-page] .tl-public-section-photo{height:220px!important}body[data-townline-photo-page="pricing"] .compactOffer summary{grid-template-columns:minmax(0,1fr) auto;gap:10px}body[data-townline-photo-page="pricing"] .compactOffer .sumprice{font-size:16px;white-space:normal}}
body[data-townline-photo-page$="-experiences"] .hero .ey{color:#f0d49a}
/* The existing Townline radar injected on this retreat page must wrap on phones. */
body[data-townline-photo-page="international-yoga"] :is(.tlb-bar,.tlb-radar,.tlb-icons,.tlb-search,.tlb-towns){box-sizing:border-box;min-width:0;max-width:100%;width:100%}
body[data-townline-photo-page="international-yoga"] .tlb-radar{display:block}
body[data-townline-photo-page="international-yoga"] :is(.tlb-icons,.tlb-search,.tlb-towns){display:flex;flex-wrap:wrap;gap:10px}
body[data-townline-photo-page="international-yoga"] .tlb-ib{min-width:0;max-width:100%;flex:1 1 140px;display:flex;flex-direction:column;align-items:flex-start}
body[data-townline-photo-page="international-yoga"] :is(.tlb-ib-s,.tlb-search input,.tlb-search select){min-width:0;max-width:100%;overflow-wrap:anywhere}
body[data-townline-photo-page="venues"] :is(main h2,main li),body[data-townline-photo-page="venues-canada"] :is(main h2,main li){color:#edf2e8!important}
body[data-townline-photo-page="venues"] .city .ghost,body[data-townline-photo-page="venues-canada"] .city .ghost{color:#f0d49a!important}
body[data-townline-photo-page="venues"] :is(.kicker,.small),body[data-townline-photo-page="venues-canada"] :is(.kicker,.small){color:#e0ce9c!important}
/* These legacy generic-art paths now contain unrelated ARQS artwork. Use the curated scene instead. */
body[data-townline-photo-page="food"],body[data-townline-photo-page="music-live"]{background:#f3f7f6}
body[data-townline-photo-page="premium"] .hero .bg{background:linear-gradient(180deg,#0b1b2433,#0b1b24bb),url('/assets/photos/intelligence/hub-vancouver-night-1920.webp') center/cover!important}
body[data-townline-photo-page="venues"] .hero .bg{background:linear-gradient(180deg,#0b1b2433,#0b1b24bb),url('/townline/sports/img/bc-place.jpg') center/cover!important}
body[data-townline-photo-page="transit"] .c :is(h2,p){color:#e5eef1!important}
body[data-townline-photo-page="premium"] .card :is(h2,p){color:#edf2e8!important}
body[data-townline-photo-page="venues"] .hero .ghost,body[data-townline-photo-page="venues-canada"] .hero .ghost{color:#fff4d8!important}

/* Weekly and community events use their curated photo, not the legacy ad wallpaper. */
body[data-townline-photo-page="weekly"] .hero,body[data-townline-photo-page="community-events"] .hero{background:#f3f7f6!important;color:#16394b!important}
body[data-townline-photo-page="weekly"] .hero :is(h1,p,.ey),body[data-townline-photo-page="community-events"] .hero :is(h1,p,.ey){color:#16394b!important;text-shadow:none!important}
body[data-townline-photo-page="weekly"] .hero .bg,body[data-townline-photo-page="community-events"] .hero .bg{background:none!important}
body[data-townline-photo-page="community-events"]{background:#f3f7f6!important;color:#16394b!important}
body[data-townline-photo-page="community-events"]>a{display:inline-flex;align-items:center;min-height:44px;margin:0 4vw;color:#17627d;font:600 14px/1.5 system-ui}
body[data-townline-photo-page="community-events"] .hero .btn{display:inline-flex;align-items:center;min-height:44px;background:#17627d!important;color:#fff!important;border-color:#17627d!important;text-decoration:none;font-weight:650}
